class HVchannel : public rtHVchannel, public dbHVinterface

Class that corresponds to a PHENIX HV channel

Inheritance:


Public Methods

static int getChannelNbFromName( const char * pcName )
Returns the channel number of the name of the channel (following the PHENIX convention)
virtual int getPeakCurrent(double& dPeakCurrent)
virtual function which is overloaded in the case of 1471 channels
virtual int getPeakTripCurrent(double& dPeakTripCurrent)
virtual function which is overloaded in the case of 1471 channels
virtual int getRampTripEnable(bool& bRTE)
virtual function which is overloaded in the case of 1471 channels
inline short getTripCount()
Returns the trip count of the module
virtual bool hasBulkSupply()
member function to find out whether this channel belongs to a module that is divided into bulk supplies
HVchannel( const char *Name, const char *Type, HVmodule *pMyModule, ooHandle( dbHVchannel) me )
Constructor in case we instatiate the object from the database (ooHandle dbHVchannel)
HVchannel( const char *Name, const char *Type, HVmodule *pMyModule = NULL )
Constructor for a named channel of a given type
short incTripCount()
Increments the trip count of the module
virtual bool is1471()
name member function to distinguish 1471 channels & the new properties they possess
virtual bool isBulkSupply()
name member function to distinguish 1469 bulk supplies from normal channels
short resetTripCount()
Sets the trip count of the module
virtual int setPeakTripCurrent(double dPeakTripCurrent)
virtual function which is overloaded in the case of 1471 channels
virtual int setRampTripEnable(bool bRTE)
virtual function which is overloaded in the case of 1471 channels
virtual ~HVchannel()
(virtual) Destructor [as it might be a 1469]

Public

Member functions for database access
virtual int storeReadback( const HVreadback &ReadbackToStore, struct tm *theTime = NULL )
to store a readback in the database
virtual int storeSetpoint( const HVsetpoint &SetpointToStore, struct tm *theTime = NULL )
to store a setpoint in the database

Inherited from rtHVchannel:

Public Methods

HVmodule* getModule()
pstring getName()
pstring getType()

Public

Reading values from the EPICS IOC record

virtual int getReadback( HVreadback &values )
to read back all important values
virtual int getSetpoint( HVsetpoint &values )
to read back all setpoints
int getCurrent( double& dCurrent )
Measured current [microAmp]
int getVoltage( double& dVoltage )
Measured voltage [Volt]
virtual int getDemandVoltage( double& dVoltage )
Demand voltage [Volt]
virtual int getRampUpRate( double& dVoltage )
Ramp up rate [Volt/sec]
virtual int getRampDownRate( double& dVoltage )
Ramp down rate [Volt/sec]
int getTripCurrent( double& dVoltage )
Trip Current in [microAmp]
int getEnabled( bool& bEnabled )
Returns true if the channel is enabled
int getChannelStatus( int& iStatus )
Returns the channel status as read from the hardware itself
virtual int getMeasuredVoltageDeadZone( double& dVoltage )
Measured Voltage dead zone [Volt]
int getMeasuredCurrentDeadZone( double& dCurrent )
Measured current dead zone [Volt]
int getHighVoltageLimit( double& dVoltage )
The (hardware) imposed high voltage limit (as given by the potentiometer)

Writing values into the EPICS IOC record

virtual int setSetpoint(HVsetpoint &values )
to set all important values
int Enable()
Enables the channel
int Disable()
Disables the channel
virtual int setDemandVoltage( double dVoltage )
Demand voltage [Volt]
virtual int setRampUpRate( double dRampRate )
Ramp up rate [Volt/sec]
virtual int setRampDownRate( double dRampRate )
Ramp down rate [Volt/sec]
int setTripCurrent( double dTripCurrent )
Trip Current in [microAmp]
virtual int setMeasuredVoltageDeadZone( double dVoltage )
Measured Voltage dead zone [Volt]
int setMeasuredCurrentDeadZone( double dVoltage )
Measured current dead zone [Volt]

Inherited from GenEpicsDevice:

Public

Reading values from EPICS records in the IOC

long getByteValue( char* pcName, char& aChar )
Reads a byte
long getStringValue( char* pcName, char *aString )
Reads a string
long getShortValue( char* pcName, short& aShort )
Reads a short
long getLongValue( char* pcName, long& aLong )
Reads a long
long getFloatValue( char* pcName, float& aFloat )
Reads a float
long getDoubleValue( char* pcName, double& aDouble )
Reads a double

Writing values into EPICS records in the IOC

static long putByteValue( char* pcName, char aChar )
Writes a byte
static long putStringValue( char* pcName, char *aString )
Writes a string
static long putShortValue( char* pcName, short aShort )
Writes a short
static long putLongValue( char* pcName, long aLong )
Writes a long
static long putFloatValue( char* pcName, float aFloat )
Writes a float
static long putDoubleValue( char* pcName, double aDouble )
Writes a double

Inherited from dbHVinterface:

Public Methods

static void selectDB( dbHV *pHVDB )

Protected Fields

static dbHV* pDB

Documentation

Class that corresponds to a PHENIX HV channel. This class is used to access a PHENIX HV channels in real time as well as in the databse, i.e. the individual HV channels that are controlled by EPICS or stored in objectivity. Therefore HVchannel inherits from two interfaces: 1. from the object rtHVchannel that allows to access HV channels in real time, 2. from the object dbHVinterface from which it inherits a pointer to the database. This pointer is used to resolve the ooHandle( dbHVchannel ) which is the handle to the persistent object.

Note: Currently we only support 1461Nmod104 modules and will have to add the others later.

MODIFICATIONS:
Added support for 1469s through inheritance CW Jan 29, 1999

HVchannel( const char *Name, const char *Type, HVmodule *pMyModule = NULL )
Constructor for a named channel of a given type

HVchannel( const char *Name, const char *Type, HVmodule *pMyModule, ooHandle( dbHVchannel) me )
Constructor in case we instatiate the object from the database (ooHandle dbHVchannel)

virtual ~HVchannel()
(virtual) Destructor [as it might be a 1469]

static int getChannelNbFromName( const char * pcName )
Returns the channel number of the name of the channel (following the PHENIX convention)

Member functions for database access

virtual int storeReadback( const HVreadback &ReadbackToStore, struct tm *theTime = NULL )
to store a readback in the database

virtual int storeSetpoint( const HVsetpoint &SetpointToStore, struct tm *theTime = NULL )
to store a setpoint in the database

virtual bool isBulkSupply()
name member function to distinguish 1469 bulk supplies from normal channels

virtual bool hasBulkSupply()
member function to find out whether this channel belongs to a module that is divided into bulk supplies

virtual bool is1471()
name member function to distinguish 1471 channels & the new properties they possess

virtual int getRampTripEnable(bool& bRTE)
virtual function which is overloaded in the case of 1471 channels

virtual int getPeakCurrent(double& dPeakCurrent)
virtual function which is overloaded in the case of 1471 channels

virtual int getPeakTripCurrent(double& dPeakTripCurrent)
virtual function which is overloaded in the case of 1471 channels

virtual int setRampTripEnable(bool bRTE)
virtual function which is overloaded in the case of 1471 channels

virtual int setPeakTripCurrent(double dPeakTripCurrent)
virtual function which is overloaded in the case of 1471 channels

inline short getTripCount()
Returns the trip count of the module

short resetTripCount()
Sets the trip count of the module

short incTripCount()
Increments the trip count of the module


Direct child classes:
HVchannel1471
HVchannel1469
HVbulkSupply
Author:
C.Witzig
Date: Aug 7, 98
Version:
Jan 29, 1999

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de