Represent a feature associated with a set of invariant properties. More...
#include <rgrl_invariant.h>
Public Member Functions | |
rgrl_invariant () | |
virtual | ~rgrl_invariant () |
virtual bool | estimate (rgrl_invariant_sptr from, rgrl_transformation_sptr &xform, rgrl_scale_sptr &scale)=0 |
Estimate the xform mapping from to the current feature. | |
virtual const vnl_vector < double > & | cartesian_invariants () const |
Returns the vector of invariants normalized by scale. | |
virtual const vnl_vector < double > & | angular_invariants () const |
Returns the vector of invariants normalized by scale. | |
virtual rgrl_mask_box | region () const |
Return the ROI associated with the feature. | |
virtual bool | has_region () const |
Return true if the feature has an initial ROI. | |
rgrl_type_macro (rgrl_invariant, rgrl_object) | |
virtual bool | is_type (const vcl_type_info &type) const |
void | set_debug_flag (unsigned int debugFlag) const |
Set the value of the debug flag. A non-zero value turns debugging on. | |
unsigned int | debug_flag () const |
Get the value of the debug flag. | |
void | set_warning (bool) const |
Set the flag for warning messages. | |
bool | warning () const |
Get the warning flag. | |
unsigned int | add_observer (rgrl_event_sptr event, rgrl_command_sptr) |
Allow people to add/remove/invoke observers (callbacks) to any rgrl object. | |
rgrl_command_sptr | get_command (unsigned int tag) |
Get the command associated with the given tag. | |
void | invoke_event (const rgrl_event &) |
Call execute(.) on all the rgrl_commands observing this event id. | |
void | invoke_event (const rgrl_event &) const |
Call execute(.) on all the rgrl_commands observing this event id. | |
void | remove_observer (unsigned int tag) |
Remove the observer with this tag value. | |
bool | has_observer (const rgrl_event &event) const |
Return true if an observer is registered for this event. | |
void | ref () |
void | unref () |
int | get_references () const |
bool | is_referenced () const |
Static Public Member Functions | |
static const vcl_type_info & | type_id () |
Private Member Functions | |
rgrl_invariant & | operator= (rgrl_invariant const &) |
Static Private Attributes | |
static vnl_vector< double > | zero_vec = vnl_vector<double>(0) |
Represent a feature associated with a set of invariant properties.
Definition at line 19 of file rgrl_invariant.h.
rgrl_invariant::rgrl_invariant | ( | ) | [inline] |
Definition at line 23 of file rgrl_invariant.h.
virtual rgrl_invariant::~rgrl_invariant | ( | ) | [inline, virtual] |
Definition at line 26 of file rgrl_invariant.h.
unsigned int rgrl_object::add_observer | ( | rgrl_event_sptr | event, |
rgrl_command_sptr | cmd | ||
) | [inherited] |
Allow people to add/remove/invoke observers (callbacks) to any rgrl object.
This is an implementation of the subject/observer design pattern. An observer is added by specifying an event to respond to and an rgrl_command to execute. It returns an unsigned long tag which can be used later to remove the event or retrieve the command.
Definition at line 47 of file rgrl_object.cxx.
virtual const vnl_vector<double>& rgrl_invariant::angular_invariants | ( | ) | const [inline, virtual] |
Returns the vector of invariants normalized by scale.
Reimplemented in rgrl_invariant_single_landmark.
Definition at line 37 of file rgrl_invariant.h.
virtual const vnl_vector<double>& rgrl_invariant::cartesian_invariants | ( | ) | const [inline, virtual] |
Returns the vector of invariants normalized by scale.
Reimplemented in rgrl_invariant_single_landmark.
Definition at line 34 of file rgrl_invariant.h.
unsigned int rgrl_object::debug_flag | ( | ) | const [inherited] |
Get the value of the debug flag.
Definition at line 26 of file rgrl_object.cxx.
virtual bool rgrl_invariant::estimate | ( | rgrl_invariant_sptr | from, |
rgrl_transformation_sptr & | xform, | ||
rgrl_scale_sptr & | scale | ||
) | [pure virtual] |
Estimate the xform mapping from to the current feature.
Implemented in rgrl_invariant_single_landmark.
rgrl_command_sptr rgrl_object::get_command | ( | unsigned int | tag | ) | [inherited] |
Get the command associated with the given tag.
Definition at line 57 of file rgrl_object.cxx.
bool rgrl_object::has_observer | ( | const rgrl_event & | event | ) | const [inherited] |
Return true if an observer is registered for this event.
Definition at line 107 of file rgrl_object.cxx.
virtual bool rgrl_invariant::has_region | ( | ) | const [inline, virtual] |
Return true if the feature has an initial ROI.
Reimplemented in rgrl_invariant_single_landmark.
Definition at line 44 of file rgrl_invariant.h.
void rgrl_object::invoke_event | ( | const rgrl_event & | event | ) | [inherited] |
Call execute(.) on all the rgrl_commands observing this event id.
Definition at line 69 of file rgrl_object.cxx.
void rgrl_object::invoke_event | ( | const rgrl_event & | event | ) | const [inherited] |
Call execute(.) on all the rgrl_commands observing this event id.
The actions triggered by this call doesn't modify this object.
Definition at line 83 of file rgrl_object.cxx.
virtual bool rgrl_object::is_type | ( | const vcl_type_info & | type | ) | const [inline, virtual, inherited] |
Reimplemented in rgrl_scale_estimator.
Definition at line 66 of file rgrl_object.h.
rgrl_invariant& rgrl_invariant::operator= | ( | rgrl_invariant const & | ) | [private] |
rgrl_mask_box rgrl_invariant::region | ( | ) | const [virtual] |
Return the ROI associated with the feature.
Reimplemented in rgrl_invariant_single_landmark.
Definition at line 9 of file rgrl_invariant.cxx.
void rgrl_object::remove_observer | ( | unsigned int | tag | ) | [inherited] |
Remove the observer with this tag value.
Definition at line 97 of file rgrl_object.cxx.
rgrl_invariant::rgrl_type_macro | ( | rgrl_invariant | , |
rgrl_object | |||
) |
void rgrl_object::set_debug_flag | ( | unsigned int | debugFlag | ) | const [inherited] |
Set the value of the debug flag. A non-zero value turns debugging on.
Definition at line 19 of file rgrl_object.cxx.
void rgrl_object::set_warning | ( | bool | flag | ) | const [inherited] |
Set the flag for warning messages.
Definition at line 33 of file rgrl_object.cxx.
static const vcl_type_info& rgrl_object::type_id | ( | ) | [inline, static, inherited] |
Reimplemented in rgrl_scale_estimator.
Definition at line 63 of file rgrl_object.h.
bool rgrl_object::warning | ( | ) | const [inherited] |
Get the warning flag.
Definition at line 40 of file rgrl_object.cxx.
vnl_vector< double > rgrl_invariant::zero_vec = vnl_vector<double>(0) [static, private] |
Definition at line 55 of file rgrl_invariant.h.