ngc 1.5.0
 
Loading...
Searching...
No Matches
ngcdcsAO Class Reference

#include <ngcdcsAO.hpp>

Inheritance diagram for ngcdcsAO:
ngcbMOD ngcbOBJ

Public Member Functions

 ngcdcsAO (const ngcb_route_t &r)
 Constructor with route.
 
 ngcdcsAO (ngcbIFC *ifc, const ngcb_route_t &r)
 Constructor with interface device and route.
 
virtual ~ngcdcsAO ()
 Destructor.
 
void Reset ()
 Align software state after reset.
 
int Enable (int check=1)
 Call-back at transition to operational state.
 
int Disable ()
 Call-back at transition to not operational state.
 
int Selftest ()
 Execute selftest.
 
virtual int AtStop ()
 Function to be executed before read-out stop.
 
virtual int AfterStop ()
 Function to be executed after read-out stop.
 
virtual int AtStart ()
 Function to be executed before read-out start.
 
virtual int AutoStart ()
 Function to be executed after read-out start.
 
int CkAddrCB (int addr, const int *buffer, int size)
 Check-address call-back for alignment.
 
void WrAddrCB (int addr, const int *buffer, int size)
 Write-to-address call-back for alignment.
 
virtual int Update (int sensor, int force=0)
 Run next sensor update cycle.
 
int CheckOvrIllum ()
 Check over-illumination sensor.
 
int ResetHead ()
 Reset AO camera.
 
int ResetSensors (int errFlag=0)
 Reset all sensors.
 
int ResetRHum ()
 Reset humidity sensor.
 
int ResetTemp ()
 Reset temperature sensor.
 
int ResetPressure ()
 Reset pressure sensor.
 
int ResetOvrIllum ()
 Reset over-illumination detection.
 
int SensorError (int sensor)
 Return sensor error state.
 
int ResetAfe (int update=1)
 Reset AFE interface.
 
int Master (int flag)
 Enable/disable synchronisation master flag.
 
int DataLink (int flag)
 Enable/disable data-link to NGC-LLCU.
 
int SerialLink (int flag)
 Enable/disable serial link to AO-system.
 
int Gain (int value)
 Set gain.
 
int Gain (int quadrant, int value)
 Set gain per quadrant.
 
int Delay (int idx, int ticks)
 Set delay (in ticks)
 
int VoltageIPhase (int idx, double volt)
 Set multi-level-clock voltage levels (I-phase)
 
int VoltageSPhase (int idx, double volt)
 Set multi-level-clock voltage levels (S-phase)
 
int Dim (int x, int y)
 Set image dimension.
 
int DimX (int x)
 Set image x-dimension.
 
int DimY (int y)
 Set image y-dimension.
 
unsigned int FrameCnt ()
 Return current frame counter.
 
double FrameRate ()
 Return actual frame rate (Hz)
 
int Shift (int clkNum, int shift, int edge, int force=0)
 Clock-shifter.
 
int GetClk (int clkNum, int patNum, char *clkString)
 Get clock state values.
 
int AmpGain (int channel, double value)
 Set amplifier gain (in dB - from 0.0 to 36.0 dB)
 
int Clamp (int channel, int level)
 Set clamp level (0 - 1020)
 
int ClampOn (int side, int flag)
 Enable Clamp.
 
int Input (int channel, int input)
 Select AFE input (0=CCD, 1=AUX1, 2=AUX2)
 
int CtrlReg ()
 Return actual control register mirror.
 
int SetupKey (const char *key, const int *idx, const char *value, int *status=NULL)
 Setup.
 
int StatusKey (const char *key, const int *idx, char *value, int *status=NULL)
 Status.
 
