Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

SegmentedColorFilterBankEvent Class Reference

#include <SegmentedColorFilterBankEvent.h>

Inheritance diagram for SegmentedColorFilterBankEvent:

Inheritance graph
[legend]
List of all members.

Detailed Description

This event provides some additional color information over its superclass for image banks made up of indexed colors.

The color information is stored using the CMVision library's data structures

Don't bother trying to access the region information which is also held in the color_class_state structures. The RegionGenerator, doesn't fill in the global color information because each layer and channel is going to need its own region processing, so a single global structure only makes sense for the colors.

Definition at line 18 of file SegmentedColorFilterBankEvent.h.

Public Types

typedef CMVision::color_class_state color_class_state
 use CMVision's color structure
typedef __gnu_cxx::hash_map<
const char *, unsigned int,
__gnu_cxx::hash< const char * >,
hashcmp_eqstr
hashmap
 a shorthand for the hash structure that CMVision expects for the color lookups

Public Member Functions

 SegmentedColorFilterBankEvent (FilterBankGenerator *creator, EventBase::EventGeneratorID_t gid, unsigned int sid, EventBase::EventTypeID_t tid, FilterBankGenerator *segColorSrc, unsigned int nColors, color_class_state *colorInfos, const hashmap *clrNames)
 constructor, to be used when first segmented, later stages should use the other constructor
 SegmentedColorFilterBankEvent (FilterBankGenerator *creator, EventBase::EventGeneratorID_t gid, unsigned int sid, EventBase::EventTypeID_t tid, const SegmentedColorFilterBankEvent &segevt)
 constructor, allows you to pass along color information to later stages
 SegmentedColorFilterBankEvent (const SegmentedColorFilterBankEvent &fbk)
 copy constructor (shallow copy -- the generator shouldn't be going anywhere)
const SegmentedColorFilterBankEventoperator= (const SegmentedColorFilterBankEvent &fbk)
 assignment operator (shallow copy -- the generator shouldn't be going anywhere)
virtual EventBaseclone () const
 allows a copy to be made of an event, supporting polymorphism
FilterBankGeneratorgetSegmentedColorSource () const
 Gives access to underlying generator.
unsigned int getNumColors () const
 returns the number of different colors available
const color_class_stategetColors () const
 gives direct access to the color information
const color_class_stategetColor (unsigned int i) const
 gives direct access to the color information
unsigned int getColorIndex (const char *name) const
 returns index of color corresponding to a string (uses a fast hash lookup)
unsigned int getColorIndex (const std::string &name) const
 returns index of color corresponding to a string (uses a fast hash lookup)

Protected Attributes

FilterBankGeneratorsegsrc
 pointer to generator which did the segmentation and therefore holds the color information
unsigned int numColors
 number of available colors
const color_class_statecolors
 array of available colors
const hashmapcolorNames
 hash map to look up index from name


Member Typedef Documentation

typedef CMVision::color_class_state SegmentedColorFilterBankEvent::color_class_state
 

use CMVision's color structure

Definition at line 20 of file SegmentedColorFilterBankEvent.h.

typedef __gnu_cxx::hash_map<const char*, unsigned int, __gnu_cxx::hash<const char*>, hashcmp_eqstr> SegmentedColorFilterBankEvent::hashmap
 

a shorthand for the hash structure that CMVision expects for the color lookups

Definition at line 21 of file SegmentedColorFilterBankEvent.h.


Constructor & Destructor Documentation

SegmentedColorFilterBankEvent::SegmentedColorFilterBankEvent FilterBankGenerator creator,
EventBase::EventGeneratorID_t  gid,
unsigned int  sid,
EventBase::EventTypeID_t  tid,
FilterBankGenerator segColorSrc,
unsigned int  nColors,
color_class_state colorInfos,
const hashmap clrNames
[inline]
 

constructor, to be used when first segmented, later stages should use the other constructor

Definition at line 24 of file SegmentedColorFilterBankEvent.h.

Referenced by clone().

SegmentedColorFilterBankEvent::SegmentedColorFilterBankEvent FilterBankGenerator creator,
EventBase::EventGeneratorID_t  gid,
unsigned int  sid,
EventBase::EventTypeID_t  tid,
const SegmentedColorFilterBankEvent segevt
[inline]
 

constructor, allows you to pass along color information to later stages

Definition at line 29 of file SegmentedColorFilterBankEvent.h.

SegmentedColorFilterBankEvent::SegmentedColorFilterBankEvent const SegmentedColorFilterBankEvent fbk  )  [inline]
 

copy constructor (shallow copy -- the generator shouldn't be going anywhere)

Definition at line 34 of file SegmentedColorFilterBankEvent.h.


Member Function Documentation

virtual EventBase* SegmentedColorFilterBankEvent::clone  )  const [inline, virtual]
 

allows a copy to be made of an event, supporting polymorphism

Must be overridden by all subclasses to allow this to happen

I would like to switch this over to the cloneable interface once the compiler gets updated out of the 3.3 branch... see Cloneable::clone() for a discussion of the issue and implementation notes.

Reimplemented from FilterBankEvent.

Definition at line 47 of file SegmentedColorFilterBankEvent.h.

const color_class_state& SegmentedColorFilterBankEvent::getColor unsigned int  i  )  const [inline]
 

