Public Member Functions | Protected Member Functions | Private Attributes

RWEnumImpl< ACS_ENUM_C > Class Template Reference

#include <enumpropRWImpl.h>

Inheritance diagram for RWEnumImpl< ACS_ENUM_C >:
Inheritance graph
[legend]
Collaboration diagram for RWEnumImpl< ACS_ENUM_C >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 RWEnumImpl (const ACE_CString &name, baci::BACIComponent *cob, DevIO< T > *devIO=0, bool flagdeldevIO=false)
virtual ~RWEnumImpl ()
virtual int initialization ()
CORBA::Object_ptr getCORBAReference () const
baci::BACIPropertygetProperty () const
DevIO< T > * getDevIO () const
virtual void destroy ()
virtual baci::ActionRequest getValueAction (baci::BACIComponent *cob, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value, Completion &completion, CBDescOut &descOut)
virtual baci::ActionRequest setValueAction (baci::BACIComponent *cob, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value, Completion &completion, CBDescOut &descOut)
virtual baci::ActionRequest invokeAction (int function, baci::BACIComponent *cob, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value, Completion &completion, CBDescOut &descOut)
virtual void getValue (baci::BACIProperty *property, baci::BACIValue *value, Completion &completion, CBDescOut &descOut)
virtual void setValue (baci::BACIProperty *property, baci::BACIValue *value, Completion &completion, CBDescOut &descOut)
virtual char * name ()
virtual char * characteristic_component_name ()
virtual char * description ()
virtual char * format ()
virtual char * units ()
virtual ACS::pattern resolution ()
virtual CORBA::Boolean initialize_devio ()
virtual ACS::TimeInterval default_timer_trigger ()
virtual ACS::TimeInterval min_timer_trigger ()
virtual T default_value ()
virtual T get_sync (ACSErr::Completion_out c)
virtual void get_async (CBpattern *cb, const ACS::CBDescIn &desc)
virtual CORBA::Long get_history (CORBA::Long n_last_values, TSeq_out vs, ACS::TimeSeq_out ts)
virtual ACS::Monitorpattern * create_monitor (CBpattern *cb, const ACS::CBDescIn &desc)
virtual ACS::Monitor * create_postponed_monitor (ACS::Time start_time, CBpattern *cb, const ACS::CBDescIn &desc)
virtual ACS::stringSeq * statesDescription ()
virtual ACS::ConditionSeq * condition ()
virtual TSeq * allStates ()
virtual ACSErr::Completionset_sync (T value)
virtual void set_async (T value, ACS::CBvoid_ptr cb, const ACS::CBDescIn &desc)
virtual void set_nonblocking (T value)

Protected Member Functions

virtual bool readCharacteristics ()
void addValueToHistory (ACS::Time time, ACS::pattern value)

Private Attributes

state
int initialization_m
 Initialization status.
bool destroyed_m
 Destroy status.
CORBA::Object_ptr reference_mp
 CORBA reference.
baci::BACIPropertyproperty_mp
 BACI property.
historyValue_m [HISTORY_SIZE]
 history value buffer
ACS::Time historyTime_m [HISTORY_SIZE]
 history time buffer
int historyStart_m
 history start pointer
bool historyTurnaround_m
 history end pointer
ACE_CString m_description
ACE_CString format_m
ACE_CString units_m
ACS::pattern m_resolution
bool initializeDevIO_m
defaultValue_m
ACS::TimeInterval defaultTimerTrig_m
ACS::TimeInterval minTimerTrig_m
ACS::stringSeq m_statesDescription
ACS::ConditionSeq m_condition
DevIO< T > * devIO_mp
bool deldevIO_m
m_value
int m_enumLength

Detailed Description

template<ACS_ENUM_C>
class RWEnumImpl< ACS_ENUM_C >

Template implemantation of enum RW property


Constructor & Destructor Documentation

template<ACS_ENUM_C >
RWEnumImpl< ACS_ENUM_C >::RWEnumImpl ( const ACE_CString &  name,
baci::BACIComponent cob,
DevIO< T > *  devIO = 0,
bool  flagdeldevIO = false 
)

Constuctor

Parameters:
name property name (e.q. AMSMount:decliantion)
cob parent of the property
template<ACS_ENUM_C >
virtual RWEnumImpl< ACS_ENUM_C >::~RWEnumImpl (  )  [virtual]

Destructor


Member Function Documentation

template<ACS_ENUM_C >
void RWEnumImpl< ACS_ENUM_C >::addValueToHistory ( ACS::Time  time,
ACS::pattern  value 
) [protected]
template<ACS_ENUM_C >
virtual TSeq* RWEnumImpl< ACS_ENUM_C >::allStates (  )  [virtual]
template<ACS_ENUM_C >
virtual char* RWEnumImpl< ACS_ENUM_C >::characteristic_component_name (  )  [virtual]
template<ACS_ENUM_C >
virtual ACS::ConditionSeq* RWEnumImpl< ACS_ENUM_C >::condition (  )  [virtual]
template<ACS_ENUM_C >
virtual ACS::Monitorpattern* RWEnumImpl< ACS_ENUM_C >::create_monitor ( CBpattern cb,
const ACS::CBDescIn desc 
) [virtual]
template<ACS_ENUM_C >
virtual ACS::Monitor* RWEnumImpl< ACS_ENUM_C >::create_postponed_monitor ( ACS::Time  start_time,
CBpattern cb,
const ACS::CBDescIn desc 
) [virtual]
template<ACS_ENUM_C >
virtual ACS::TimeInterval RWEnumImpl< ACS_ENUM_C >::default_timer_trigger (  )  [virtual]
template<ACS_ENUM_C >
virtual T RWEnumImpl< ACS_ENUM_C >::default_value (  )  [virtual]
template<ACS_ENUM_C >
virtual char* RWEnumImpl< ACS_ENUM_C >::description (  )  [virtual]
template<ACS_ENUM_C >
virtual void RWEnumImpl< ACS_ENUM_C >::destroy (  )  [virtual]

Destructor method This method must be called to destroy property, POA will call destructor (direct call of destructor will most likely cause code to crash)

template<ACS_ENUM_C >
virtual char* RWEnumImpl< ACS_ENUM_C >::format (  )  [virtual]
template<ACS_ENUM_C >
virtual void RWEnumImpl< ACS_ENUM_C >::get_async ( CBpattern cb,
const ACS::CBDescIn desc 
) [virtual]
template<ACS_ENUM_C >
virtual CORBA::Long RWEnumImpl< ACS_ENUM_C >::get_history ( CORBA::Long  n_last_values,
TSeq_out  vs,
ACS::TimeSeq_out  ts 
) [virtual]
template<ACS_ENUM_C >
virtual T RWEnumImpl< ACS_ENUM_C >::get_sync ( ACSErr::Completion_out  c  )  [virtual]
template<ACS_ENUM_C >
CORBA::Object_ptr RWEnumImpl< ACS_ENUM_C >::getCORBAReference (  )  const [inline]

Get CORBA referece of this object

Returns:
reference to CORBa object
template<ACS_ENUM_C >
DevIO<T>* RWEnumImpl< ACS_ENUM_C >::getDevIO (  )  const [inline]

DevIO accessor

template<ACS_ENUM_C >
baci::BACIProperty* RWEnumImpl< ACS_ENUM_C >::getProperty (  )  const [inline]

BACI Monitor instance accessor

template<ACS_ENUM_C >
virtual void RWEnumImpl< ACS_ENUM_C >::getValue ( baci::BACIProperty property,
baci::BACIValue value,
Completion completion,
CBDescOut descOut 
) [virtual]

Get value method (value accessor)

Parameters:
property property which requested value
value value to be returned
completion error handling structure
descOut callback descriptor
template<ACS_ENUM_C >
virtual baci::ActionRequest RWEnumImpl< ACS_ENUM_C >::getValueAction ( baci::BACIComponent cob,
const int &  callbackID,
const CBDescIn descIn,
baci::BACIValue value,
Completion completion,
CBDescOut descOut 
) [virtual]
template<ACS_ENUM_C >
virtual int RWEnumImpl< ACS_ENUM_C >::initialization (  )  [inline, virtual]

Property construction status method After contruction of a property, this method will be called to check if construction was successful; if not, monitor will be destroyed by parent

Returns:
0 on success or any other value (value can indicate cause of faulire) on faulure
template<ACS_ENUM_C >
virtual CORBA::Boolean RWEnumImpl< ACS_ENUM_C >::initialize_devio (  )  [virtual]
template<ACS_ENUM_C >
virtual baci::ActionRequest RWEnumImpl< ACS_ENUM_C >::invokeAction ( int  function,
baci::BACIComponent cob,
const int &  callbackID,
const CBDescIn descIn,
baci::BACIValue value,
Completion completion,
CBDescOut descOut 
) [virtual]

Action dispatcher function

Parameters:
function action funtion to be invoked
cob owner of the action
callbackID id of the callback to be notified
descIn callback descriptor (passed by client)
value action data (e.g. value to be set)
completion error handing structure
descOut callback descriptor which will be passed to client
Returns:
request to be performed by BACI
  • reqNone - do nothing (action will be kept in queue)
  • reqInvokeWorking - invoke <type>Callback::working
  • reqInvokeDone - invoke <type>Callback::done and destroy callback
  • reqDestroy - destroy callback (callback should has been called already by function)

Implements baci::ActionImplementator.

template<ACS_ENUM_C >
virtual ACS::TimeInterval RWEnumImpl< ACS_ENUM_C >::min_timer_trigger (  )  [virtual]
template<ACS_ENUM_C >
virtual char* RWEnumImpl< ACS_ENUM_C >::name (  )  [virtual]
template<ACS_ENUM_C >
virtual bool RWEnumImpl< ACS_ENUM_C >::readCharacteristics (  )  [protected, virtual]

Read characteristics from CDB

