vil1_iris_generic_image Class Reference

#include <vil1_iris.h>

Inheritance diagram for vil1_iris_generic_image:

vil1_image_impl List of all members.

Detailed Description

Generic image implementation for RGB files.

Definition at line 38 of file vil1_iris.h.


Public Member Functions

 vil1_iris_generic_image (vil1_stream *is, char *imagename="")
 vil1_iris_generic_image (vil1_stream *is, int planes, int width, int height, int components, int bits_per_component, vil1_component_format format)
 ~vil1_iris_generic_image ()
virtual int planes () const
 Dimensions. Planes x W x H x Components. components() is always 1.
virtual int width () const
 Dimensions: Planes x W x H x Components.
virtual int height () const
 Dimensions: Planes x W x H x Components.
virtual int components () const
 Dimensions: Planes x W x H x Components.
virtual int bits_per_component () const
 Number of bits per component.
int bytes_per_pixel () const
virtual enum vil1_component_format component_format () const
 Format.
virtual vil1_image get_plane (unsigned int p) const
 return the ith plane.
virtual bool get_section (void *buf, int x0, int y0, int, int) const
 Copy buffer of this to BUF.
virtual bool put_section (void const *buf, int x0, int y0, int width, int height)
 Copy plane PLANE of BUF to this.
char const * file_format () const
 Return a string describing the file format.
bool get_property (char const *tag, void *prop=0) const
 Extra property information.
bool read_offset_tables ()
bool get_section_rle (void *ib, int x0, int y0, int xs, int ys) const
bool get_section_verbatim (void *ib, int x0, int y0, int xs, int ys) const
virtual bool set_property (char const *tag, void const *property_value=0) const
virtual vcl_string is_a () const
 Return the name of the class;.
virtual bool is_class (vcl_string const &s) const
 Return true if the name of the class matches the argument.

Public Attributes

vil1_streamis_
int magic_
int width_
int height_
int planes_
int pixmin_
int pixmax_
int storage_
int dimension_
int colormap_
char imagename_ [81]
int start_of_data_
int components_
int bits_per_component_
int bytes_per_component_

Private Member Functions

bool read_header ()
bool write_header ()

Private Attributes

unsigned long * starttab_
unsigned long * lengthtab_

Friends

class vil1_iris_file_format

Constructor & Destructor Documentation

vil1_iris_generic_image::vil1_iris_generic_image ( vil1_stream is,
char *  imagename = "" 
)

Definition at line 84 of file vil1_iris.cxx.

vil1_iris_generic_image::vil1_iris_generic_image ( vil1_stream is,
int  planes,
int  width,
int  height,
int  components,
int  bits_per_component,
vil1_component_format  format 
)

Definition at line 108 of file vil1_iris.cxx.

vil1_iris_generic_image::~vil1_iris_generic_image (  ) 

Definition at line 143 of file vil1_iris.cxx.


Member Function Documentation

bool vil1_iris_generic_image::read_header (  )  [private]

Definition at line 150 of file vil1_iris.cxx.

bool vil1_iris_generic_image::write_header (  )  [private]

Definition at line 208 of file vil1_iris.cxx.

virtual int vil1_iris_generic_image::planes (  )  const [inline, virtual]

Dimensions. Planes x W x H x Components. components() is always 1.

Implements vil1_image_impl.

Definition at line 60 of file vil1_iris.h.

virtual int vil1_iris_generic_image::width (  )  const [inline, virtual]

Dimensions: Planes x W x H x Components.

Implements vil1_image_impl.

Definition at line 61 of file vil1_iris.h.

virtual int vil1_iris_generic_image::height (  )  const [inline, virtual]

Dimensions: Planes x W x H x Components.

Implements vil1_image_impl.

Definition at line 62 of file vil1_iris.h.

virtual int vil1_iris_generic_image::components (  )  const [inline, virtual]

Dimensions: Planes x W x H x Components.

Implements vil1_image_impl.

Definition at line 63 of file vil1_iris.h.

virtual int vil1_iris_generic_image::bits_per_component (  )  const [inline, virtual]

Number of bits per component.

Size (in bits) for the smallest entity of the image.

Implements vil1_image_impl.

Definition at line 65 of file vil1_iris.h.

int vil1_iris_generic_image::bytes_per_pixel (  )  const [inline]

Definition at line 66 of file vil1_iris.h.

virtual enum vil1_component_format vil1_iris_generic_image::component_format (  )  const [inline, virtual]

Format.

A standard RGB RGB RGB image has

Implements vil1_image_impl.

Definition at line 68 of file vil1_iris.h.

vil1_image vil1_iris_generic_image::get_plane ( unsigned int  p  )  const [virtual]

return the ith plane.

Reimplemented from vil1_image_impl.

Definition at line 250 of file vil1_iris.cxx.

bool vil1_iris_generic_image::get_section ( void *  buf,
int  x0,
int  y0,
int  ,
int   
) const [virtual]

Copy buffer of this to BUF.

The buffer is stored like this for each pixel: component0(plane0,plane1,plane2,...),component1(plane0,plane1,plane2,...),...
total size of BUF in bytes should be (bits_per_component * components + 7) / 8 i.e. rounding to the next multiple of 8 bits (only correct if 1 byte = 8 bits)

