Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Attributes
rgrl_invariant Class Reference

Represent a feature associated with a set of invariant properties. More...

#include <rgrl_invariant.h>

Inheritance diagram for rgrl_invariant:
Inheritance graph
[legend]

List of all members.

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_invariantoperator= (rgrl_invariant const &)

Static Private Attributes

static vnl_vector< double > zero_vec = vnl_vector<double>(0)

Detailed Description

Represent a feature associated with a set of invariant properties.

Definition at line 19 of file rgrl_invariant.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

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.


Member Data Documentation

vnl_vector< double > rgrl_invariant::zero_vec = vnl_vector<double>(0) [static, private]

Definition at line 55 of file rgrl_invariant.h.


The documentation for this class was generated from the following files: