QSlowBaseCommand Class Reference

List of all members.

Detailed Description

base class for all the Slow Server commands

Author:
Andrea Giachero (Andrea.Giachero@lngs.infn.it)


Public Types

enum  QSlowCmdType_t { QSLOW_GENERIC = 0xaa, QSLOW_SET, QSLOW_GET, QSLOW_START }
 Command Types Definition.
enum  QSlowKeyWords_t {
  QSLOW_KLG, QSLOW_KBASKET, QSLOW_KID, QSLOW_KCH,
  QSLOW_KDEV, QSLOW_KFE_CRATE, QSLOW_KFE_BOARD, QSLOW_KFE_CHANNEL,
  QSLOW_KBS_CRATE, QSLOW_KBS_BOARD, QSLOW_KBS_CHANNEL, QSLOW_KPS_CRATE,
  QSLOW_KPS_BOARD, QSLOW_KPS_CHANNEL
}
 Key Words for the commands.
enum  QSlowTarget_t {
  QSLOW_GE_TARGET, QSLOW_FE_TARGET, QSLOW_BS_TARGET, QSLOW_PS_TARGET,
  QSLOW_PO_TARGET
}
 Command targets. More...
enum  QSlowEleCommand_t {
  QSLOW_GE_MODE, QSLOW_GE_WRITE, QSLOW_GE_NUM, QSLOW_GE_LIVETIME,
  QSLOW_GE_BASKET, QSLOW_GE_IFACE, QSLOW_FE_NAME, QSLOW_FE_ID,
  QSLOW_FE_LABEL, QSLOW_FE_CRATE, QSLOW_FE_SLOT, QSLOW_FE_BOARD,
  QSLOW_FE_CHANNEL, QSLOW_FE_MEMA, QSLOW_FE_MEMB, QSLOW_FE_MEMC,
  QSLOW_FE_MEMD, QSLOW_FE_DACH, QSLOW_FE_DACL, QSLOW_FE_GAIN,
  QSLOW_FE_BIAS, QSLOW_FE_BIAS_POL, QSLOW_FE_ACYCLE, QSLOW_FE_ATIME,
  QSLOW_FE_RLOAD, QSLOW_FE_INPUT, QSLOW_FE_AUX, QSLOW_FE_THERM,
  QSLOW_FE_ODAC, QSLOW_FE_OMSB, QSLOW_FE_OSBIT, QSLOW_FE_OPOL,
  QSLOW_FE_TEST_POS, QSLOW_FE_TEST_NEG, QSLOW_BS_NAME, QSLOW_BS_ID,
  QSLOW_BS_LABEL, QSLOW_BS_CRATE, QSLOW_BS_SLOT, QSLOW_BS_BOARD,
  QSLOW_BS_CHANNEL, QSLOW_BS_MEM, QSLOW_BS_TRGAIN, QSLOW_BS_DELETION,
  QSLOW_BS_ENABLE, QSLOW_BS_CUTFREQ, QSLOW_PS_NAME, QSLOW_PS_ID,
  QSLOW_PS_LABEL, QSLOW_PS_CRATE, QSLOW_PS_SLOT, QSLOW_PS_BOARD,
  QSLOW_PS_CHANNEL, QSLOW_PS_GROUP, QSLOW_PS_WIDTH, QSLOW_PS_AMPLI,
  QSLOW_PS_ATTEN, QSLOW_PS_FIRE, QSLOW_PS_MEM0, QSLOW_PS_MEM1,
  QSLOW_PS_MEM2, QSLOW_PS_MEM3, QSLOW_PO_IDN, QSLOW_PO_VENDOR,
  QSLOW_PO_NAME, QSLOW_PO_TYPE, QSLOW_PO_VSET, QSLOW_PO_ISET,
  QSLOW_PO_VOUT, QSLOW_PO_IOUT, QSLOW_PO_VOUT_EN
}
 Commands Parameters.

Public Member Functions

 QSlowBaseCommand (QSlowCmdType_t Type)
virtual void Execute ()=0
virtual void CheckParams ()=0

Protected Types

enum  QSlowBoolType_t {
  QSLOW_NO_BOOL = 1000, QSLOW_ONOFF, QSLOW_POSNEG, QSLOW_TESTBOLO,
  QSLOW_RMAXRMIN
}
 Boolean Type Definition. More...

Protected Member Functions

bool IsLg ()
bool IsPhysical ()
bool IsId ()
const QSlowCmdType_t GetCmdType () const
const std::string fuits (size_t IntVal)
std::string Binary (size_t Value)
bool CheckForNotValidParams (QError &ErrorRet)
void NotDefined (QError &ErrorRet, QSlowTarget_t Target, QSlowEleCommand_t CmdCode)
bool IsLocked ()
bool IsUnlockCommand (QSlowEleCommand_t CmdCode)
bool OnlyOne (const std::string &cmd)
const QSlowTypes::QSlowDevice_t GetDeviceType (QSlowTarget_t target) const

Protected Attributes

int fLg
int fId
int fCrate
int fBoard
int fChannel
std::string fStringVal
QSlowEleCommand_t fCmdCode
QSlowTarget_t fTarget
QSlowCmdType_t fCmdType

Static Protected Attributes

static std::map< QSlowEleCommand_t,
std::string > 
gGECommands
static std::map< QSlowEleCommand_t,
std::string > 
gBSCommands
static std::map< QSlowEleCommand_t,
std::string > 
gFECommands
static std::map< QSlowEleCommand_t,
std::string > 
gPSCommands
static std::map< QSlowEleCommand_t,
std::string > 
gPOCommands
static std::map< QSlowTarget_t,
QSlowTypes::QSlowDevice_t > 
gToDevice
static std::map< QSlowKeyWords_t,
std::string > 
gKeyWords

Private Attributes

bool fIsLg
bool fIsPhysical
bool fIsId


Member Enumeration Documentation

enum QSlowBaseCommand::QSlowTarget_t

Command targets.

Enumerator:
QSLOW_GE_TARGET  Target: slow server
QSLOW_FE_TARGET  Target: Front-End
QSLOW_BS_TARGET  Target: Bessel
QSLOW_PS_TARGET  Pulser: Pulser
QSLOW_PO_TARGET  Power Supply Target

enum QSlowBaseCommand::QSlowBoolType_t [protected]

Boolean Type Definition.

Enumerator:
QSLOW_NO_BOOL  The Value is not boolean
QSLOW_ONOFF  true(1)=ON, false(0)=OFF
QSLOW_POSNEG  true(1)=POSITIVE, false(0)=NEGATIVE
QSLOW_TESTBOLO  true(1)=TEST INPUT, false(0)=BOLOMETER
QSLOW_RMAXRMIN  true(1)=R_LOAD MAX, false(0)=R_LOAD MIN


Member Data Documentation

int QSlowBaseCommand::fLg [protected]

Logical Channel

int QSlowBaseCommand::fId [protected]

Channel Id

int QSlowBaseCommand::fCrate [protected]

Electronics Crate Address

int QSlowBaseCommand::fBoard [protected]

Electronics Board Address

int QSlowBaseCommand::fChannel [protected]

Electronics Channel Address

QSlowEleCommand_t QSlowBaseCommand::fCmdCode [protected]

Command code

QSlowTarget_t QSlowBaseCommand::fTarget [protected]

Command target

QSlowCmdType_t QSlowBaseCommand::fCmdType [protected]

Command type

std::map< QSlowBaseCommand::QSlowEleCommand_t, std::string > QSlowBaseCommand::gGECommands [static, protected]

Generic server commands map

std::map< QSlowBaseCommand::QSlowEleCommand_t, std::string > QSlowBaseCommand::gBSCommands [static, protected]

Bessel commands map

std::map< QSlowBaseCommand::QSlowEleCommand_t, std::string > QSlowBaseCommand::gFECommands [static, protected]

Front-End commands map

std::map< QSlowBaseCommand::QSlowEleCommand_t, std::string > QSlowBaseCommand::gPSCommands [static, protected]

Pulser commands map

std::map< QSlowBaseCommand::QSlowEleCommand_t, std::string > QSlowBaseCommand::gPOCommands [static, protected]

Power Supply command map

std::map< QSlowBaseCommand::QSlowTarget_t, QSlowTypes::QSlowDevice_t > QSlowBaseCommand::gToDevice [static, protected]

convert QSlowTarget_t in QSlowDevice_t

std::map< QSlowBaseCommand::QSlowKeyWords_t, std::string > QSlowBaseCommand::gKeyWords [static, protected]

Command keywords map

bool QSlowBaseCommand::fIsLg [private]

true if the addressing is done by logical cha nnel

bool QSlowBaseCommand::fIsPhysical [private]

true if the addressing is done by physical channel

bool QSlowBaseCommand::fIsId [private]

true if the addressing is done by channel id


The documentation for this class was generated from the following files:
Generated on Fri Mar 6 13:40:44 2009 for CUORE Software by  doxygen 1.5.1