Implements vil1_image_impl.

Definition at line 258 of file vil1_iris.cxx.

bool vil1_iris_generic_image::put_section ( void const *  buf,
int  x0,
int  y0,
int  width,
int  height 
) [virtual]

Copy plane PLANE of BUF to this.

The buffer should look like this for each pixel: component0(plane0,plane1,plane2,...),component1(plane0,plane1,plane2,...),...
total size of BUF in bytes should be (bits_per_component * components + 7) / 8 i.e. rounding to the next multiple of 8 bits (only correct if 1 byte = 8 bits)

Implements vil1_image_impl.

Definition at line 344 of file vil1_iris.cxx.

char const * vil1_iris_generic_image::file_format (  )  const [virtual]

Return a string describing the file format.

Only file images have a format, others return 0

Reimplemented from vil1_image_impl.

Definition at line 103 of file vil1_iris.cxx.

bool vil1_iris_generic_image::get_property ( char const *  tag,
void *  prop = 0 
) const [virtual]

Extra property information.

Reimplemented from vil1_image_impl.

Definition at line 92 of file vil1_iris.cxx.

bool vil1_iris_generic_image::read_offset_tables (  ) 

Definition at line 374 of file vil1_iris.cxx.

bool vil1_iris_generic_image::get_section_rle ( void *  ib,
int  x0,
int  y0,
int  xs,
int  ys 
) const

Definition at line 305 of file vil1_iris.cxx.

bool vil1_iris_generic_image::get_section_verbatim ( void *  ib,
int  x0,
int  y0,
int  xs,
int  ys 
) const

Definition at line 276 of file vil1_iris.cxx.

bool vil1_image_impl::set_property ( char const *  tag,
void const *  property_value = 0 
) const [virtual, inherited]

Reimplemented in vil1_tiff_generic_image, and vil1_image_proxy_impl.

Definition at line 28 of file vil1_image_impl.cxx.

virtual vcl_string vil1_image_impl::is_a (  )  const [inline, virtual, inherited]

Return the name of the class;.

Reimplemented in vil1_block_cache_image_impl, vil1_clamp_image_impl, vil1_crop_image_impl, vil1_flip_components_impl, vil1_flipud_impl, vil1_image_as_impl< T >, vil1_image_proxy_impl, vil1_memory_image_impl, vil1_resample_image_impl, vil1_scale_intensities_image_impl, and vil1_skip_image_impl.

Definition at line 141 of file vil1_image_impl.h.

virtual bool vil1_image_impl::is_class ( vcl_string const &  s  )  const [inline, virtual, inherited]

Return true if the name of the class matches the argument.

Reimplemented in vil1_block_cache_image_impl, vil1_clamp_image_impl, vil1_crop_image_impl, vil1_flip_components_impl, vil1_flipud_impl, vil1_image_as_impl< T >, vil1_image_proxy_impl, vil1_memory_image_impl, vil1_resample_image_impl, vil1_scale_intensities_image_impl, and vil1_skip_image_impl.

Definition at line 144 of file vil1_image_impl.h.


Friends And Related Function Documentation

friend class vil1_iris_file_format [friend]

Definition at line 46 of file vil1_iris.h.


Member Data Documentation

unsigned long* vil1_iris_generic_image::starttab_ [private]

Definition at line 40 of file vil1_iris.h.

unsigned long* vil1_iris_generic_image::lengthtab_ [private]

Definition at line 41 of file vil1_iris.h.

vil1_stream* vil1_iris_generic_image::is_

Definition at line 79 of file vil1_iris.h.

int vil1_iris_generic_image::magic_

Definition at line 81 of file vil1_iris.h.

int vil1_iris_generic_image::width_

Definition at line 83 of file vil1_iris.h.

int vil1_iris_generic_image::height_

Definition at line 84 of file vil1_iris.h.

int vil1_iris_generic_image::planes_

Definition at line 85 of file vil1_iris.h.

int vil1_iris_generic_image::pixmin_

Definition at line 87 of file vil1_iris.h.

int vil1_iris_generic_image::pixmax_

Definition at line 88 of file vil1_iris.h.

int vil1_iris_generic_image::storage_

Definition at line 89 of file vil1_iris.h.

int vil1_iris_generic_image::dimension_

Definition at line 90 of file vil1_iris.h.

int vil1_iris_generic_image::colormap_

Definition at line 91 of file vil1_iris.h.

char vil1_iris_generic_image::imagename_[81]

Definition at line 92 of file vil1_iris.h.

int vil1_iris_generic_image::start_of_data_

Definition at line 93 of file vil1_iris.h.

int vil1_iris_generic_image::components_

Definition at line 94 of file vil1_iris.h.

int vil1_iris_generic_image::bits_per_component_

Definition at line 95 of file vil1_iris.h.

int vil1_iris_generic_image::bytes_per_component_

Definition at line 96 of file vil1_iris.h.


The documentation for this class was generated from the following files:
Generated on Sun Oct 12 05:08:21 2008 for core/vil1 by  doxygen 1.5.1