The CoopObjectProxy class is used to control a interface_coopobject device. More...

#include <playerc++.h>

Inheritance diagram for PlayerCc::CoopObjectProxy:
Inheritance graph
Collaboration diagram for PlayerCc::CoopObjectProxy:
Collaboration graph

Detailed Description

The CoopObjectProxy class is used to control a interface_coopobject device.

Public Member Functions

 CoopObjectProxy (PlayerClient *aPc, uint32_t aIndex=0)
 Constructor.
 
 ~CoopObjectProxy ()
 Destructor.
 
int MessageType () const
 Message type Possible values include.
 
uint32_t GetOrigin () const
 Cooperating Object type Possible values include.
 
uint32_t GetID () const
 Cooperating Object ID.
 
uint32_t GetParentID () const
 Cooperating Object Parent ID.
 
uint32_t GetProxyID () const
 Get robot ID.
 
void SetProxyID (uint32_t value)
 Set robot ID.
 
uint32_t GetSensorNumber () const
 Get number of sensors included in the message.
 
uint8_t GetSensorType (uint32_t index) const
 Sensor type Possible values include.
 
uint16_t GetSensorData (uint32_t index) const
 Sensor value.
 
uint32_t GetAlarmNumber () const
 Get number of alarms included in the message.
 
uint8_t GetAlarmType (uint32_t index) const
 Alarm type Possible values include.
 
uint16_t GetAlarmData (uint32_t index) const
 Alarm value.
 
uint32_t GetUserDataNumber () const
 Get number of bytes of user defined data.
 
uint8_t * GetAllUserData () const
 User defined data array.
 
uint8_t GetUserData (uint32_t index) const
 Indexed user defined byte.
 
uint16_t GetRSSIsenderId () const
 Radio Signal Strength sender ID.
 
uint16_t GetRSSIvalue () const
 Radio Signal Strength value.
 
uint16_t GetRSSIstamp () const
 Radio Signal Strength message timestamp.
 
double GetRSSInodeTime () const
 Radio Signal Strength Cooperating Object timestamp.
 
float GetX () const
 Cooperating Object X position.
 
float GetY () const
 Cooperating Object Y position.
 
float GetZ () const
 Cooperating Object Z position.
 
uint8_t GetStatus () const
 Cooperating Object status.
 
uint32_t GetRequest () const
 Request type.
 
uint32_t GetCommand () const
 Command type.
 
uint32_t GetParametersSize () const
 Request/Command parameter array size (in bytes)
 
uint8_t * GetAllParameters () const
 Request/Command parameter array.
 
uint8_t GetParameter (uint32_t index) const
 Indexed user defined byte.
 
void SendData (int destID, int sourceID, player_pose2d_t pos, int status)
 Send user data to Cooperating Object.
 
void SendData (int destID, int sourceID, int extradata_type, uint32_t extradata_size, uint8_t *extradata)
 Send user data to Cooperating Object.
 
void SendCommand (int destID, int sourceID, int command, uint32_t cmd_parameters_size=0, uint8_t *cmd_parameters=NULL)
 Send command to Cooperating Object.
 
void SendRequest (int destID, int sourceID, int request, uint32_t req_parameters_size=0, uint8_t *req_parameters=NULL)
 Send request to Cooperating Object.
 
- Public Member Functions inherited from PlayerCc::ClientProxy
bool IsValid () const
 Proxy has any information.
 
bool IsFresh () const
 Check for fresh data.
 
void NotFresh ()
 Reset Fresh flag.
 
std::string GetDriverName () const
 Get the underlying driver's name.
 
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.
 
uint32_t GetIndex () const
 Get device index.
 
uint32_t GetInterface () const
 Get Interface Code.
 
std::string GetInterfaceStr () const
 Get Interface Name.
 
void SetReplaceRule (bool aReplace, int aType=-1, int aSubtype=-1)
 Set a replace rule for this proxy on the server.
 
int HasCapability (uint32_t aType, uint32_t aSubtype)
 Request capabilities of device.
 
int GetBoolProp (char *aProperty, bool *aValue)
 Request a boolean property.
 
int SetBoolProp (char *aProperty, bool aValue)
 Set a boolean property.
 
int GetIntProp (char *aProperty, int32_t *aValue)
 Request an integer property.
 
int SetIntProp (char *aProperty, int32_t aValue)
 Set an integer property.
 
int GetDblProp (char *aProperty, double *aValue)
 Request a double property.
 
int SetDblProp (char *aProperty, double aValue)
 Set a double property.
 
int GetStrProp (char *aProperty, char **aValue)
 Request a string property.
 
