PlayerCc::BlackBoardProxy Class Reference

The BlackBoardProxy class is used to subscribe to a blackboard device. More...

#include <playerc++.h>

Inheritance diagram for PlayerCc::BlackBoardProxy:
Inheritance graph
Collaboration diagram for PlayerCc::BlackBoardProxy:
Collaboration graph

Detailed Description

The BlackBoardProxy class is used to subscribe to a blackboard device.

A blackboard is a data-store which sends updates when an entry is changed. It also returns the current value of an entry when a proxy first subcribes to that entries key. If an entry does not exist, the default value of that entry is returned.

Public Member Functions

 BlackBoardProxy (PlayerClient *aPc, uint32_t aIndex=0)
 Constructor.
 
 ~BlackBoardProxy ()
 Destructor.
 
player_blackboard_entry_tSubscribeToKey (const char *key, const char *group="")
 Subscribe to a key. More...
 
void UnsubscribeFromKey (const char *key, const char *group="")
 Stop receiving updates about this key. More...
 
void SubscribeToGroup (const char *key)
 Subscribe to a group. More...
 
void UnsubscribeFromGroup (const char *group)
 Stop receiving updates about this group. More...
 
void SetEntry (const player_blackboard_entry_t &entry)
 Set a key value.
 
player_blackboard_entry_tGetEntry (const char *key, const char *group)
 Get a value for a key.
 
void SetEventHandler (void(*on_blackboard_event)(playerc_blackboard_t *, player_blackboard_entry_t))
 Set the function pointer which will be called when an entry is updated. More...
 
- Public Member Functions inherited from PlayerCc::ClientProxy
bool IsValid () const
 Proxy has any information. More...
 
bool IsFresh () const
 Check for fresh data. More...
 
void NotFresh ()
 Reset Fresh flag. More...
 
std::string GetDriverName () const
 Get the underlying driver's name. More...
 
double GetDataTime () const
 Returns the received timestamp of the last data sample [s].
 
double GetElapsedTime () const
 Returns the time between the current data time and the time of the last data sample [s].
 
PlayerClientGetPlayerClient () const
 Get a pointer to the Player Client. More...
 
uint32_t GetIndex () const
 Get device index. More...
 
uint32_t GetInterface () const
 Get Interface Code. More...
 
std::string GetInterfaceStr () const
 Get Interface Name. More...
 
void SetReplaceRule (bool aReplace, int aType=-1, int aSubtype=-1)
 Set a replace rule for this proxy on the server. More...
 
int HasCapability (uint32_t aType, uint32_t aSubtype)
 Request capabilities of device. More...
 
int GetBoolProp (char *aProperty, bool *aValue)
 Request a boolean property. More...
 
int SetBoolProp (char *aProperty, bool aValue)
 Set a boolean property. More...
 
int GetIntProp (char *aProperty, int32_t *aValue)
 Request an integer property. More...
 
int SetIntProp (char *aProperty, int32_t aValue)
 Set an integer property. More...
 
int GetDblProp (char *aProperty, double *aValue)
 Request a double property. More...
 
int SetDblProp (char *aProperty, double aValue)
 Set a double property. More...
 
int GetStrProp (char *aProperty, char **aValue)
 Request a string property. More...
 
int SetStrProp (char *aProperty, char *aValue)
 Set a string property. More...
 
template<typename T >
connection_t ConnectReadSignal (T aSubscriber)
 Connect a read signal to this proxy. More...
 
void DisconnectReadSignal (connection_t aSubscriber)
 Disconnect a signal from this proxy. More...
 

Private Member Functions

void Subscribe (uint32_t aIndex)
 
void Unsubscribe ()
 

Private Attributes

playerc_blackboard_tmDevice
 

Additional Inherited Members

- Public Types inherited from PlayerCc::ClientProxy
typedef int connection_t
 
typedef boost::mutex::scoped_lock scoped_lock_t
 
typedef int read_signal_t
 
- Protected Member Functions inherited from PlayerCc::ClientProxy
 ClientProxy (PlayerClient *aPc, uint32_t aIndex)
 
template<typename T >
GetVar (const T &aV) const
 
template<typename T >
void GetVarByRef (const T aBegin, const T aEnd, T aDest) const
 
- Protected Attributes inherited from PlayerCc::ClientProxy
PlayerClientmPc
 
playerc_client_tmClient
 
playerc_device_tmInfo
 
bool mFresh
 

Member Function Documentation

◆ SetEventHandler()

void PlayerCc::BlackBoardProxy::SetEventHandler ( void(*)(playerc_blackboard_t *, player_blackboard_entry_t on_blackboard_event)

Set the function pointer which will be called when an entry is updated.

◆ SubscribeToGroup()

void PlayerCc::BlackBoardProxy::SubscribeToGroup ( const char *  key)

Subscribe to a group.

The event handler must be set to retrieve the current group entries.

◆ SubscribeToKey()

player_blackboard_entry_t* PlayerCc::BlackBoardProxy::SubscribeToKey ( const char *  key,
const char *  group = "" 
)

Subscribe to a key.

If the key does not exist the default value is returned. The user must free the entry.

◆ UnsubscribeFromGroup()

void PlayerCc::BlackBoardProxy::UnsubscribeFromGroup ( const char *  group)

Stop receiving updates about this group.

◆ UnsubscribeFromKey()

void PlayerCc::BlackBoardProxy::UnsubscribeFromKey ( const char *  key,
const char *  group = "" 
)

Stop receiving updates about this key.


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