libalextractor  1.14.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends
Public Member Functions | Protected Member Functions
AL::ALExtractor Class Reference

ALExtractor class implements an extractor. More...

#include <alextractor/alextractor.h>

List of all members.

Public Member Functions

 ALExtractor (boost::shared_ptr< ALBroker > pBroker, const std::string &pName)
 Constructor.
virtual ~ALExtractor ()
 Destructor.
virtual void subscribe (const std::string &pSubscribedName, const int &pPeriod, const float &pPrecision)
 Called by the "client" to tell that it is interested in the output values.
void subscribe (const std::string &pSubscribedName)
 Called by the "client" to tell that it is interested in the output values. Period and Precision specified by getDefaultPrecision() and getDefaultPeriod() will be used by default.
virtual void updatePeriod (const std::string &pSubscribedName, const int &pPeriod)
 Called by the "client" to update the periode.
virtual void updatePrecision (const std::string &pSubscribedName, const float &pPrecision)
 Called by the "client" to update the precision.
virtual void unsubscribe (const std::string &pSubscribedName)
 Called by the "client" to tell that it is not interested anymore in the output values.
virtual int getCurrentPeriod ()
 Called by the "client" to get the current period chosen by the Extractor.
virtual float getCurrentPrecision ()
 Called by the "client" to get the current precision chosen by the Extractor.
virtual int getMyPeriod (const std::string &pSubscribedName)
 Called by the "client" to get the period.
virtual float getMyPrecision (const std::string &pSubscribedName)
 Called by the "client" to get the precision.
ALValue getSubscribersInfo ()
 Called by the "client" to get the information of all the current subscribers.
virtual std::string httpGet ()
 Called by the broker webpage to detail the module.

Protected Member Functions

virtual void xStartDetection (const int pPeriod, const float pPrecision)=0
 What the extractor shall do to start detection.
virtual void xUpdateParameters (const int pPeriod, const float pPrecision)
 updates fCurrentParameters from fSubscribedList.
virtual void xStopDetection ()=0
 What the extractor shall do to stop detection.
virtual int getDefaultPeriod ()
 Specifies the advertised period that should be chosen by default when subscribe(std::string name) is used.
virtual float getDefaultPrecision ()
 Specifies the advertised precision that should be chosen by default when subscribe(std::string name) is used.
std::vector< std::string > getOutputNames (void)
 Which values this extractor updates in ALMemory.

Detailed Description

ALExtractor class implements an extractor.

An extractor is a module which extracts some information about the world. It can be activated to produce information.

Definition at line 32 of file alextractor.h.


Constructor & Destructor Documentation

AL::ALExtractor::ALExtractor ( boost::shared_ptr< ALBroker pBroker,
const std::string &  pName 
)

Constructor.

Create a extractor link to a broker.

Parameters:
pBrokerpointer to the broker
pNamename of the extractor

Member Function Documentation

virtual int AL::ALExtractor::getCurrentPeriod ( ) [virtual]

Called by the "client" to get the current period chosen by the Extractor.

Returns:
current period
virtual float AL::ALExtractor::getCurrentPrecision ( ) [virtual]

Called by the "client" to get the current precision chosen by the Extractor.

Returns:
current precision
virtual int AL::ALExtractor::getDefaultPeriod ( ) [protected, virtual]

Specifies the advertised period that should be chosen by default when subscribe(std::string name) is used.

Implementing this method is optional. If not implemented, 30 ms will be chosen.

virtual float AL::ALExtractor::getDefaultPrecision ( ) [protected, virtual]

Specifies the advertised precision that should be chosen by default when subscribe(std::string name) is used.

Implementing this method is optional. If not implemented, 0 will be chosen.

virtual int AL::ALExtractor::getMyPeriod ( const std::string &  pSubscribedName) [virtual]

Called by the "client" to get the period.

Parameters:
pSubscribedNameName of the client module
Returns:
period I required
virtual float AL::ALExtractor::getMyPrecision ( const std::string &  pSubscribedName) [virtual]

Called by the "client" to get the precision.

Parameters:
pSubscribedNameName of the client module
Returns:
precision I required
std::vector<std::string> AL::ALExtractor::getOutputNames ( void  ) [protected]

Which values this extractor updates in ALMemory.

Returns:
vector of modified value

Called by the "client" to get the information of all the current subscribers.

Returns:
info, names and parameters of all subscribers
virtual std::string AL::ALExtractor::httpGet ( ) [virtual]

Called by the broker webpage to detail the module.

Returns:
an optional extra description of the module

Reimplemented from AL::ALModule.

virtual void AL::ALExtractor::subscribe ( const std::string &  pSubscribedName,
const int &  pPeriod,
const float &  pPrecision 
) [virtual]

Called by the "client" to tell that it is interested in the output values.

Parameters:
pSubscribedNameName of the client module
pPeriodperiod of the extractor
pPrecisionprecision of the extractor
void AL::ALExtractor::subscribe ( const std::string &  pSubscribedName)

Called by the "client" to tell that it is interested in the output values. Period and Precision specified by getDefaultPrecision() and getDefaultPeriod() will be used by default.

Parameters:
pSubscribedNameName of the client module
virtual void AL::ALExtractor::unsubscribe ( const std::string &  pSubscribedName) [virtual]

Called by the "client" to tell that it is not interested anymore in the output values.

Parameters:
pSubscribedNameName of the client module
virtual void AL::ALExtractor::updatePeriod ( const std::string &  pSubscribedName,
const int &  pPeriod 
) [virtual]

Called by the "client" to update the periode.

Parameters:
pSubscribedNameName of the client module
pPeriodperiod of the extractor
virtual void AL::ALExtractor::updatePrecision ( const std::string &  pSubscribedName,
const float &  pPrecision 
) [virtual]

Called by the "client" to update the precision.

Parameters:
pSubscribedNameName of the client module
pPrecisionprecision of the extractor
virtual void AL::ALExtractor::xStartDetection ( const int  pPeriod,
const float  pPrecision 
) [protected, pure virtual]

What the extractor shall do to start detection.

This method is called only once: when the first module subscribes.

Parameters:
pPeriodperiod of the extractor
pPrecisionprecision of the extractor
virtual void AL::ALExtractor::xStopDetection ( ) [protected, pure virtual]

What the extractor shall do to stop detection.

this method is called only once: when the last module unsubscribes.

virtual void AL::ALExtractor::xUpdateParameters ( const int  pPeriod,
const float  pPrecision 
) [protected, virtual]

updates fCurrentParameters from fSubscribedList.

This method is called each time the parameters has changed because of a new subscribtion or unsubscription or when a module calls updatePeriod or updatePrecision.

Parameters:
pPeriodperiod of the extractor
pPrecisionprecision of the extractor

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends