#include <acsexmplFridgeImpl.h>
Public Member Functions | |
FridgeControl (const ACE_CString &name, maci::ContainerServices *containerServices) | |
virtual | ~FridgeControl () |
virtual void | cleanUp () |
void | updateTemperature () |
virtual void | on () |
virtual void | off () |
virtual void | open () |
virtual void | close () |
virtual ACS::RWdouble_ptr | refTemperature () |
virtual FRIDGE::ROOnOffStates_ptr | powerStatus () |
virtual FRIDGE::ROOpClStates_ptr | doorStatus () |
virtual ACS::ROdouble_ptr | currTemperature () |
Private Member Functions | |
virtual void | loadData () |
void | operator= (const FridgeControl &) |
Private Attributes | |
baci::SmartPropertyPointer < baci::RWdouble > | m_refTemperature_sp |
baci::SmartPropertyPointer < ROEnumImpl< ACS_ENUM_T(FRIDGE::OnOffStates), POA_FRIDGE::ROOnOffStates > > | m_powerStatus_sp |
baci::SmartPropertyPointer < ROEnumImpl< ACS_ENUM_T(FRIDGE::OpClStates), POA_FRIDGE::ROOpClStates > > | m_doorStatus_sp |
baci::SmartPropertyPointer < baci::ROdouble > | m_currTemperature_sp |
FridgeThread * | m_controlLoop_p |
nc::SimpleSupplier * | m_FridgeSupplier_p |
FridgeControl shows BACI threads as well as a notification channel supplier. The class FridgeControl simulates the behaviour of a fridge. It provides four synchronous methods: on, off, open, and close. It also provides the properties: refTemperature, powerStatus, doorStatus, and currTemperature. powerStatus and doorStatus are both enums. Finally, FridgeControl is also a Supplier for the "fridge" notification channel.
FridgeControl::FridgeControl | ( | const ACE_CString & | name, | |
maci::ContainerServices * | containerServices | |||
) |
Constructor
poa | Poa which will activate this and also all other components. | |
name | component's name. This is also the name that will be used to find the configuration data for the component in the Configuration Database. |