- Public Member Functions inherited from ngcbMOD
ngcbMODoperator= (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.
 
ngcbIFCDev ()
 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 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.
 
- 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

char initFile [ngcdcsAO_MAX_INITFILES][256]
 Register initialization files.
 
char resetFile [ngcdcsAO_MAX_INITFILES][256]
 Register reset files.
 
int hwRev
 Hardware revision (0=protoype, 1=reshaped)
 
int autoStart
 Automatic immediate start.
 
ngcdcsSHTx_TEMP temp
 Temperature sensor (degC)
 
ngcdcsSHTx_RHUM rhum
 Relative humidity sensor (%)
 
ngcdcsMPL115A pressure
 Pressure sensor (kPa)
 
int master
 Synchronisation master flag.
 
int dataLink
 Data-link to NGC-LLCU disabled/enabled flag.
 
int serialLink
 Serial link to AO-system disabled/enabled flag.
 
int gain
 Gain step.
 
int maxGain
 Maximum gain.
 
int overIllumination
 Over-illumination flag.
 
int rstStart
 Reset at start.
 
int expAbort
 Abort exposure on over-illumination.
 
int sensEnabled
 Sensor interface disabled/enabled flag.
 
int sensPrefill
 Prefill sensor filter windows.
 
double sensSettleTime
 Sensor settling time.
 
int shpWidth
 SHP-widht (ALICE)
 
int delay [42]
 42 delays (in ticks)
 
double reDelay [8]
 Rising edge calibration delays (in ticks)
 
double feDelay [8]
 Falling edge calibration delays (in ticks)
 
double vsph [4]
 Multi-level-clock voltage levels S-phase.
 
double viph [4]
 Multi-level-clock voltage levels I-phase.
 
int nx
 Image transfer x-dimension.
 
int ny
 Image transfer y-dimension.
 
ngcdcsAO_RMP rmp
 ALICE rgions, masks, patterns.
 
int hvChan [4]
 High-voltage channel.
 
ngcdcs_aocal_t calib [4]
 High voltage calibration.
 
char pixMask [256]
 Calibration pixel mask.
 
ngcdcs_afe_t afe
 Analog Front End control (AFE)
 
ngcdcsCLDCcldc
 Assocoated clock- and bias-generator.
 
ngcdcsSEQseq
 Associated sequencer.
 
- Public Attributes inherited from ngcbMOD
ngcbIFCdev
 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_SYSalarmSystem
 Alarm system.
 
ngcbSERVICEservices
 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.
 

Detailed Description

NGC AO camera module class

Constructor & Destructor Documentation

◆ ngcdcsAO() [1/2]

ngcdcsAO::ngcdcsAO ( const ngcb_route_t & r)
explicit

Constructor with route.

◆ ngcdcsAO() [2/2]

ngcdcsAO::ngcdcsAO ( ngcbIFC * ifc,
const ngcb_route_t & r )

Constructor with interface device and route.

◆ ~ngcdcsAO()

ngcdcsAO::~ngcdcsAO ( )
virtual

Destructor.

Member Function Documentation

◆ AfterStop()

int ngcdcsAO::AfterStop ( )
virtual

Function to be executed after read-out stop.

◆ AmpGain()

int ngcdcsAO::AmpGain ( int channel,
double value )

Set amplifier gain (in dB - from 0.0 to 36.0 dB)

◆ AtStart()

int ngcdcsAO::AtStart ( )
virtual

Function to be executed before read-out start.

◆ AtStop()

int ngcdcsAO::AtStop ( )
virtual

Function to be executed before read-out stop.

◆ AutoStart()

int ngcdcsAO::AutoStart ( )
virtual

Function to be executed after read-out start.

◆ CheckOvrIllum()

int ngcdcsAO::CheckOvrIllum ( )

Check over-illumination sensor.

◆ CkAddrCB()

int ngcdcsAO::CkAddrCB ( int addr,
const int * buffer,
int size )
virtual

Check-address call-back for alignment.

Reimplemented from ngcbMOD.

◆ Clamp()

int ngcdcsAO::Clamp ( int channel,
int level )

Set clamp level (0 - 1020)

◆ ClampOn()

int ngcdcsAO::ClampOn ( int side,
int flag )

Enable Clamp.

◆ CtrlReg()

int ngcdcsAO::CtrlReg ( )
inline

Return actual control register mirror.

◆ DataLink()

int ngcdcsAO::DataLink ( int flag)

Enable/disable data-link to NGC-LLCU.

◆ Delay()

int ngcdcsAO::Delay ( int idx,
int ticks )

Set delay (in ticks)

◆ Dim()

int ngcdcsAO::Dim ( int x,
int y )

Set image dimension.

◆ DimX()

int ngcdcsAO::DimX ( int x)

Set image x-dimension.

◆ DimY()

int ngcdcsAO::DimY ( int y)

Set image y-dimension.

◆ Disable()

int ngcdcsAO::Disable ( )
virtual

Call-back at transition to not operational state.

Reimplemented from ngcbMOD.

◆ Enable()

int ngcdcsAO::Enable ( int check = 1)
virtual

Call-back at transition to operational state.

Reimplemented from ngcbMOD.

◆ FrameCnt()

unsigned int ngcdcsAO::FrameCnt ( )

Return current frame counter.

◆ FrameRate()

double ngcdcsAO::FrameRate ( )

Return actual frame rate (Hz)

◆ Gain() [1/2]

int ngcdcsAO::Gain ( int quadrant,
int value )

Set gain per quadrant.

◆ Gain() [2/2]

int ngcdcsAO::Gain ( int value)

Set gain.

◆ GetClk()

int ngcdcsAO::GetClk ( int clkNum,
int patNum,
char * clkString )

Get clock state values.

◆ Input()

int ngcdcsAO::Input ( int channel,
int input )

Select AFE input (0=CCD, 1=AUX1, 2=AUX2)

◆ Master()

int ngcdcsAO::Master ( int flag)

Enable/disable synchronisation master flag.

◆ Reset()

void ngcdcsAO::Reset ( )
virtual

Align software state after reset.

Reimplemented from ngcbMOD.

◆ ResetAfe()

int ngcdcsAO::ResetAfe ( int update = 1)

Reset AFE interface.

◆ ResetHead()

int ngcdcsAO::ResetHead ( )

Reset AO camera.

◆ ResetOvrIllum()

int ngcdcsAO::ResetOvrIllum ( )

Reset over-illumination detection.

◆ ResetPressure()

int ngcdcsAO::ResetPressure ( )

Reset pressure sensor.

◆ ResetRHum()

int ngcdcsAO::ResetRHum ( )

Reset humidity sensor.

◆ ResetSensors()

int ngcdcsAO::ResetSensors ( int errFlag = 0)

Reset all sensors.

◆ ResetTemp()

int ngcdcsAO::ResetTemp ( )

Reset temperature sensor.

◆ Selftest()

int ngcdcsAO::Selftest ( )

Execute selftest.

◆ SensorError()

int ngcdcsAO::SensorError ( int sensor)

Return sensor error state.

◆ SerialLink()

int ngcdcsAO::SerialLink ( int flag)

Enable/disable serial link to AO-system.

◆ SetupKey()

int ngcdcsAO::SetupKey ( const char * key,
const int * idx,
const char * value,
int * status = NULL )

Setup.

◆ Shift()

int ngcdcsAO::Shift ( int clkNum,
int shift,
int edge,
int force = 0 )

Clock-shifter.

◆ StatusKey()

int ngcdcsAO::StatusKey ( const char * key,
const int * idx,
char * value,
int * status = NULL )

Status.

◆ Update()

int ngcdcsAO::Update ( int sensor,
int force = 0 )
virtual

Run next sensor update cycle.

◆ VoltageIPhase()

int ngcdcsAO::VoltageIPhase ( int idx,
double volt )

Set multi-level-clock voltage levels (I-phase)

◆ VoltageSPhase()

int ngcdcsAO::VoltageSPhase ( int idx,
double volt )

Set multi-level-clock voltage levels (S-phase)

◆ WrAddrCB()

void ngcdcsAO::WrAddrCB ( int addr,
const int * buffer,
int size )
virtual

Write-to-address call-back for alignment.

Reimplemented from ngcbMOD.

Member Data Documentation

◆ afe

ngcdcs_afe_t ngcdcsAO::afe

Analog Front End control (AFE)

◆ autoStart

int ngcdcsAO::autoStart

Automatic immediate start.

◆ calib

ngcdcs_aocal_t ngcdcsAO::calib[4]

High voltage calibration.

◆ cldc

ngcdcsCLDC* ngcdcsAO::cldc

Assocoated clock- and bias-generator.

◆ dataLink

int ngcdcsAO::dataLink

Data-link to NGC-LLCU disabled/enabled flag.

◆ delay

int ngcdcsAO::delay[42]

42 delays (in ticks)

◆ expAbort

int ngcdcsAO::expAbort

Abort exposure on over-illumination.

◆ feDelay

double ngcdcsAO::feDelay[8]

Falling edge calibration delays (in ticks)

◆ gain

int ngcdcsAO::gain

Gain step.

◆ hvChan

int ngcdcsAO::hvChan[4]

High-voltage channel.

◆ hwRev

int ngcdcsAO::hwRev

Hardware revision (0=protoype, 1=reshaped)

◆ initFile

char ngcdcsAO::initFile[ngcdcsAO_MAX_INITFILES][256]

Register initialization files.

◆ master

int ngcdcsAO::master

Synchronisation master flag.

◆ maxGain

int ngcdcsAO::maxGain

Maximum gain.

◆ nx

int ngcdcsAO::nx

Image transfer x-dimension.

◆ ny

int ngcdcsAO::ny

Image transfer y-dimension.

◆ overIllumination

int ngcdcsAO::overIllumination

Over-illumination flag.

◆ pixMask

char ngcdcsAO::pixMask[256]

Calibration pixel mask.

◆ pressure

ngcdcsMPL115A ngcdcsAO::pressure

Pressure sensor (kPa)

◆ reDelay

double ngcdcsAO::reDelay[8]

Rising edge calibration delays (in ticks)

◆ resetFile

char ngcdcsAO::resetFile[ngcdcsAO_MAX_INITFILES][256]

Register reset files.

◆ rhum

ngcdcsSHTx_RHUM ngcdcsAO::rhum

Relative humidity sensor (%)

◆ rmp

ngcdcsAO_RMP ngcdcsAO::rmp

ALICE rgions, masks, patterns.

◆ rstStart

int ngcdcsAO::rstStart

Reset at start.

◆ sensEnabled

int ngcdcsAO::sensEnabled

Sensor interface disabled/enabled flag.

◆ sensPrefill

int ngcdcsAO::sensPrefill

Prefill sensor filter windows.

◆ sensSettleTime

double ngcdcsAO::sensSettleTime

Sensor settling time.

◆ seq

ngcdcsSEQ* ngcdcsAO::seq

Associated sequencer.

◆ serialLink

int ngcdcsAO::serialLink

Serial link to AO-system disabled/enabled flag.

◆ shpWidth

int ngcdcsAO::shpWidth

SHP-widht (ALICE)

◆ temp

ngcdcsSHTx_TEMP ngcdcsAO::temp

Temperature sensor (degC)

◆ viph

double ngcdcsAO::viph[4]

Multi-level-clock voltage levels I-phase.

◆ vsph

double ngcdcsAO::vsph[4]

Multi-level-clock voltage levels S-phase.


The documentation for this class was generated from the following files: