libcyberradio  22.01.24
WbddcGroupComponent Class Reference

WBDDC group component class for the NDR308. More...

#include <WbddcGroupComponent.h>

Inheritance diagram for WbddcGroupComponent:
WbddcGroupComponent RadioComponent Configurable Debuggable

Public Member Functions

 WbddcGroupComponent (int index=1, ::LibCyberRadio::Driver::RadioHandler *parent=NULL, bool debug=false)
 Constructs a WbddcGroupComponent object. More...
 
virtual ~WbddcGroupComponent ()
 Destroys a WbddcGroupComponent object.
 
 WbddcGroupComponent (const WbddcGroupComponent &other)
 Copies a WbddcGroupComponent object. More...
 
virtual WbddcGroupComponentoperator= (const WbddcGroupComponent &other)
 Assignment operator for WbddcGroupComponent objects. More...
 
virtual bool enable (bool enabled=true)
 Enables this component. More...
 
virtual bool setConfiguration (ConfigurationDict &cfg)
 Sets the configuration dictionary for this component. More...
 
virtual void queryConfiguration ()
 Tells the component to query its hardware configuration in order to create its configuration dictionary.
 
virtual BasicIntList getMembers () const
 Gets the list of group members. More...
 
virtual bool setMembers (const BasicIntList &groupMembers)
 Sets the list of group members. More...
 
virtual bool addMember (int member)
 Adds a WBDDC to the list of group members. More...
 
virtual bool removeMember (int member)
 Removes a WBDDC from the list of group members. More...
 
virtual int getIndex () const
 Gets the index number of the component. More...
 
virtual void setIndex (int index)
 Sets the index number of the component. More...
 
virtual RadioHandlergetParent () const
 Gets the "parent" radio handler for this component. More...
 
virtual void setParent (RadioHandler *parent)
 Sets the "parent" radio handler for this component. More...
 
virtual bool disable ()
 Disables this component. More...
 
virtual bool isEnabled () const
 Gets whether or not the component is enabled. More...
 
virtual std::string getName () const
 Gets the name of the configurable object. More...
 
virtual void setName (const std::string &name)
 Sets the name of the configurable object. More...
 
virtual ConfigurationDict getConfiguration () const
 Gets the configuration dictionary for this object. More...
 
virtual ConfigString getConfigurationValue (const std::string &key) const
 Gets a named configuration value as a string. More...
 
virtual bool getConfigurationValueAsBool (const std::string &key) const
 Gets a named configuration value as a Boolean. More...
 
virtual int getConfigurationValueAsInt (const std::string &key) const
 Gets a named configuration value as an integer value. More...
 
virtual unsigned int getConfigurationValueAsUInt (const std::string &key) const
 Gets a named configuration value as an unsigned integer value. More...
 
virtual double getConfigurationValueAsDbl (const std::string &key) const
 Gets a named configuration value as a double value. More...
 
virtual bool setConfigurationValue (const std::string &key, const std::string &value)
 Sets a named configuration value to a string. More...
 
virtual bool setConfigurationValueToBool (const std::string &key, const bool value)
 Sets a named configuration value to a Boolean. More...
 
virtual bool setConfigurationValueToInt (const std::string &key, const int value)
 Sets a named configuration value to an integer value. More...
 
virtual bool setConfigurationValueToUInt (const std::string &key, const unsigned int value)
 Sets a named configuration value to an unsigned integer value. More...
 
virtual bool setConfigurationValueToDbl (const std::string &key, const double value)
 Sets a named configuration value to a double value. More...
 
virtual void setDebugName (const std::string &debug_name)
 Sets the debug name for this object. More...
 
virtual void setDebugFile (FILE *debug_fp)
 Sets the debug file pointer for this object. More...
 
virtual void setDebugTimeFormat (const std::string &debug_timefmt)
 Sets the debug time format for this object. More...
 
virtual int debug (const char *format,...)
 Outputs debug information. More...
 
virtual const char * debugBool (bool x)
 Gets a debug output string for a Boolean value. More...
 
virtual bool isDebug () const
 Gets whether this object produces debug output. More...
 
virtual std::string getDebugName () const
 Gets the debug name for this object. More...
 