Parameters:
propertyName name of the property whose characteristics to read
Returns:
true on success, false on failure
template<ACS_ENUM_C >
virtual ACS::pattern RWEnumImpl< ACS_ENUM_C >::resolution (  )  [virtual]
template<ACS_ENUM_C >
virtual void RWEnumImpl< ACS_ENUM_C >::set_async ( value,
ACS::CBvoid_ptr  cb,
const ACS::CBDescIn desc 
) [virtual]
template<ACS_ENUM_C >
virtual void RWEnumImpl< ACS_ENUM_C >::set_nonblocking ( value  )  [virtual]
template<ACS_ENUM_C >
virtual ACSErr::Completion* RWEnumImpl< ACS_ENUM_C >::set_sync ( value  )  [virtual]
template<ACS_ENUM_C >
virtual void RWEnumImpl< ACS_ENUM_C >::setValue ( baci::BACIProperty property,
baci::BACIValue value,
Completion completion,
CBDescOut descOut 
) [virtual]

Set value method (value mutator) To make RW property simetric to RO property

Parameters:
property property which requested value
value value to be returned
completion error handling structure
descOut callback descriptor
template<ACS_ENUM_C >
virtual baci::ActionRequest RWEnumImpl< ACS_ENUM_C >::setValueAction ( baci::BACIComponent cob,
const int &  callbackID,
const CBDescIn descIn,
baci::BACIValue value,
Completion completion,
CBDescOut descOut 
) [virtual]
template<ACS_ENUM_C >
virtual ACS::stringSeq* RWEnumImpl< ACS_ENUM_C >::statesDescription (  )  [virtual]
template<ACS_ENUM_C >
virtual char* RWEnumImpl< ACS_ENUM_C >::units (  )  [virtual]

Member Data Documentation

template<ACS_ENUM_C >
ACS::TimeInterval RWEnumImpl< ACS_ENUM_C >::defaultTimerTrig_m [private]
template<ACS_ENUM_C >
T RWEnumImpl< ACS_ENUM_C >::defaultValue_m [private]
template<ACS_ENUM_C >
bool RWEnumImpl< ACS_ENUM_C >::deldevIO_m [private]
template<ACS_ENUM_C >
bool RWEnumImpl< ACS_ENUM_C >::destroyed_m [private]

Destroy status.

template<ACS_ENUM_C >
DevIO<T>* RWEnumImpl< ACS_ENUM_C >::devIO_mp [private]
template<ACS_ENUM_C >
ACE_CString RWEnumImpl< ACS_ENUM_C >::format_m [private]
template<ACS_ENUM_C >
int RWEnumImpl< ACS_ENUM_C >::historyStart_m [private]

history start pointer

template<ACS_ENUM_C >
ACS::Time RWEnumImpl< ACS_ENUM_C >::historyTime_m[HISTORY_SIZE] [private]

history time buffer

template<ACS_ENUM_C >
bool RWEnumImpl< ACS_ENUM_C >::historyTurnaround_m [private]

history end pointer

template<ACS_ENUM_C >
T RWEnumImpl< ACS_ENUM_C >::historyValue_m[HISTORY_SIZE] [private]

history value buffer

template<ACS_ENUM_C >
int RWEnumImpl< ACS_ENUM_C >::initialization_m [private]

Initialization status.

Definition of ActionFunction (member function of RW)

Referenced by RWEnumImpl< ACS_ENUM_T(ENUMPROP_TEST::States), POA_ENUMPROP_TEST::RWStates >::initialization().

template<ACS_ENUM_C >
bool RWEnumImpl< ACS_ENUM_C >::initializeDevIO_m [private]
template<ACS_ENUM_C >
ACS::ConditionSeq RWEnumImpl< ACS_ENUM_C >::m_condition [private]
template<ACS_ENUM_C >
ACE_CString RWEnumImpl< ACS_ENUM_C >::m_description [private]

Characteristics

template<ACS_ENUM_C >
int RWEnumImpl< ACS_ENUM_C >::m_enumLength [private]
template<ACS_ENUM_C >
ACS::pattern RWEnumImpl< ACS_ENUM_C >::m_resolution [private]
template<ACS_ENUM_C >
ACS::stringSeq RWEnumImpl< ACS_ENUM_C >::m_statesDescription [private]
template<ACS_ENUM_C >
T RWEnumImpl< ACS_ENUM_C >::m_value [private]
template<ACS_ENUM_C >
ACS::TimeInterval RWEnumImpl< ACS_ENUM_C >::minTimerTrig_m [private]
template<ACS_ENUM_C >
baci::BACIProperty* RWEnumImpl< ACS_ENUM_C >::property_mp [private]
template<ACS_ENUM_C >
CORBA::Object_ptr RWEnumImpl< ACS_ENUM_C >::reference_mp [private]
template<ACS_ENUM_C >
T RWEnumImpl< ACS_ENUM_C >::state [private]
template<ACS_ENUM_C >
ACE_CString RWEnumImpl< ACS_ENUM_C >::units_m [private]

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