gives direct access to the color information

Definition at line 62 of file SegmentedColorFilterBankEvent.h.

unsigned int SegmentedColorFilterBankEvent::getColorIndex const std::string &  name  )  const [inline]
 

returns index of color corresponding to a string (uses a fast hash lookup)

Definition at line 72 of file SegmentedColorFilterBankEvent.h.

unsigned int SegmentedColorFilterBankEvent::getColorIndex const char *  name  )  const [inline]
 

returns index of color corresponding to a string (uses a fast hash lookup)

Definition at line 65 of file SegmentedColorFilterBankEvent.h.

Referenced by getColorIndex().

const color_class_state* SegmentedColorFilterBankEvent::getColors  )  const [inline]
 

gives direct access to the color information

Definition at line 59 of file SegmentedColorFilterBankEvent.h.

Referenced by RegionGenerator::processEvent().

unsigned int SegmentedColorFilterBankEvent::getNumColors  )  const [inline]
 

returns the number of different colors available

Definition at line 56 of file SegmentedColorFilterBankEvent.h.

Referenced by RegionGenerator::processEvent(), and BallDetectionGenerator::processEvent().

FilterBankGenerator* SegmentedColorFilterBankEvent::getSegmentedColorSource  )  const [inline]
 

Gives access to underlying generator.

Definition at line 53 of file SegmentedColorFilterBankEvent.h.

const SegmentedColorFilterBankEvent& SegmentedColorFilterBankEvent::operator= const SegmentedColorFilterBankEvent fbk  )  [inline]
 

assignment operator (shallow copy -- the generator shouldn't be going anywhere)

Definition at line 40 of file SegmentedColorFilterBankEvent.h.


Member Data Documentation

const hashmap* SegmentedColorFilterBankEvent::colorNames [protected]
 

hash map to look up index from name

Definition at line 79 of file SegmentedColorFilterBankEvent.h.

Referenced by getColorIndex(), and operator=().

const color_class_state* SegmentedColorFilterBankEvent::colors [protected]
 

array of available colors

Definition at line 78 of file SegmentedColorFilterBankEvent.h.

Referenced by getColor(), getColors(), and operator=().

unsigned int SegmentedColorFilterBankEvent::numColors [protected]
 

number of available colors

Definition at line 77 of file SegmentedColorFilterBankEvent.h.

Referenced by getNumColors(), and operator=().

FilterBankGenerator* SegmentedColorFilterBankEvent::segsrc [protected]
 

pointer to generator which did the segmentation and therefore holds the color information

Definition at line 76 of file SegmentedColorFilterBankEvent.h.

Referenced by getSegmentedColorSource(), and operator=().


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

Tekkotsu v2.4.1
Generated Tue Aug 16 16:35:08 2005 by Doxygen 1.4.4