ACSSampImpl − |
#include <acssampImpl.h> Inherits baci::CharacteristicComponentImpl. |
Public Member Functions |
ACSSampImpl (const ACE_CString &name, maci::ContainerServices *containerServices) |
virtual ~ACSSampImpl () |
virtual acssamp::SampObj_ptr initSampObj (const char *name, const char *property, ACS::TimeInterval frequency, ACS::TimeInterval reportRate) |
virtual void addComponenttoList (CORBA::Object_ptr component_ref) |
virtual void removeComponentfromList (CORBA::Object_ptr component_ref) |
Private Attributes |
std::list< CORBA::Object_ptr > component_list |
ACE_Recursive_Thread_Mutex m_samplingListMutex |
This class implements basically one method (initSampObj), which allows to create dynamically the so called ’sampling objects’. Each sampling object is connected to a specific property (e.g. LAMP1:brightness) and allows to sample its values with a user defined sampling frequency. Moreover the sampled value are not delivered immediately to the NC, but are buffered for an user-defined amount of time (in order to not waste network bandwidth). |
ACSSampImpl::ACSSampImpl (const ACE_CString & name, maci::ContainerServices * containerServices) Constructor |
Parameters: |
poa Poa which will activate this and also all
other Components. |
virtual ACSSampImpl::~ACSSampImpl () [virtual] Destructor |
virtual void ACSSampImpl::addComponenttoList (CORBA::Object_ptr component_ref) [virtual] Internal method used to add all newly created sampling objects to an internal list (containing a reference to the active objects). If objects are not correctly destroyed, this list is used by the destructor of the factory (this class) to clean-up everything in a consistent way. |
Parameters: |
component_ref pointer to a CORBA object |
Returns: |
void |
virtual acssamp::SampObj_ptr ACSSampImpl::initSampObj (const char * name, const char * property, ACS::TimeInterval frequency, ACS::TimeInterval reportRate) [virtual] initSampObj Initialize and returns a reference to the newly created sampling object. |
Parameters: |
name name of the component, which property is to
be sampled (e.g.LAMP1 ) |
Exceptions: |
ACSErrTypeCommon::OutOfBoundsEx |
Returns: |
SampObj_ptr pointer to the newly created sampling object. It allows to control the actual sampling (start/stop/pause etc.) |
virtual void ACSSampImpl::removeComponentfromList (CORBA::Object_ptr component_ref) [virtual] Internal method used to remove a sampling object from the internal list of the active (instantiated) objects. This method is called automatically, whenever a previously created object is destroyed. |
Parameters: |
component_ref pointer to a CORBA object |
Returns: |
void |
std::list<CORBA::Object_ptr> ACSSampImpl::component_list [private] component_list is an internal list of the active sampling objects. |
ACE_Recursive_Thread_Mutex ACSSampImpl::m_samplingListMutex [private] |
Generated automatically by Doxygen for ACS-2015.2 C++ API from the source code. |