int SetStrProp (char *aProperty, char *aValue)
 Set a string property.
 
template<typename T >
connection_t ConnectReadSignal (T aSubscriber)
 Connect a read signal to this proxy.
 
void DisconnectReadSignal (connection_t aSubscriber)
 Disconnect a signal from this proxy.
 

Private Member Functions

void Subscribe (uint32_t aIndex)
 
void Unsubscribe ()
 

Private Attributes

playerc_coopobject_tmDevice
 
uint16_t id
 

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

◆ GetAlarmType()

uint8_t PlayerCc::CoopObjectProxy::GetAlarmType ( uint32_t index) const
inline

Alarm type Possible values include.

  • PLAYER_COOPOBJECT_TEMPERATURE
  • PLAYER_COOPOBJECT_HUMIDITY
  • PLAYER_COOPOBJECT_PRESSURE
  • PLAYER_COOPOBJECT_LIGHT_1
  • PLAYER_COOPOBJECT_LIGHT_2
  • PLAYER_COOPOBJECT_ACCEL_X
  • PLAYER_COOPOBJECT_ACCEL_Y
  • PLAYER_COOPOBJECT_ACCEL_Z
  • PLAYER_COOPOBJECT_MAGNETOMETER_X
  • PLAYER_COOPOBJECT_MAGNETOMETER_Y
  • PLAYER_COOPOBJECT_MAGNETOMETER_Z
  • PLAYER_COOPOBJECT_COMPASS
  • PLAYER_COOPOBJECT_CO
  • PLAYER_COOPOBJECT_CO2
  • PLAYER_COOPOBJECT_H2
  • PLAYER_COOPOBJECT_SMOKE
  • PLAYER_COOPOBJECT_OPTSWITCH

References playerc_coopobject_t::alarm_data.

◆ GetOrigin()

uint32_t PlayerCc::CoopObjectProxy::GetOrigin ( ) const
inline

Cooperating Object type Possible values include.

  • PLAYER_COOPOBJECT_ORIGIN_STATICBASE
  • PLAYER_COOPOBJECT_ORIGIN_MOBILEBASE
  • PLAYER_COOPOBJECT_ORIGIN_MOTE
  • PLAYER_COOPOBJECT_ORIGIN_ROBOT

References playerc_coopobject_t::origin.

◆ GetSensorType()

uint8_t PlayerCc::CoopObjectProxy::GetSensorType ( uint32_t index) const
inline

Sensor type Possible values include.

  • PLAYER_COOPOBJECT_TEMPERATURE
  • PLAYER_COOPOBJECT_HUMIDITY
  • PLAYER_COOPOBJECT_PRESSURE
  • PLAYER_COOPOBJECT_LIGHT_1
  • PLAYER_COOPOBJECT_LIGHT_2
  • PLAYER_COOPOBJECT_ACCEL_X
  • PLAYER_COOPOBJECT_ACCEL_Y
  • PLAYER_COOPOBJECT_ACCEL_Z
  • PLAYER_COOPOBJECT_MAGNETOMETER_X
  • PLAYER_COOPOBJECT_MAGNETOMETER_Y
  • PLAYER_COOPOBJECT_MAGNETOMETER_Z
  • PLAYER_COOPOBJECT_COMPASS
  • PLAYER_COOPOBJECT_CO
  • PLAYER_COOPOBJECT_CO2
  • PLAYER_COOPOBJECT_H2

References playerc_coopobject_t::sensor_data.

◆ MessageType()

int PlayerCc::CoopObjectProxy::MessageType ( ) const
inline

Message type Possible values include.

  • PLAYER_COOPOBJECT_MSG_NONE
  • PLAYER_COOPOBJECT_MSG_HEALTH
  • PLAYER_COOPOBJECT_MSG_POSITION
  • PLAYER_COOPOBJECT_MSG_RSSI
  • PLAYER_COOPOBJECT_MSG_SENSOR
  • PLAYER_COOPOBJECT_MSG_ALARM
  • PLAYER_COOPOBJECT_MSG_REQUEST
  • PLAYER_COOPOBJECT_MSG_COMMAND or user defined messages with ID > 6

References playerc_coopobject_t::messageType.

◆ Subscribe()

void PlayerCc::CoopObjectProxy::Subscribe ( uint32_t aIndex)
privatevirtual

Reimplemented from PlayerCc::ClientProxy.

◆ Unsubscribe()

void PlayerCc::CoopObjectProxy::Unsubscribe ( )
privatevirtual

Reimplemented from PlayerCc::ClientProxy.


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