virtual std::string rawString (const std::string &data)
 Gets a "raw" string representation of a given data string. More...
 

Protected Member Functions

virtual void initConfigurationDict ()
 Initializes the configuration dictionary, defining the allowed keys.
 
virtual void updateConfigurationDict ()
 Updates the configuration dictionary from component settings.
 
virtual std::string getMembersString ()
 Gets the string representation of the member list. More...
 
virtual bool executeWbddcGroupEnableQuery (int index, bool &enabled)
 Executes the WBDDC group enable query command. More...
 
virtual bool executeWbddcGroupEnableCommand (int index, bool &enabled)
 Executes the WBDDC group enable command. More...
 
virtual bool executeWbddcGroupQuery (int index, BasicIntList &groupMembers)
 Executes the WBDDC group configuration query command. More...
 
virtual bool executeWbddcGroupCommand (int index, BasicIntList &groupMembers)
 Executes the WBDDC group configuration set command. More...
 
virtual bool executeWbddcGroupMemberQuery (int index, int groupMember, bool &isMember)
 Executes the WBDDC group member query command. More...
 
virtual bool executeWbddcGroupMemberCommand (int index, int groupMember, bool &isMember)
 Executes the WBDDC group member set command. More...
 
virtual ConfigurationDict normalizedConfigurationDict (const ConfigurationDict &cfg)
 Normalizes an incoming configuration dictionary. More...
 
virtual std::string normalizedBool (const std::string &val)
 Normalizes a Boolean string value. More...
 
virtual void dumpConfiguration ()
 Dumps this object's configuration dictionary to debug output.
 

Detailed Description

WBDDC group component class for the NDR308.

Configuration dictionary elements:

  • "enable": Whether or not this DDC group is enabled [Boolean/integer/string]
  • "members": Comma-separated list of WBDDCs in this group [string]

Definition at line 45 of file WbddcGroupComponent.h.

Constructor & Destructor Documentation

◆ WbddcGroupComponent() [1/2]

WbddcGroupComponent ( int  index = 1,
::LibCyberRadio::Driver::RadioHandler parent = NULL,
bool  debug = false 
)

Constructs a WbddcGroupComponent object.

Parameters
indexThe index number of this component.
parentA pointer to the RadioHandler object that "owns" this component.
debugWhether the component supports debug output.

Definition at line 24 of file WbddcGroupComponent.cpp.

◆ WbddcGroupComponent() [2/2]

Copies a WbddcGroupComponent object.

Parameters
otherThe WbddcGroupComponent object to copy.

Definition at line 43 of file WbddcGroupComponent.cpp.

Member Function Documentation

◆ addMember()

bool addMember ( int  member)
virtualinherited

Adds a WBDDC to the list of group members.

Parameters
memberWBDDC to add.
Returns
True if successful, false otherwise.

Definition at line 158 of file WbddcGroupComponent.cpp.

◆ debug()

int debug ( const char *  format,
  ... 
)
virtualinherited

Outputs debug information.

This method follows the same semantics as printf(). Output is preceded by a timestamp and the name of the object, if provided.

Parameters
formatThe printf()-style format string.
...Comma-separated list of arguments to print. Note that these need to be arguments that can be supported natively through printf().
Returns
The number of characters outputted.

Definition at line 95 of file Debuggable.cpp.

◆ debugBool()

const char * debugBool ( bool  x)
virtualinherited

Gets a debug output string for a Boolean value.

Parameters
xBoolean value
Returns
A constant string, either "true" or "false".

Definition at line 126 of file Debuggable.cpp.

◆ disable()

bool disable ( )
virtualinherited

Disables this component.

Returns
True if successful, false otherwise.

Definition at line 76 of file RadioComponent.cpp.

◆ enable()

bool enable ( bool  enabled = true)
virtualinherited

Enables this component.

Parameters
enabledWhether or not this component should be enabled.
Returns
True if successful, false otherwise.

Reimplemented from RadioComponent.

Definition at line 59 of file WbddcGroupComponent.cpp.

◆ executeWbddcGroupCommand()

bool executeWbddcGroupCommand ( int  index,
BasicIntList groupMembers 
)
protectedvirtualinherited

Executes the WBDDC group configuration set command.

