#include <ngcdcsCLDC.hpp>
Public Member Functions | |
| ngcdcsCLDC0 (const ngcb_route_t &r, int nc, int nb) | |
| Constructor with route, number of clocks and number of biases. | |
| ngcdcsCLDC0 (ngcbIFC *ifc, const ngcb_route_t &r, int nc, int nb) | |
| virtual | ~ngcdcsCLDC0 () |
| Destructor. | |
| virtual int | AtOnline () |
| At online hook. | |
| virtual int | Selftest () |
| Execute self-test. | |
| virtual int | VSetup (int autoCtrl=0) |
| Apply voltage setup. | |
| virtual int | Check () |
| Check telemetry against current setup. | |
| virtual int | OutputEnable () |
| Enable output. | |
| virtual int | OutputDisable () |
| Disable output. | |
| virtual int | OutputEnabled () |
| Check if output is enabled. | |
| virtual int | Protection (int flag) |
| Enable/disable protection circuit. | |
| virtual int | Calibrate (int noSetup=0) |
| Calibrate (offset compensation) | |
| virtual void | ClearCalibration () |
| Clear calibration. | |
| virtual int | Calibrated () |
| Check if calibration has been done. | |
| virtual int | Zero () |
| Set all voltages to zero. | |
| virtual int | VoltageDC (int num, double volt, int rangeCheck=1) |
| Set DC voltage. | |
| virtual int | VoltageClk (int num, int l, double volt, int rangeCheck=1) |
| Set clock level. | |
| virtual int | VoltageClk (int num, ngcdcs_clkv_t cv, int rangeCheck=1) |
| Set all levels of clock. | |
| virtual int | VoltageRegDC (int num, int value, int rangeCheck=1) |
| Set DC hex-voltage. | |
| virtual int | VoltageRegClk (int num, int l, int value, int rangeCheck=1) |
| Set clock hex-level. | |
| virtual int | VoltageErrDC (int num, double volt) |
| Set DC voltage error. | |
| virtual int | VoltageErrClk (int num, int l, double volt) |
| Set clock level voltage error. | |
| virtual double | TelCurrent (int chan) |
| Return value of last current-telemetry. | |
| virtual int | TelDC (int num, double *volt) |
| Telemetry for DC-bias. | |
| virtual int | TelClk (int num, int l, double *volt) |
| Telemetry for clock level. | |
| virtual int | TelClk (int num, ngcdcs_clkv_t *cv) |
| Telemetry for clock (all levels) | |
| virtual int | Snapshot () |
| Telemetry snapshot. | |
| virtual char * | VStatusString () |
| Get voltage status string. | |
| virtual int | VStatus (int *s) |
| Get voltage HW-status. | |
| virtual int | LoadCfgFile (const char *fileName=NULL) |
| Load voltage configuration. | |
| virtual int | SaveCfgFile (const char *fileName) |
| Save voltage configuration. | |
| virtual int | SaveErrFile (const char *fileName) |
| Save error calibration. | |
| virtual int | Restore (const char *keyword) |
| Restore keyword from the last loaded file. | |
| virtual int | SetupKey (const char *key, const int *idx, const char *value, int *status=NULL) |
| Setup. | |
| virtual int | StatusKey (const char *key, const int *idx, char *value, int *status=NULL) |
| Status. | |
Public Member Functions inherited from ngcbMOD | |
| ngcbMOD & | operator= (const ngcbMOD &other) |
| Operator =. | |
| ngcbMOD (const ngcbMOD &other) | |
| Copy constructor. | |
| ngcbMOD (const ngcb_route_t &modRoute) | |
| Constructor with route. | |
| ngcbMOD (ngcbIFC *modDev, const ngcb_route_t &modRoute) | |
| Constructor with interface device and route. | |
| virtual | ~ngcbMOD () |
| Destructor. | |
| ngcbIFC * | Dev () |
| Return current interface device. | |
| void | Dev (ngcbIFC *newDev) |
| Set new interface device. | |
| int | Connected () |
| Return 1 if device is connected, zero otherwise. | |
| int | Sim () |
| int | Initialize () |
| Initialize module. | |
| void | ErrState (const char *msg, int errorId=0) |
| Go to error state. | |
| virtual int | CkAddrCB (int addr, const int *buffer, int size) |
| Check-address call-back for alignment. | |
| virtual void | WrAddrCB (int addr, const int *buffer, int size) |
| Write-to-address call-back for alignment. | |
| virtual int | Load (const char *fileName) |
| Load register instruction file. | |
| int | Board () |
| Return the board number of the module (starts with zero) | |
| void | RpcCopy (void *dest, const void *src, size_t size, size_t items=1) |
| Copy RPC payload. | |
| int | RPC (int target, int req, void *payload, unsigned int size, unsigned int *status=NULL) |
| Execute RPC. | |
| int | ReadAddr (int addr, int *buffer, int size) |
| Read from address (32-bit) | |
| int | WriteAddr (int addr, const int *buffer, int size) |
| Write to address (32-bit) | |
| int | ReadAddr64 (int addr, uint64_t *buffer, int size) |
| Read from address (64-bit) | |
| int | WriteAddr64 (int addr, const uint64_t *buffer, int size) |
| Write to address (64-bit) | |
| int | Temperature (double *t) |
| Read board temperature (degree C) | |
| int | BackPlane () |
| Return back-plane ID. | |
| virtual void | CV (int chan, double volt) |
| Voltage conversion call-back. | |
| virtual void | Reset () |
| Align soft-states after reset. | |
| virtual int | Disable () |
| Call-back at transition to not operational state. | |
| virtual int | Enable (int check=1) |
| Call-back at transition to operational state. | |
Public Member Functions inherited from ngcbOBJ | |
| ngcbOBJ () | |
| Constructor. | |
| virtual | ~ngcbOBJ () |
| Destructor. | |
| void | Instance (int n) |
| Set instance. | |
| int | Instance () |
| Get instance. | |
| const char * | Major () |
| Instance major number. | |
| int | BigEndian () |
| Big-endian architecture. | |
| int | LittleEndian () |
| Little-endian architecture. | |
| virtual char * | ErrMsg () |
| Error message. | |
| virtual int | Success () |
| Return success. | |
| virtual int | Failure () |
| Return failure. | |
| void | CfgPath (const char *path) |
| Set external configuration path. | |
Public Attributes | |
| int | vstat |
| Soft-status (enabled, disabled) | |
| int | autoEnable |
| Enable at online. | |
| int | autoDisable |
| Disable when (re-)configuring. | |
| int | ilck |
| Flag to enable/disable the external interlock. | |
| int | ilckOn |
| Flag indicating whether interlock is enabled. | |
| int | protection |
| Flag indicating whether protection has triggered. | |
| int | protectionOn |
| Flag indicating whether protection is enabled. | |
| int | autoCal |
| Calibrate at online. | |
| double | calMax |
| Voltage calibration limit (in Volts) | |
| ngcdcs_clk_t * | clk |
| Clock voltages. | |
| int | numClk |
| Number of clock voltages. | |
| ngcdcs_dc_t * | dc |
| Bias voltages. | |
| int | numDc |
| Number of bias voltages. | |
| ngcdcs_clkv_t * | clkTel |
| Saved clock voltages telemetry values. | |
| double * | dcTel |
| Saved bias voltages telemetry values. | |
| int | haveCurrentTel |
| Flag, indicating whether current-telemetry is available. | |
| double | margin |
| Margin for voltage check (in Volts) | |
| double | dacTime |
| DAC settling time (in seconds) | |
| char | voltageInitFile [256] |
| Voltage initialization file. | |
| char | cfgFile [256] |
| Voltage configuration file. | |
| int | toggle |
| Toggle new configuration. | |
| int | telFlag |
| Flag to update telemetry. | |
| double | cvg1 |
| Voltage conversion formula gain-1. | |
| double | cvg2 |
| Voltage conversion formula gain-2. | |
| double | cvOffset |
| Voltage conversion formula offset. | |
| char | serNoBoard [32] |
| Serial number. | |
| char | serNoTrans [32] |
| Transition board serial number. | |
Public Attributes inherited from ngcbMOD | |
| ngcbIFC * | dev |
| Interface device. | |
| ngcb_route_t | route |
| Local route to module (header) | |
| char | moduleName [64] |
| Module name. | |
| int | id |
| ID-register content. | |
| int | productCode |
| Product code. | |
| int | revision |
| HW revision number. | |
| int | firmware |
| Firmware revision. | |
| int | boardId |
| Physical board id. | |
| int | fitsHdr |
| Enable FITS-header for this module. | |
Public Attributes inherited from ngcbOBJ | |
| FILE * | watchdog |
| Watchdog stream. | |
| ngcbALARM_SYS * | alarmSystem |
| Alarm system. | |
| ngcbSERVICE * | services |
| System services. | |
| int | verboseLevel |
| Verbose level. | |
| int | logLevel |
| Logging level. | |
| int | xterm |
| Xterm flag. | |
| int | debugPort |
| Debug port. | |
| int | ignoreErr |
| Ignore next error (do not log) | |
| int | type |
| Object type. | |
Additional Inherited Members | |
Protected Member Functions inherited from ngcbOBJ | |
| virtual int | BailOut (const char *pos) |
| Log code position of the error and bail-out with failure. | |
| virtual void | Verbose (int level, const char *format,...) __attribute__((format(printf |
| Verbose message if verbose level exceeds level. | |
| virtual void virtual void | Verbose (const char *format,...) __attribute__((format(printf |
| Verbose message. | |
| virtual void virtual void virtual void | Log (int level, const char *format,...) __attribute__((format(printf |
| Log message if logging level exceeds level. | |
| virtual void virtual void virtual void virtual void | Log (const char *format,...) __attribute__((format(printf |
| Log message. | |
| virtual void virtual void virtual void virtual void virtual void | ErrLog (int severity, const char *format,...) __attribute__((format(printf |
| Error log, severity is one of ngcbWARNING, ngcbFAILURE and ngcbERR_SEVERE. | |
| virtual void virtual void virtual void virtual void virtual void void | FeedBack (const char *format,...) __attribute__((format(printf |
| Feed-back function. | |
| virtual void virtual void virtual void virtual void virtual void void virtual void | SendFeedBack (const char *msg) |
| Feed-back sender implementation. | |
| const char * | CfgPath () |
| Get external configuration path. | |
| int | CfgPath (char *path, const char *cfgFile) |
| Compose path for configuratuion file. | |
| int | KeyVal (const char *key, float *value) |
| Get single precision floating point value from keyword string. | |
| int | KeyVal (const char *key, double *value) |
| Get double precision floating point value from keyword string. | |
| int | KeyVal (const char *key, int *value) |
| Get 32-bit signed integer value from decimal keyword string. | |
| int | KeyVal (const char *key, unsigned int *value) |
| Get 32-bit unsigned integer value from decimal keyword string. | |
| int | KeyValHex (const char *key, int *value) |
| Get 32-bit signed integer value from hexadecimal keyword string. | |
| int | KeyValHex (const char *key, unsigned int *value) |
| Get 32-bit unsigned integer value from hexadecimal keyword string. | |
| int | KeyValFmt (const char *key, int *value) |
| Get 32-bit signed integer value from string. | |
| int | KeyValFmt (const char *key, unsigned int *value) |
| Get 32-bit unsigned integer value from string. | |
| int | KeyValFrac (const char *key, unsigned int n, uint64_t *v1, uint64_t *v2) |
| Fraction after n digits. | |
| void | CleanupCmd (char *cmdLine, int *cmdLen) |
| Clean command string (remove extra spaces etc.) | |
| int | ReplaceParam (char *string) |
| Replace parameter in string. | |
Generic CLDC base class
|
inline |
Constructor with route, number of clocks and number of biases.
|
inline |
Constructor with interface device, route, number of clocks and number of biases
|
inlinevirtual |
Destructor.
|
inlinevirtual |
At online hook.
Reimplemented in ngcdcsLISABIAS.
|
inlinevirtual |
Calibrate (offset compensation)
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
|
inlinevirtual |
Check if calibration has been done.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
|
inlinevirtual |
Check telemetry against current setup.
Reimplemented in ngcdcsCLDC.
|
inlinevirtual |
Clear calibration.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
|
inlinevirtual |
Load voltage configuration.
Reimplemented in ngcdcsCLDC, and ngcdcsSCA.
|
inlinevirtual |
Disable output.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsSCA.
|
inlinevirtual |
Enable output.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsSCA.
|
inlinevirtual |
Check if output is enabled.
Reimplemented in ngcdcsCLDC.
|
inlinevirtual |
Enable/disable protection circuit.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsLISABIAS.
|
inlinevirtual |
Restore keyword from the last loaded file.
Reimplemented in ngcdcsCLDC, and ngcdcsSCA.
|
inlinevirtual |
Save voltage configuration.
Reimplemented in ngcdcsCLDC, and ngcdcsSCA.
|
inlinevirtual |
Save error calibration.
Reimplemented in ngcdcsCLDC.
|
inlinevirtual |
Execute self-test.
Reimplemented in ngcdcsCLDC, ngcdcsSCA, ngcdcsSEQ0, and ngcdcsSEQ.
|
virtual |
Setup.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsLISABIAS.
|
inlinevirtual |
Telemetry snapshot.
Reimplemented in ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsSCA.
|
virtual |
Status.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsLISABIAS.
|
inlinevirtual |
Telemetry for clock level.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
|
inlinevirtual |
Telemetry for clock (all levels)
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
|
inlinevirtual |
Return value of last current-telemetry.
Reimplemented in ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, and ngcdcsC24.
|
inlinevirtual |
Telemetry for DC-bias.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, ngcdcsNGSDBIAS, and ngcdcsSCA.
|
inlinevirtual |
Set clock level.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsLISABIAS.
|
inlinevirtual |
Set all levels of clock.
Reimplemented in ngcdcsCLDC.
|
inlinevirtual |
Set DC voltage.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsSCA.
|
inlinevirtual |
Set clock level voltage error.
Reimplemented in ngcdcsCLDC.
|
inlinevirtual |
Set DC voltage error.
Reimplemented in ngcdcsCLDC.
|
inlinevirtual |
Set clock hex-level.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsLISABIAS.
|
inlinevirtual |
Set DC hex-voltage.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, and ngcdcsLISABIAS.
|
inlinevirtual |
Apply voltage setup.
Reimplemented in ngcdcsCLDC, and ngcdcsSCA.
|
inlinevirtual |
Get voltage HW-status.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
|
inlinevirtual |
Get voltage status string.
Reimplemented in ngcdcsALBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsSCA.
|
inlinevirtual |
Set all voltages to zero.
Reimplemented in ngcdcsALBIAS, ngcdcsAOBIAS, ngcdcsAPD, ngcdcsB24, ngcdcsC20B20, ngcdcsC24, ngcdcsCLDC, ngcdcsLISABIAS, and ngcdcsNGSDBIAS.
| int ngcdcsCLDC0::autoCal |
Calibrate at online.
| int ngcdcsCLDC0::autoDisable |
Disable when (re-)configuring.
| int ngcdcsCLDC0::autoEnable |
Enable at online.
| double ngcdcsCLDC0::calMax |
Voltage calibration limit (in Volts)
| char ngcdcsCLDC0::cfgFile[256] |
Voltage configuration file.
| ngcdcs_clk_t* ngcdcsCLDC0::clk |
Clock voltages.
| ngcdcs_clkv_t* ngcdcsCLDC0::clkTel |
Saved clock voltages telemetry values.
| double ngcdcsCLDC0::cvg1 |
Voltage conversion formula gain-1.
| double ngcdcsCLDC0::cvg2 |
Voltage conversion formula gain-2.
| double ngcdcsCLDC0::cvOffset |
Voltage conversion formula offset.
| double ngcdcsCLDC0::dacTime |
DAC settling time (in seconds)
| ngcdcs_dc_t* ngcdcsCLDC0::dc |
Bias voltages.
| double* ngcdcsCLDC0::dcTel |
Saved bias voltages telemetry values.
| int ngcdcsCLDC0::haveCurrentTel |
Flag, indicating whether current-telemetry is available.
| int ngcdcsCLDC0::ilck |
Flag to enable/disable the external interlock.
| int ngcdcsCLDC0::ilckOn |
Flag indicating whether interlock is enabled.
| double ngcdcsCLDC0::margin |
Margin for voltage check (in Volts)
| int ngcdcsCLDC0::numClk |
Number of clock voltages.
| int ngcdcsCLDC0::numDc |
Number of bias voltages.
| int ngcdcsCLDC0::protection |
Flag indicating whether protection has triggered.
| int ngcdcsCLDC0::protectionOn |
Flag indicating whether protection is enabled.
| char ngcdcsCLDC0::serNoBoard[32] |
Serial number.
| char ngcdcsCLDC0::serNoTrans[32] |
Transition board serial number.
| int ngcdcsCLDC0::telFlag |
Flag to update telemetry.
| int ngcdcsCLDC0::toggle |
Toggle new configuration.
| char ngcdcsCLDC0::voltageInitFile[256] |
Voltage initialization file.
| int ngcdcsCLDC0::vstat |
Soft-status (enabled, disabled)