#include <vipl_section_descriptor_2d.h>
Public Member Functions | |
vipl_section_descriptor_2d (int startx, int endx, int starty, int endy) | |
Ctor useful to define 2D section descriptors for ROA's. If you. | |
virtual | ~vipl_section_descriptor_2d () |
vipl_section_descriptor_2d () | |
vipl_section_descriptor_2d (const vipl_section_descriptor_2d< DataType > &) | |
vipl_section_descriptor < DataType > * | real_descriptor () const |
vipl_section_descriptor < DataType > *& | ref_real_descriptor () |
void | put_real_descriptor (vipl_section_descriptor< DataType > *v) |
vipl_section_container < DataType > * | real_container () const |
vipl_section_container < DataType > *& | ref_real_container () |
void | put_real_container (vipl_section_container< DataType > *v) |
DataType * | i_data_ptr () const |
DataType *& | ref_i_data_ptr () |
void | put_i_data_ptr (DataType *v) |
vcl_vector< int > const & | i_data_offsets () const |
vcl_vector< int > & | ref_i_data_offsets () |
void | put_i_data_offsets (vcl_vector< int > const &v) |
vcl_vector< int > const & | i_curr_sec_start () const |
vcl_vector< int > & | ref_i_curr_sec_start () |
void | put_i_curr_sec_start (vcl_vector< int > const &v) |
vcl_vector< int > const & | i_curr_sec_end () const |
This method takes in an integer argument called axis (i.e. | |
vcl_vector< int > & | ref_i_curr_sec_end () |
void | put_i_curr_sec_end (vcl_vector< int > const &v) |
vcl_vector< int > const & | i_curr_sec_size () const |
vcl_vector< int > & | ref_i_curr_sec_size () |
void | put_i_curr_sec_size (vcl_vector< int > const &v) |
virtual int | curr_sec_start (int axis) const |
This method takes in an integer argument called axis (i.e. | |
virtual int | curr_sec_end (int axis) const |
This method takes in an integer argument called axis (i.e. | |
virtual int | curr_sec_size (int axis) const |
This method takes in an integer argument called axis (i.e. | |
virtual int | data_offsets (int axis) const |
This method takes in an integer argument called axis (i.e. | |
virtual DataType * | data_ptr () |
Returns a referable pointer to the first data item in the current section. | |
virtual const DataType * | data_ptr () const |
Returns a const pointer to the first data item in the current section. | |
virtual vipl_section_descriptor < DataType > * | inner_descriptor () |
Returns a writable pointer to the ``real'' section descriptor. | |
virtual const vipl_section_descriptor < DataType > * | inner_descriptor () const |
Returns a const pointer to the ``real'' section descriptor. | |
int | restrict (const vipl_section_descriptor< DataType > &ROA) |
This method takes in a section_descriptor (which can be thought of as a filter's ROA) and updates this section to be the intersection of the ROA and the original section. | |
virtual vipl_section_descriptor < DataType > * | virtual_copy () const |
Makes a new correct copy. | |
int | refcount () const |
int | inc_refcount () |
int | dec_refcount () |
Protected Member Functions | |
vipl_section_descriptor_2d (vipl_section_descriptor< DataType > *desc, vipl_section_container< DataType > *container) | |
Assigns the pointers directly. Does not attempt to deep copy them. | |
vipl_section_descriptor_2d (const vipl_section_descriptor< DataType > *desc, const vipl_section_container< DataType > *container, int t) | |
Deep-copies the pointers. | |
Private Attributes | |
vipl_section_descriptor < DataType > * | hsreal_descriptor |
vipl_section_container < DataType > * | hsreal_container |
DataType * | hsi_data_ptr |
vcl_vector< int > | hsi_data_offsets |
vcl_vector< int > | hsi_curr_sec_start |
vcl_vector< int > | hsi_curr_sec_end |
vcl_vector< int > | hsi_curr_sec_size |
Friends | |
class | vipl_section_container< DataType > |
class | vipl_section_iterator< DataType > |
Definition at line 16 of file vipl_section_descriptor_2d.h.
vipl_section_descriptor_2d< DataType >::vipl_section_descriptor_2d | ( | int | startx, |
int | endx, | ||
int | starty, | ||
int | endy | ||
) |
Ctor useful to define 2D section descriptors for ROA's. If you.
Once constructed there is no way to change the data in the section descriptor.
Definition at line 13 of file vipl_section_descriptor_2d.txx.
vipl_section_descriptor_2d< DataType >::vipl_section_descriptor_2d | ( | vipl_section_descriptor< DataType > * | desc, |
vipl_section_container< DataType > * | container | ||
) | [protected] |
Assigns the pointers directly. Does not attempt to deep copy them.
Definition at line 32 of file vipl_section_descriptor_2d.txx.
vipl_section_descriptor_2d< DataType >::vipl_section_descriptor_2d | ( | const vipl_section_descriptor< DataType > * | desc, |
const vipl_section_container< DataType > * | container, | ||
int | t | ||
) | [protected] |
Deep-copies the pointers.
Definition at line 48 of file vipl_section_descriptor_2d.txx.
vipl_section_descriptor_2d< DataType >::~vipl_section_descriptor_2d | ( | ) | [virtual] |
Definition at line 64 of file vipl_section_descriptor_2d.txx.
vipl_section_descriptor_2d< DataType >::vipl_section_descriptor_2d | ( | ) |
Definition at line 69 of file vipl_section_descriptor_2d.txx.
vipl_section_descriptor_2d< DataType >::vipl_section_descriptor_2d | ( | const vipl_section_descriptor_2d< DataType > & | t | ) |
Definition at line 81 of file vipl_section_descriptor_2d.txx.
virtual int vipl_section_descriptor< DataType >::curr_sec_end | ( | int | axis | ) | const [inline, virtual, inherited] |
This method takes in an integer argument called axis (i.e.
0 means the ``x'' axis, 1 means ``y'' axis etc...) and returns an integer which describes the end coordinate value for ``x'' (or ``y'' etc..) with respect to the ``image'' coordinate system.
Definition at line 67 of file vipl_section_descriptor.h.
virtual int vipl_section_descriptor< DataType >::curr_sec_size | ( | int | axis | ) | const [inline, virtual, inherited] |
This method takes in an integer argument called axis (i.e.
0 means the ``x'' axis, 1 means ``y'' axis etc...) and returns an integer which describes the size of the axis (end minus start) for ``x'' (or ``y'' etc..) with respect to the ``image'' coordinate system.
Definition at line 75 of file vipl_section_descriptor.h.
virtual int vipl_section_descriptor< DataType >::curr_sec_start | ( | int | axis | ) | const [inline, virtual, inherited] |
This method takes in an integer argument called axis (i.e.
0 means the ``x'' axis, 1 means ``y'' axis etc...) and returns an integer which describes the start coordinate value for ``x'' (or ``y'' etc..) with respect to the ``image'' coordinate system.
Definition at line 60 of file vipl_section_descriptor.h.
int vipl_section_descriptor< DataType >::data_offsets | ( | int | axis | ) | const [virtual, inherited] |
This method takes in an integer argument called axis (i.e.
This method takes in an argument called axis (i.e.
0 means the ``x'' axis, 1 means ``y'' axis etc...) and returns an integer which describes the offset of the next (i.e. associated with the higher coordinate value) data item along the axis.
Definition at line 149 of file vipl_section_descriptor.txx.
DataType * vipl_section_descriptor< DataType >::data_ptr | ( | ) | [virtual, inherited] |
Returns a referable pointer to the first data item in the current section.
If the value returned is null, then the address is not available to the filter.
If the value returned is 0, then the address is not available to the filter.
Definition at line 158 of file vipl_section_descriptor.txx.
const DataType * vipl_section_descriptor< DataType >::data_ptr | ( | ) | const [virtual, inherited] |
Returns a const pointer to the first data item in the current section.
If the value returned is null, then the address is not available to the filter.
If the value returned is 0, then the address is not available to the filter.
Definition at line 167 of file vipl_section_descriptor.txx.
int vipl_section_descriptor< DataType >::dec_refcount | ( | ) | [inline, inherited] |
Definition at line 151 of file vipl_section_descriptor.h.
vcl_vector< int > const& vipl_section_descriptor_2d< DataType >::i_curr_sec_end | ( | ) | const [inline] |
This method takes in an integer argument called axis (i.e.
0 means the ``x'' axis, 1 means ``y'' axis etc...) and returns an integer which describes the end coordinate value for ``x'' (or ``y'' etc..) with respect to the ``image'' coordinate system.
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 114 of file vipl_section_descriptor_2d.h.
vcl_vector< int > const& vipl_section_descriptor_2d< DataType >::i_curr_sec_size | ( | ) | const [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 117 of file vipl_section_descriptor_2d.h.
vcl_vector< int > const& vipl_section_descriptor_2d< DataType >::i_curr_sec_start | ( | ) | const [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 111 of file vipl_section_descriptor_2d.h.
vcl_vector< int > const& vipl_section_descriptor_2d< DataType >::i_data_offsets | ( | ) | const [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 108 of file vipl_section_descriptor_2d.h.
DataType* vipl_section_descriptor_2d< DataType >::i_data_ptr | ( | ) | const [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 105 of file vipl_section_descriptor_2d.h.
int vipl_section_descriptor< DataType >::inc_refcount | ( | ) | [inline, inherited] |
Definition at line 150 of file vipl_section_descriptor.h.
virtual vipl_section_descriptor< DataType >* vipl_section_descriptor< DataType >::inner_descriptor | ( | ) | [inline, virtual, inherited] |
Returns a writable pointer to the ``real'' section descriptor.
If this method is called on a concrete instance, it should return 0.
Definition at line 99 of file vipl_section_descriptor.h.
virtual const vipl_section_descriptor< DataType >* vipl_section_descriptor< DataType >::inner_descriptor | ( | ) | const [inline, virtual, inherited] |
Returns a const pointer to the ``real'' section descriptor.
If this method is called on a concrete instance, it should return 0.
Definition at line 104 of file vipl_section_descriptor.h.
void vipl_section_descriptor_2d< DataType >::put_i_curr_sec_end | ( | vcl_vector< int > const & | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 116 of file vipl_section_descriptor_2d.h.
void vipl_section_descriptor_2d< DataType >::put_i_curr_sec_size | ( | vcl_vector< int > const & | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 119 of file vipl_section_descriptor_2d.h.
void vipl_section_descriptor_2d< DataType >::put_i_curr_sec_start | ( | vcl_vector< int > const & | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 113 of file vipl_section_descriptor_2d.h.
void vipl_section_descriptor_2d< DataType >::put_i_data_offsets | ( | vcl_vector< int > const & | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 110 of file vipl_section_descriptor_2d.h.
void vipl_section_descriptor_2d< DataType >::put_i_data_ptr | ( | DataType * | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 107 of file vipl_section_descriptor_2d.h.
void vipl_section_descriptor_2d< DataType >::put_real_container | ( | vipl_section_container< DataType > * | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 104 of file vipl_section_descriptor_2d.h.
void vipl_section_descriptor_2d< DataType >::put_real_descriptor | ( | vipl_section_descriptor< DataType > * | v | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 101 of file vipl_section_descriptor_2d.h.
vipl_section_container< DataType >* vipl_section_descriptor_2d< DataType >::real_container | ( | ) | const [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 102 of file vipl_section_descriptor_2d.h.
vipl_section_descriptor< DataType >* vipl_section_descriptor_2d< DataType >::real_descriptor | ( | ) | const [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 99 of file vipl_section_descriptor_2d.h.
vcl_vector< int >& vipl_section_descriptor_2d< DataType >::ref_i_curr_sec_end | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 115 of file vipl_section_descriptor_2d.h.
vcl_vector< int >& vipl_section_descriptor_2d< DataType >::ref_i_curr_sec_size | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 118 of file vipl_section_descriptor_2d.h.
vcl_vector< int >& vipl_section_descriptor_2d< DataType >::ref_i_curr_sec_start | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 112 of file vipl_section_descriptor_2d.h.
vcl_vector< int >& vipl_section_descriptor_2d< DataType >::ref_i_data_offsets | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 109 of file vipl_section_descriptor_2d.h.
DataType* & vipl_section_descriptor_2d< DataType >::ref_i_data_ptr | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 106 of file vipl_section_descriptor_2d.h.
vipl_section_container< DataType >* & vipl_section_descriptor_2d< DataType >::ref_real_container | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 103 of file vipl_section_descriptor_2d.h.
vipl_section_descriptor< DataType >* & vipl_section_descriptor_2d< DataType >::ref_real_descriptor | ( | ) | [inline] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 100 of file vipl_section_descriptor_2d.h.
int vipl_section_descriptor< DataType >::refcount | ( | ) | const [inline, inherited] |
Definition at line 149 of file vipl_section_descriptor.h.
int vipl_section_descriptor< DataType >::restrict | ( | const vipl_section_descriptor< DataType > & | ROA | ) | [inherited] |
This method takes in a section_descriptor (which can be thought of as a filter's ROA) and updates this section to be the intersection of the ROA and the original section.
It returns 0 if the region is empty, 1 if nothing changed and 2 if there was really a change in the section.
Definition at line 179 of file vipl_section_descriptor.txx.
vipl_section_descriptor< DataType > * vipl_section_descriptor< DataType >::virtual_copy | ( | ) | const [virtual, inherited] |
Makes a new correct copy.
Makes a new correct copy. It's just a bit more tricky because descriptors have pointers to its ``real instance''.
It's just a bit more tricky because descriptors have pointers to its ``real instance.''
Definition at line 186 of file vipl_section_descriptor.txx.
friend class vipl_section_container< DataType > [friend] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 18 of file vipl_section_descriptor_2d.h.
friend class vipl_section_iterator< DataType > [friend] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 19 of file vipl_section_descriptor_2d.h.
vcl_vector< int > vipl_section_descriptor_2d< DataType >::hsi_curr_sec_end [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 31 of file vipl_section_descriptor_2d.h.
vcl_vector< int > vipl_section_descriptor_2d< DataType >::hsi_curr_sec_size [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 32 of file vipl_section_descriptor_2d.h.
vcl_vector< int > vipl_section_descriptor_2d< DataType >::hsi_curr_sec_start [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 30 of file vipl_section_descriptor_2d.h.
vcl_vector< int > vipl_section_descriptor_2d< DataType >::hsi_data_offsets [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 28 of file vipl_section_descriptor_2d.h.
DataType* vipl_section_descriptor_2d< DataType >::hsi_data_ptr [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 26 of file vipl_section_descriptor_2d.h.
vipl_section_container< DataType >* vipl_section_descriptor_2d< DataType >::hsreal_container [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 24 of file vipl_section_descriptor_2d.h.
vipl_section_descriptor< DataType >* vipl_section_descriptor_2d< DataType >::hsreal_descriptor [private] |
Reimplemented from vipl_section_descriptor< DataType >.
Definition at line 23 of file vipl_section_descriptor_2d.h.