Parameters
indexWBDDC group index.
groupMembersList of WBDDC group members.
Returns
True if the command succeeded, false otherwise.

Definition at line 311 of file WbddcGroupComponent.cpp.

◆ executeWbddcGroupEnableCommand()

bool executeWbddcGroupEnableCommand ( int  index,
bool &  enabled 
)
protectedvirtualinherited

Executes the WBDDC group enable command.

Parameters
indexWBDDC group index.
enabledWhether or not this group is enabled.
Returns
True if the command succeeded, false otherwise.

Definition at line 263 of file WbddcGroupComponent.cpp.

◆ executeWbddcGroupEnableQuery()

bool executeWbddcGroupEnableQuery ( int  index,
bool &  enabled 
)
protectedvirtualinherited

Executes the WBDDC group enable query command.

Note
The return value from this method only indicates if the command succeeded or failed. This method uses reference parameters to return the results of the query.
Parameters
indexWBDDC group index.
enabledWhether or not this group is enabled [output].
Returns
True if the command succeeded, false otherwise.

Reimplemented in WbddcGroupComponent.

Definition at line 236 of file WbddcGroupComponent.cpp.

◆ executeWbddcGroupMemberCommand()

bool executeWbddcGroupMemberCommand ( int  index,
int  groupMember,
bool &  isMember 
)
protectedvirtualinherited

Executes the WBDDC group member set command.

Parameters
indexWBDDC group index.
groupMemberGroup member index.
isMemberTrue if the WBDDC is a member of the group.
Returns
True if the command succeeded, false otherwise.

Definition at line 362 of file WbddcGroupComponent.cpp.

◆ executeWbddcGroupMemberQuery()

bool executeWbddcGroupMemberQuery ( int  index,
int  groupMember,
bool &  isMember 
)
protectedvirtualinherited

Executes the WBDDC group member query command.

Note
The return value from this method only indicates if the command succeeded or failed. This method uses reference parameters to return the results of the query.
Parameters
indexWBDDC group index.
groupMemberGroup member index.
isMemberTrue if the WBDDC is a member of the group [output].
Returns
True if the command succeeded, false otherwise.

Reimplemented in WbddcGroupComponent.

Definition at line 330 of file WbddcGroupComponent.cpp.

◆ executeWbddcGroupQuery()

bool executeWbddcGroupQuery ( int  index,
BasicIntList groupMembers 
)
protectedvirtualinherited

Executes the WBDDC group configuration query command.

Note
The return value from this method only indicates if the command succeeded or failed. This method uses reference parameters to return the results of the query.
Parameters
indexWBDDC group index.
groupMembersList of WBDDC group members [output].
Returns
True if the command succeeded, false otherwise.

Definition at line 286 of file WbddcGroupComponent.cpp.

◆ getConfiguration()

ConfigurationDict getConfiguration ( ) const
virtualinherited

Gets the configuration dictionary for this object.

Returns
The configuration dictionary.

Definition at line 93 of file Configurable.cpp.

◆ getConfigurationValue()

ConfigString getConfigurationValue ( const std::string &  key) const
virtualinherited

Gets a named configuration value as a string.

Parameters
keyThe key string in the configuration dictionary.
Returns
The value represented by this key. Returns an empty string if the key is not in the configuration dictionary.

Definition at line 98 of file Configurable.cpp.

◆ getConfigurationValueAsBool()

bool getConfigurationValueAsBool ( const std::string &  key) const
virtualinherited

Gets a named configuration value as a Boolean.

Parameters
keyThe key string in the configuration dictionary.
Returns
The Boolean value represented by this key. Returns false if the key is not in the configuration dictionary, or cannot be represented as a Boolean.

Definition at line 109 of file Configurable.cpp.

◆ getConfigurationValueAsDbl()

double getConfigurationValueAsDbl ( const std::string &  key) const
virtualinherited

Gets a named configuration value as a double value.

Parameters
keyThe key string in the configuration dictionary.
Returns
The double value represented by this key. Returns 0.0 if the key is not in the configuration dictionary, or if the value cannot be represented as a double.

Definition at line 148 of file Configurable.cpp.

◆ getConfigurationValueAsInt()

int getConfigurationValueAsInt ( const std::string &  key) const
virtualinherited

