00001
#ifndef acsexmplRampedPowerSupplyImpl_h
00002
#define acsexmplRampedPowerSupplyImpl_h
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
#ifndef __cplusplus
00037
#error This is a C++ include file and cannot be used from plain C
00038
#endif
00039
00040
#include <acsexmplExport.h>
00041
00043
#include "acsexmplPowerSupplyImpl.h"
00044
00046
#include <acsexmplRampedPowerSupplyS.h>
00047
00049
#include <baciROlong.h>
00050
#include <baciRWstring.h>
00051
00053
#include "acsexmplLongDevIO.h"
00054
00056
#include <baciSmartPropertyPointer.h>
00057
00064
00069
00129 class acsexmpl_EXPORT RampedPowerSupply:
public PowerSupply,
00130
public virtual POA_RampedPS::RampedPowerSupply
00131 {
00132
public:
00138
RampedPowerSupply (
00139
const ACE_CString &name,
00140
maci::ContainerServices * containerServices);
00141
00145
~RampedPowerSupply();
00146
00150 const static int START_RAMPING=3;
00151 const static int STOP_RAMPING=4;
00152
00153
00174
virtual baci::ActionRequest
00175
invokeAction (
int function,
00176
baci::BACIComponent *component_p,
00177
const int &callbackID,
00178
const CBDescIn &descIn,
00179
baci::BACIValue *value_p,
00180
Completion &completion,
00181
CBDescOut &descOut);
00182
00205
virtual baci::ActionRequest
00206
startRampingAction (
baci::BACIComponent *component_p,
00207
const int &callbackID,
00208
const CBDescIn &descIn,
00209
baci::BACIValue *value_p,
00210
Completion &completion,
00211
CBDescOut &descOut);
00234
virtual baci::ActionRequest
00235
stopRampingAction (
baci::BACIComponent *component_p,
00236
const int &callbackID,
00237
const CBDescIn &descIn,
00238
baci::BACIValue *value_p,
00239
Completion &completion,
00240
CBDescOut &descOut);
00241
00242
00256
virtual void
00257
startRamping (CORBA::Long rampingSteps,
00258 ACS::CBvoid_ptr cb,
00259
const ACS::CBDescIn &desc);
00260
00274
virtual void
00275
stopRamping (ACS::CBvoid_ptr cb,
00276
const ACS::CBDescIn &desc);
00277
00286
virtual ACS::RWstring_ptr
00287
rampingStatus ();
00288
00297
virtual ACS::ROlong_ptr
00298
rampingStep ();
00299
00300
private:
00304 baci::SmartPropertyPointer<baci::ROlong> m_rampingStep_sp;
00305
00312 DevIO<CORBA::Long> *m_rampingStep_devio_p;
00313
00317 baci::SmartPropertyPointer<baci::RWstring> m_rampingStatus_sp;
00318
00322
void operator=(
const RampedPowerSupply&);
00323 };
00324
00325
00326
00327
#endif
00328
00329
00330