w2kmeans::MotionEstimateListener< GridType > Class Template Reference

Inheritance diagram for w2kmeans::MotionEstimateListener< GridType >:

w2kmeans::MotionEstimateSupplier< GridType > List of all members.

Detailed Description

template<class GridType>
class w2kmeans::MotionEstimateListener< GridType >

Can be attached to an Index so that it listens for the motion estimates and provides it to attached MotionEstimateHandlers.

i.e. a proxy for a remotely running MotionEstimator.

Author:
Lakshman
Version:
Id
w2kmeans_MotionEstimateSupplier.h,v 1.12 2009/06/02 20:17:58 lakshman Exp


Public Member Functions

 MotionEstimateListener (const std::string &trackingProduct, size_t scale)
 If you provide a tracking product, then the listener will wait for the motion estimates before advecting products received between the time the tracking product comes along and the motion estimates are created.
 MotionEstimateListener (size_t scale=0, bool init_with_scale=true)
virtual ~MotionEstimateListener ()
virtual void actionPerformed (const code::ActionEvent *e)
void addMotionEstimateHandler (code::SmartPtr< MotionEstimateHandler< GridType > > a)
 Add an estimate handler.
bool isProcessing () const
 returns true while processing the input, and false if waiting for new inputs.
virtual bool shouldProcessInputAt (const code::Time &newTime) const
 are we ready to process the next input? In general, we are always ready, since we have no idea how often the motion estimates are going to arrive .

Static Public Member Functions

static MotionEstimateListener createListenerForWindField (const std::string &windfield_product_name, const std::string &growth_rate_product_name="")
 create a listener for WindField products of names different from the segmotion convention of WindField:scale_x.

Protected Member Functions

void notifyMotionEstimate (const GridType &motionEast, const GridType &motionSouth, const GridType &growthRate, size_t scale, bool complete)
 subclass implementors should call this method when they have this information.
void notifyIntermediateProduct (const code::DataType &grid)
 this method may be called for handlers who write out intermediate products.
void setProcessingFlag (bool input)


Constructor & Destructor Documentation

template<class GridType>
w2kmeans::MotionEstimateListener< GridType >::MotionEstimateListener ( const std::string &  trackingProduct,
size_t  scale 
)

If you provide a tracking product, then the listener will wait for the motion estimates before advecting products received between the time the tracking product comes along and the motion estimates are created.

template<class GridType>
w2kmeans::MotionEstimateListener< GridType >::MotionEstimateListener ( size_t  scale = 0,
bool  init_with_scale = true 
)

template<class GridType>
virtual w2kmeans::MotionEstimateListener< GridType >::~MotionEstimateListener (  )  [inline, virtual]


Member Function Documentation

template<class GridType>
virtual void w2kmeans::MotionEstimateListener< GridType >::actionPerformed ( const code::ActionEvent *  e  )  [virtual]

template<class GridType>
void w2kmeans::MotionEstimateSupplier< GridType >::addMotionEstimateHandler ( code::SmartPtr< MotionEstimateHandler< GridType > >  a  )  [inline, inherited]

Add an estimate handler.

we will call handleMotionEstimate on this object whenever we generate a new motion estimate.

template<class GridType>
static MotionEstimateListener w2kmeans::MotionEstimateListener< GridType >::createListenerForWindField ( const std::string &  windfield_product_name,
const std::string &  growth_rate_product_name = "" 
) [static]

create a listener for WindField products of names different from the segmotion convention of WindField:scale_x.

You can use this to listen for wind fields from model data, for example.

template<class GridType>
bool w2kmeans::MotionEstimateSupplier< GridType >::isProcessing (  )  const [inline, inherited]

returns true while processing the input, and false if waiting for new inputs.

template<class GridType>
void w2kmeans::MotionEstimateSupplier< GridType >::notifyIntermediateProduct ( const code::DataType &  grid  )  [protected, inherited]

this method may be called for handlers who write out intermediate products.

template<class GridType>
void w2kmeans::MotionEstimateSupplier< GridType >::notifyMotionEstimate ( const GridType &  motionEast,
const GridType &  motionSouth,
const GridType &  growthRate,
size_t  scale,
bool  complete 
) [protected, inherited]

subclass implementors should call this method when they have this information.

template<class GridType>
void w2kmeans::MotionEstimateSupplier< GridType >::setProcessingFlag ( bool  input  )  [inline, protected, inherited]

template<class GridType>
virtual bool w2kmeans::MotionEstimateSupplier< GridType >::shouldProcessInputAt ( const code::Time &  newTime  )  const [inline, virtual, inherited]

are we ready to process the next input? In general, we are always ready, since we have no idea how often the motion estimates are going to arrive .

.. Subclasses can over-ride this, to allow data providers to decide whether or not the input data is required at this time.

Reimplemented in w2kmeans::MotionEstimator< GridType >.


Generated on Fri May 4 13:40:24 2012 for WDSS-IIw2algs by  doxygen 1.4.7