Gets a named configuration value as an integer value.

Parameters
keyThe key string in the configuration dictionary.
Returns
The integer value represented by this key. Returns 0 if the key is not in the configuration dictionary, or if the value cannot be represented as an integer.

Definition at line 122 of file Configurable.cpp.

◆ getConfigurationValueAsUInt()

unsigned int getConfigurationValueAsUInt ( const std::string &  key) const
virtualinherited

Gets a named configuration value as an unsigned integer value.

Parameters
keyThe key string in the configuration dictionary.
Returns
The integer value represented by this key. Returns 0 if the key is not in the configuration dictionary, or if the value cannot be represented as an integer.

Definition at line 135 of file Configurable.cpp.

◆ getDebugName()

std::string getDebugName ( ) const
virtualinherited

Gets the debug name for this object.

Returns
The debug name, as a string.

Definition at line 138 of file Debuggable.cpp.

◆ getIndex()

int getIndex ( ) const
virtualinherited

Gets the index number of the component.

Returns
The index number, as an integer.

Definition at line 56 of file RadioComponent.cpp.

◆ getMembers()

BasicIntList getMembers ( ) const
virtualinherited

Gets the list of group members.

Returns
List of WBDDC group members.

Definition at line 134 of file WbddcGroupComponent.cpp.

◆ getMembersString()

std::string getMembersString ( )
protectedvirtualinherited

Gets the string representation of the member list.

Returns
A comma-separated list of members [string].

Definition at line 223 of file WbddcGroupComponent.cpp.

◆ getName()

std::string getName ( ) const
virtualinherited

Gets the name of the configurable object.

Returns
The name, as a string.

Definition at line 83 of file Configurable.cpp.

◆ getParent()

RadioHandler * getParent ( ) const
virtualinherited

Gets the "parent" radio handler for this component.

Returns
A pointer to the RadioHandler object.

Definition at line 66 of file RadioComponent.cpp.

◆ isDebug()

bool isDebug ( ) const
virtualinherited

Gets whether this object produces debug output.

Returns
True if producing debug, false otherwise.

Definition at line 133 of file Debuggable.cpp.

◆ isEnabled()

bool isEnabled ( ) const
virtualinherited

Gets whether or not the component is enabled.

Returns
True if enabled, false otherwise.

Definition at line 88 of file RadioComponent.cpp.

◆ normalizedBool()

std::string normalizedBool ( const std::string &  val)
protectedvirtualinherited

Normalizes a Boolean string value.

Returns
The "normalized" string value.

Definition at line 241 of file Configurable.cpp.

◆ normalizedConfigurationDict()

ConfigurationDict normalizedConfigurationDict ( const ConfigurationDict cfg)
protectedvirtualinherited

Normalizes an incoming configuration dictionary.

"Normalizing" a configuration dictionary replaces certain strings representing Boolean values ("yes", "on", "true", "no", "off", and "false", case is irrelevant) with standard values ("0" and "1").

Note
The default behavior of this method normalizes every string in the configuration dictionary. Override this method if certain configuration items need to be protected from normalization.
Returns
The new configuration dictionary.

Definition at line 232 of file Configurable.cpp.

◆ operator=()

WbddcGroupComponent & operator= ( const WbddcGroupComponent other)
virtual

Assignment operator for WbddcGroupComponent objects.

Parameters
otherThe WbddcComponent object to copy.
Returns
A reference to the assigned object.

Definition at line 48 of file WbddcGroupComponent.cpp.

◆ rawString()

std::string rawString ( const std::string &  data)
virtualinherited

Gets a "raw" string representation of a given data string.

"Raw" string representations mimic Python string representations. Whitespace characters are denoted by backslash representations ("\\r", "\\n", "\\t", "\\v", "\\f"), while other non-printable characters are represented with hex representation ("\\x00", etc.)

Parameters
dataData string
Returns
The data's "raw" representation.

Definition at line 143 of file Debuggable.cpp.

◆ removeMember()

bool removeMember ( int  member)
virtualinherited

Removes a WBDDC from the list of group members.

Parameters
memberWBDDC to remove.
Returns
True if successful, false otherwise.

Definition at line 181 of file WbddcGroupComponent.cpp.

◆ setConfiguration()

bool setConfiguration ( ConfigurationDict cfg)
virtualinherited

Sets the configuration dictionary for this component.

Parameters
cfgThe component configuration dictionary.
Returns
True if successful, false otherwise.

Reimplemented from RadioComponent.

Definition at line 75 of file WbddcGroupComponent.cpp.

◆ setConfigurationValue()

bool setConfigurationValue ( const std::string &  key,
const std::string &  value 
)
virtualinherited

Sets a named configuration value to a string.

Note
The default behavior of this method is to normalize the incoming value.
Parameters
keyThe key string in the configuration dictionary.
valueThe new value.
Returns
True if the key was set, false otherwise. Returns false if the key is not in the configuration dictionary.

Definition at line 177 of file Configurable.cpp.

◆ setConfigurationValueToBool()

bool setConfigurationValueToBool ( const std::string &  key,
const bool  value 
)
virtualinherited

Sets a named configuration value to a Boolean.

Parameters
keyThe key string in the configuration dictionary.
valueThe new value.
Returns
True if the key was set, false otherwise. Returns false if the key is not in the configuration dictionary.

Definition at line 193 of file Configurable.cpp.

◆ setConfigurationValueToDbl()

bool setConfigurationValueToDbl ( const std::string &  key,
const double  value 
)
virtualinherited

Sets a named configuration value to a double value.

Parameters
keyThe key string in the configuration dictionary.
valueThe new value.
Returns
True if the key was set, false otherwise. Returns false if the key is not in the configuration dictionary.

Definition at line 211 of file Configurable.cpp.

◆ setConfigurationValueToInt()

bool setConfigurationValueToInt ( const std::string &  key,
const int  value 
)
virtualinherited

Sets a named configuration value to an integer value.

Parameters
keyThe key string in the configuration dictionary.
valueThe new value.
Returns
True if the key was set, false otherwise. Returns false if the key is not in the configuration dictionary.

Definition at line 199 of file Configurable.cpp.

◆ setConfigurationValueToUInt()

bool setConfigurationValueToUInt ( const std::string &  key,
const unsigned int  value 
)
virtualinherited

Sets a named configuration value to an unsigned integer value.

Parameters
keyThe key string in the configuration dictionary.
valueThe new value.
Returns
True if the key was set, false otherwise. Returns false if the key is not in the configuration dictionary.

Definition at line 205 of file Configurable.cpp.

◆ setDebugFile()

void setDebugFile ( FILE *  debug_fp)
virtualinherited

Sets the debug file pointer for this object.

Parameters
debug_fpFile to send debug output to.

Definition at line 81 of file Debuggable.cpp.

◆ setDebugName()

void setDebugName ( const std::string &  debug_name)
virtualinherited

Sets the debug name for this object.

Use this method to set unique debug names for objects of the same class for easy differentiation.

Parameters
debug_nameName for identifying this object in debug output.

Definition at line 74 of file Debuggable.cpp.

◆ setDebugTimeFormat()

void setDebugTimeFormat ( const std::string &  debug_timefmt)
virtualinherited

Sets the debug time format for this object.

Parameters
debug_timefmtFormat string for displaying timestamp, as compatible with strftime(). If this is an empty string, don't display a timestamp.

Definition at line 88 of file Debuggable.cpp.

◆ setIndex()

void setIndex ( int  index)
virtualinherited

Sets the index number of the component.

Parameters
indexThe index number.

Definition at line 61 of file RadioComponent.cpp.

◆ setMembers()

bool setMembers ( const BasicIntList groupMembers)
virtualinherited

Sets the list of group members.

Parameters
groupMembersList of WBDDC group members.
Returns
True if successful, false otherwise.

Definition at line 139 of file WbddcGroupComponent.cpp.

◆ setName()

void setName ( const std::string &  name)
virtualinherited

Sets the name of the configurable object.

Parameters
nameThe new name.

Definition at line 88 of file Configurable.cpp.

◆ setParent()

void setParent ( RadioHandler parent)
virtualinherited

Sets the "parent" radio handler for this component.

Parameters
parentA pointer to the RadioHandler object.

Definition at line 71 of file RadioComponent.cpp.


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