12#error This is a C++ include file and cannot be used from plain C
38#define ngcdcsSTATE_OFF evhSTATE_OFF
39#define ngcdcsSTATE_LOADED evhSTATE_LOADED
40#define ngcdcsSTATE_STANDBY evhSTATE_STANDBY
41#define ngcdcsSTATE_ONLINE evhSTATE_ONLINE
46#include "ngcdcsErrors.h"
53#define ngcdcsSTATE_OFF 1
54#define ngcdcsSTATE_LOADED 2
55#define ngcdcsSTATE_STANDBY 3
56#define ngcdcsSTATE_ONLINE 4
61#define ngcdcsERR_SYSTEM 1
63#define ngcdcsERR_INIT 3
64#define ngcdcsERR_WARNING 4
65#define ngcdcsERR_FATAL 5
66#define ngcdcsERR_DB_READ 6
67#define ngcdcsERR_DB_WRITE 7
68#define ngcdcsERR_DB_INIT 8
69#define ngcdcsERR_ACQ_IO 9
70#define ngcdcsERR_ACQ_OVERRUN 10
71#define ngcdcsERR_ACQ_OVERFLOW 11
72#define ngcdcsERR_ACQ_EXEC 12
73#define ngcdcsERR_EXP_IO 13
74#define ngcdcsERR_EXP_FILE 14
75#define ngcdcsERR_EXP_PROC 15
76#define ngcdcsERR_ACCESS 16
77#define ngcdcsERR_MERGE 17
78#define ngcdcsERR_CLDC 18
79#define ngcdcsERR_AOBIAS 19
80#define ngcdcsERR_NGSDBIAS 20
87#define ngcdcsGUI_DEFAULT "ngcgui"
92#define ngcdcsSUBSTATE_NONE 0
93#define ngcdcsSUBSTATE_IDLE 1
94#define ngcdcsSUBSTATE_BUSY 2
95#define ngcdcsSUBSTATE_ACTIVE 6
96#define ngcdcsSUBSTATE_ERROR 8
98#define ngcdcsSUBSTATE_READY 3
99#define ngcdcsSUBSTATE_NOT_READY 4
100#define ngcdcsSUBSTATE_INIT 5
101#define ngcdcsSUBSTATE_RECOVER 7
102#define ngcdcsSUBSTATE_RUNNING 9
107#define ngcdcsOPMODE_NORMAL 0
108#define ngcdcsOPMODE_HWSIM 1
109#define ngcdcsOPMODE_LCUSIM 2
114#define ngcdcsMERGE_MAX_PROC 4
119#define ngcdcsMAX_LOG 50
124#define ngcdcsLOG_INFO 0
129#define ngcdcsTESTERR_BLOCK 0x800
216 sprintf(logMsg,
"ALARM(%s)-%lu: %s (%s)\n", a->
Name(), id_,
232 sprintf(logMsg,
"ALARM(%s)-%lu: cancelled\n", a->
Name(),
id);
250 sprintf(logMsg,
"ALARM(%s)-%lu: acknowledged\n", a->
Name(),
id);
312 int CfgPath(
char *path,
const char *cfgFile);
321 int SysCfg(
const char *cfgFile);
370 void RpcTranslate(
void *payload,
size_t size,
int request,
int how,
char *s);
376 int GetPat(
int id,
int num,
char *s);
379 int GetPrg(
int id,
int num,
char *s);
396 int DetCfg(
const char *cfgFile);
439 int AcqProc(
int id,
const char *procName);
445 int FrameGen(
int id,
const char *name,
int flag);
448 int FrameStore(
int id,
const char *name,
int flag);
451 int FrameLocal(
int id,
const char *name,
int flag);
454 int FrameExport(
int id,
const char *name,
int flag);
457 int FrameBreak(
int id,
const char *name,
int n);
460 int FrameWin(
int id,
const char *name,
int sx,
int sy,
int nx,
int ny);
506 int DumpFits(
const char *fileName = NULL);
512 void ExpStatus(
unsigned int newStat,
const char *erms = NULL);
524 int RecStart(
const char *
id,
double absTime = 0.0);
527 int ExpStart(
int acqId = 0,
double absTime = 0.0);
533 int ExpEnd(
int acqId = 0);
577 int ExpDrvLoad(
const char *module,
const char *name = NULL);
580 int ExpDrvUnload(
const char *name,
const char *symbol = NULL);
648 virtual int MergeStart(
const char *name,
int display,
int id,
int cleanup=0);
654 virtual int MergeStatus(
int id,
char *stat = NULL);
657 virtual int MergeMsg(
int id,
char *msg);
683 void State(
int newState,
int update = 1);
704 int OpMode(
const char *mode);
728 virtual void Query();
772 void Profile(
const char *name = NULL);
811 void SaveErr(
const char *erms);
840 void Logger(
int flag,
const char *msg);
858 void Verbose(
int level,
const char *format, ...)
859 __attribute__ ((format(printf, 3, 4)));
862 void Verbose(const
char *fromat, ...)
863 __attribute__ ((format(printf, 2, 3)));
866 void Log(
int level, const
char *format, ...)
867 __attribute__ ((format(printf, 3, 4)));
870 void Log(const
char *format, ...)
871 __attribute__ ((format(printf, 2, 3)));
874 void ErrLog(
int severity, const
char *format, ...)
875 __attribute__ ((format(printf, 3, 4)));
878 void Print(const
char *format, ...)
879 __attribute__ ((format(printf, 2, 3)));
882 void AddLog(const
char *format, ...)
883 __attribute__ ((format(printf, 2, 3)));
909 void DevError(const
char *erms,
int id,
void *descriptor);
912 void AcqError(const
char *erms,
int id,
void *descriptor);
950 const
char *syntax, const
char *help);
953 void DelCmd(const
char *cmd);
956 int Execute(const
char *cmd,
char *reply,
int protect = 0,
int fd = -1);
959 int Execute(const
char *cmd,
int protect = 0,
int fd = -1);
962 int Macro(const
char *fileName,
char *reply,
int protection = 0);
965 int SimError(
int error,
int idx = 0);
1026 int SeqStart(
int id = 0, struct timeval *ts = NULL,
double absTime = 0.0);
1041 int SeqWait(
int id,
int event,
int timeout,
int interval);
1056 int TecAction(
int id, const
char *action,
char *reply);
1059 int SvsAction(
int id, const
char *action,
char *reply);
1076 int LoadSetup(const
char *fileName,
char **list,
int *listLength,
1084 int *status = NULL);
1087 int ParamDefine(const
char *name, const
char *value, const
char *unit);
1096 int SetupList(
char **paramBuf,
int size);
1102 int SetupParam(const
char *name, const
char *value);
1105 int StatusList(const
char *list,
char *reply);
1108 int StatusList(
char **list,
int size,
char *reply);
1127 int nc,
int nb,
double extRef);
1135 int num,
int bitPix);
1260 virtual
int ResolvePath(
char *resolved, const
char *fileName);
1287 virtual
int LookupCB(const
char *paramName,
char *value);
1315 virtual
void ErrorEvent(
int id, const
char *erms);
1318 virtual
void ErrLogEvent(
int id, const
char *erms);
1327 virtual
void DbLogCB(const
char *msg);
1330 void DbLog(const
char *format, ...)
1331 __attribute__ ((format(printf, 2, 3)));
1341 const
char *fileName,
int merge,
1404 int nb,
double extRef);
1477 char versionString_[256];
1480 char thisVersion_[256];
1486 char testParam_[256];
1489 char procName_[128];
1527 pthread_t serviceThread_;
1546 int debugConnection_;
1549 int OpenDebugStream_();
1552 void CloseDebugStream_();
1555 void AlignLogging_();
1558 void InternalLog_(const
char *msg);
1561 char lastErrMsg_[512];
1611 void ExternalShell_();
1628 int telemetryError_;
1634 int MapError_(
int id,
ngcbOBJ *obj);
1637 void DevErrState_(const
char *msg,
int id,
ngcbIFC *dev,
ngcbMOD *mod);
1640 void AcqErrState_(const
char *msg,
int id,
ngcdcsACQ *mod);
1672 int ApplyDefaultSetup_(const
char *fileName,
int id);
1675 int SetupParam_(const
char *name, const
char *value,
int *status = NULL);
1678 int SetupDEV_(const
char *name, const
char *value,
int *status = NULL);
1681 int SetupSEQ_(const
char *name, const
char *value,
int *status = NULL);
1684 int SetupCLDC_(const
char *name, const
char *value,
int *status = NULL);
1687 int SetupADC_(const
char *name, const
char *value,
int *status = NULL);
1690 int SetupNGC2_(const
char *name, const
char *value,
int *status = NULL);
1693 int SetupAO_(const
char *name, const
char *value,
int *status = NULL);
1696 int SetupLISA_(const
char *name, const
char *value,
int *status = NULL);
1699 int SetupNGSD_(const
char *name, const
char *value,
int *status = NULL);
1702 int SetupTEC_(const
char *name, const
char *value,
int *status = NULL);
1705 int SetupSVS_(const
char *name, const
char *value,
int *status = NULL);
1708 int SetupPREAMP_(const
char *name, const
char *value,
int *status = NULL);
1711 int SetupSHUT_(const
char *name, const
char *value,
int *status = NULL);
1714 int SetupSCA_(const
char *name, const
char *value,
int *status = NULL);
1720 int SetupACQ_(const
char *name, const
char *value,
int *status = NULL);
1723 int StatusParam_(const
char *name,
char *value);
1726 int StatusDEV_(const
char *name,
char *value,
int *status);
1729 int StatusSEQ_(const
char *name,
char *value,
int *status);
1732 int StatusCLDC_(const
char *name,
char *value,
int *status);
1735 int StatusADC_(const
char *name,
char *value,
int *status);
1738 int StatusNGC2_(const
char *name,
char *value,
int *status);
1741 int StatusAO_(const
char *name,
char *value,
int *status);
1744 int StatusLISA_(const
char *name,
char *value,
int *status);
1747 int StatusNGSD_(const
char *name,
char *value,
int *status);
1750 int StatusTEC_(const
char *name,
char *value,
int *status);
1753 int StatusSVS_(const
char *name,
char *value,
int *status);
1756 int StatusPREAMP_(const
char *name,
char *value,
int *status);
1759 int StatusSHUT_(const
char *name,
char *value,
int *status);
1762 int StatusSCA_(const
char *name,
char *value,
int *status);
1765 int StatusACQ_(const
char *name,
char *value,
int *status);
1768 int StatusCHIP_(const
char *name,
char *value,
int *status);
1774 void IgnoreErr_(
int flag);
1777 int ParamList2PP_();
1788 char sysCfgFile_[256];
1803 void SysCfgPreset_(const
char *name, const
char *value);
1821 int InstallCommands_();
1824 int ReferenceCheck_();
1827 int haveLoadedState_;
1834 char expStatStr_[32];
1837 double lastExposureTime_;
1855 void ComputeExpTime_();
1858 char expLastFile_[256];
1861 int postProcEnabled_;
1873 int Chip2Fits_(
ngcbFITS *f,
int idx);
1882 int HaveBreakCond_();
1902 int SeqDwellTime_(
int id,
int factor,
int add);
1905 int SeqClkFile_(
int id, const
char *fileName);
1908 int SeqPrgFile_(
ngcdcsSEQ0 *mod, const
char *fileName = NULL);
1914 int AcqProc_(
int id, const
char *procName);
1917 int AcqBurst_(
int id,
int num);
1920 void AcqWinMap_(
int id,
int *fx,
int *fy,
int *sx,
int *sy);
1933 int Online_(
int update = 1);
1936 int SeqBreakTmo_(
int id = 0);
1939 int SeqStartSync_(
int id);
1942 int SeqStopSync_(
int id,
int force = 0);
1948 int AcqStop_(
int id);
1960 void SubState2String_(
int st,
char *s);
1995 void DbUpdateParam_(
int fd = -1);
1998 void DbUpdateReadModeList_(
int fd = -1);
2001 void DbUpdateFrames_(
int id,
int fd = -1);
2128 int Execute_(const
char *cmd,
char *reply,
int protect,
int fd);
2131 int EventHandler_(const
char *msg,
char *reply);
2140 int ExpStepWiping_();
2141 int ExpStepIntegrating_();
2142 int ExpStepReading_();
2145 int ExpStateHandler_();
2148 int ExpStepTriggered_(
int stat);
Definition ngcbALARM.hpp:60
void Remove(ngcb_alarm_id id)
Remove item from built-in alarm container.
Definition ngcbALARM_SYS.cpp:30
void Store(ngcbALARM *alarm, ngcb_alarm_id id)
Store alarm to built-in alarm container.
Definition ngcbALARM_SYS.cpp:25
ngcbALARM * Get(ngcb_alarm_id id)
Get item from built-in alarm container.
Definition ngcbALARM_SYS.cpp:35
ngcbALARM_SYS()
Constructor.
Definition ngcbALARM_SYS.cpp:12
Definition ngcbALARM.hpp:99
void Ack()
Acknowledge alarm.
Definition ngcbALARM.cpp:198
const char * Msg()
Return alarm message.
Definition ngcbALARM.cpp:148
const char * Name()
Return alarm name.
Definition ngcbALARM.cpp:144
const char * Value(int showUnit)
Return formatted value string.
Definition ngcbALARM.cpp:154
Definition ngcbATTR.hpp:62
Definition ngcbCMD.hpp:379
ngcbCMD_SRV()
Constructor.
Definition ngcbCMD_SRV.cpp:28
Definition ngcbATTR.hpp:206
Definition ngcbDIC.hpp:50
Definition ngcbFITS.hpp:24
Definition ngcbIFC.hpp:754
Definition ngcbLIST.hpp:33
Definition ngcbMOD.hpp:24
Definition ngcbOBJ.hpp:33
Definition ngcbPARAM.hpp:200
Definition ngcbPARAM.hpp:40
Definition ngcbTHREAD.hpp:67
Definition ngcbSERVICE.hpp:35
Definition ngcbSHMDB.hpp:54
ngcbSIO()
Constructor.
Definition ngcbSIO.cpp:30
Definition ngcbTMPFILE.hpp:25
Definition ngcbCMD.hpp:41
ngcdcsACQ_SERVICE()
Constructor.
Definition ngcdcsACQ.hpp:309
Definition ngcdcsACQ.hpp:342
Definition ngcdcsADC.hpp:54
Definition ngcdcsSRV.hpp:195
virtual ~ngcdcsALARM_SYS()
Destructor.
Definition ngcdcsSRV.hpp:208
ngcdcsALARM_SYS()
Constructor.
Definition ngcdcsSRV.hpp:202
int verboseLevel
Definition ngcdcsSRV.hpp:198
ngcbSERVICE * services
Definition ngcdcsSRV.hpp:197
void Cancel(ngcb_alarm_id id)
Cancel alarm.
Definition ngcdcsSRV.hpp:225
ngcb_alarm_id Issue(ngcbALARM *a)
Send alarm.
Definition ngcdcsSRV.hpp:211
int logLevel
Definition ngcdcsSRV.hpp:199
void Ack(ngcb_alarm_id id)
Acknowledge alarm.
Definition ngcdcsSRV.hpp:241
Definition ngcdcsALBIAS.hpp:26
Definition ngcdcsAOBIAS.hpp:26
Definition ngcdcsAO.hpp:311
Definition ngcdcsAPD.hpp:38
Definition ngcdcsB24.hpp:26
Definition ngcdcsC20B20.hpp:26
Definition ngcdcsC24.hpp:68
Definition ngcdcsCLDC.hpp:128
Definition ngcdcsCLDC.hpp:594
Definition ngcdcsCTRL.hpp:67
int status
Definition ngcdcsSRV.hpp:173
virtual ~ngcdcsEVT()
Destructor.
Definition ngcdcsSRV.hpp:185
int id
Definition ngcdcsSRV.hpp:171
ngcdcsEVT(int i, int d)
Constructor with id and device list.
Definition ngcdcsSRV.hpp:182
ngcdcsEVT()
Constructor.
Definition ngcdcsSRV.hpp:176
ngcdcsEVT(int i)
Constructor with id.
Definition ngcdcsSRV.hpp:179
int devices
Definition ngcdcsSRV.hpp:172
Definition ngcdcsEXPDRV.hpp:30
Definition ngcdcsEXP.hpp:178
Definition ngcdcsLISABIAS.hpp:26
Definition ngcdcsLISA.hpp:34
Definition ngcdcsMRGLIST.hpp:62
Definition ngcdcsNGC2.hpp:39
Definition ngcdcsNGSDBIAS.hpp:26
Definition ngcdcsNGSD.hpp:36
Definition ngcdcsPREAMP.hpp:62
Definition ngcdcsRTD.hpp:57
Definition ngcdcsSCA.hpp:182
Definition ngcdcsSEQ.hpp:185
Definition ngcdcsSEQ_PRG.hpp:204
Definition ngcdcsSEQ.hpp:574
Definition ngcdcsSHUTTER.hpp:35
int EvtAddWait(int fd, int id)
Add event waiting client.
Definition ngcdcsSrvStateCtrl.cpp:523
int ExpDrvAddWait(int fd)
Add exposure driver waiting client (socket)
Definition ngcdcsSrvExpDrv.cpp:750
void GetFrames(int id, char *s)
Get frame configuration (debugging function)
Definition ngcdcsSrvFrames.cpp:353
virtual int MergeStatus(int id, char *stat=NULL)
Get status of exposure data file merger.
Definition ngcdcsSrvMrg.cpp:234
int SeqBreak(int id=0)
Break sequence.
Definition ngcdcsSrvRunCtrl.cpp:1640
ngcdcsTEC * TECMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
TEC module factory.
Definition ngcdcsSrvMod.cpp:337
int AddCmd(const char *cmd, ngcb_function_t function, int flags, const char *syntax, const char *help)
Add command to server command list.
Definition ngcdcsSrvCmd.cpp:38
FILE * debugStream
Debug stream.
Definition ngcdcsSRV.hpp:828
int FrameBreak(int id, const char *name, int n)
Set exposure break condition for frame.
Definition ngcdcsSrvFrames.cpp:227
void BoardInfo(char *s)
Formatted board info.
Definition ngcdcsSrvInfo.cpp:817
virtual void AgEvent(int acqInst, ngcdcs_2ag_t ag, int errorId, const char *erms)
Auto-guiding event.
Definition ngcdcsSrvExp.cpp:231
void Verbose(int level, const char *format,...) __attribute__((format(printf
Verbose method depending on level.
Definition ngcdcsSrvLog.cpp:202
double LifeTime()
Server life time (seconds)
Definition ngcdcsSrvMain.cpp:2567
ngcdcsCTRL * ctrl
Controller object.
Definition ngcdcsSRV.hpp:404
int DebugStream(int flag)
Enable/disable debug-stream.
Definition ngcdcsSrvLog.cpp:163
int InMainLoop()
Function called before entering main-loop.
Definition ngcdcsSrvMain.cpp:2499
void PrintUsage()
Print command line options.
Definition ngcdcsSrvArgs.cpp:35
int pollInterval
Polling interval in ms.
Definition ngcdcsSRV.hpp:716
int SelftestAcq(int id)
Selftest function for acquisition module.
Definition ngcdcsSrvSelftest.cpp:341
int maxDfeMod
Maximum number of DFE modules.
Definition ngcdcsSRV.hpp:294
int Off()
Switch off.
Definition ngcdcsSrvStateCtrl.cpp:1452
double expTimeFactor
Exposure time factor.
Definition ngcdcsSRV.hpp:497
char gui[256]
GUI to be started.
Definition ngcdcsSRV.hpp:820
int PostProcEnabled()
Returns 1 if post-processor is enabled.
Definition ngcdcsSrvExp.cpp:172
int ShutdownService(int port)
Shutdown service port.
Definition ngcdcsSrvProtocol.cpp:883
void DeviceEvent(void *origin, void *event)
Device event (from ngcbSERVICE)
Definition ngcdcsSrvStateCtrl.cpp:302
int AcqStop(int id=0)
Stop (acquisition process)
Definition ngcdcsSrvRunCtrl.cpp:740
void Voltages(ngcdcsCLDC0 *mod, char *s)
Formatted voltages.
Definition ngcdcsSrvInfo.cpp:2133
void void void void void void void int ConfigureLogging(int vb, int log, int xt)
Configure logging parameters.
Definition ngcdcsSrvLog.cpp:132
int DbAdd(ngcbATTR *attr)
Add attribute to database.
Definition ngcdcsSrvDb.cpp:132
int MergeAlign()
Align merger file-list with backup file.
Definition ngcdcsSrvMrg.cpp:302
void ExpPoll()
Exposure polling.
Definition ngcdcsSrvExp.cpp:1456
virtual int FitsMergerCB(ngcbFITS *hdr, char *erms)
FITS-merger call-back.
Definition ngcdcsSrvFits.cpp:56
ngcdcsEXPDRV * ExpDrv(const char *name, const ngcb_fb_t &feedBackChannel)
Exposure driver installation hook.
Definition ngcdcsSrvExpDrv.cpp:225
virtual ~ngcdcsSRV()
Destructor.
Definition ngcdcsSrvMain.cpp:112
int CldcClearCalibration(int id)
Clear voltage calibration.
Definition ngcdcsSrvSetupCLDC.cpp:365
virtual ngcdcsC24 * MakeC24(ngcbIFC *dev, const ngcb_route_t &route)
Create NGC2 C24 bias generator.
Definition ngcdcsSrvMod.cpp:46
int ExpEnd(int acqId=0)
End exposure.
Definition ngcdcsSrvExp.cpp:1263
void Publish(const ngcdcs_exp_topic &topic)
Publish exposure event.
Definition ngcdcsSrvExp.cpp:302
int ExpDrvLoad(const char *module, const char *name=NULL)
Load exposure driver.
Definition ngcdcsSrvExpDrv.cpp:245
int TecAction(int id, const char *action, char *reply)
Perform TEC action.
Definition ngcdcsSrvRunCtrl.cpp:1749
virtual int FrameHandlerCB(void *buffer, ngcdcs_finfo_t *finfo, char *erms)
Frame handler call-back.
Definition ngcdcsSrvExp.cpp:203
int Xterm()
Flag to start in new window.
Definition ngcdcsSrvLog.cpp:100
void DevPoll()
Device events polling cycle.
Definition ngcdcsSrvTimer.cpp:243
ngcbPARAM_LIST * ParamList()
Global parameter list.
Definition ngcdcsSrvParam.cpp:493
virtual void PublishSubState()
Publish server sub-state.
Definition ngcdcsSrvDb.cpp:1027
int ReadMode(int idx)
Set new read-mode.
Definition ngcdcsSrvReadMode.cpp:288
virtual int ExpStartCB()
Hook at exposure start.
Definition ngcdcsSrvExp.cpp:227
int SetupParam(const char *name, const char *value)
Set single parameter.
Definition ngcdcsSrvSetupParam.cpp:898
int OpenDebugConnection()
Open error-state debug connection.
Definition ngcdcsSrvOpMode.cpp:112
void CatLog(char *s)
Copy built-in log to string.
Definition ngcdcsSrvLog.cpp:353
int SetupList(const char *paramBuf)
Setup parameter list (string)
Definition ngcdcsSrvSetupList.cpp:2185
int mergeInvalidate
Flag to invalidate source-data after merging.
Definition ngcdcsSRV.hpp:636
void DbExport()
Export database.
Definition ngcdcsSrvDb.cpp:146
void DbLog(const char *format,...) __attribute__((format(printf
Action log in database.
Definition ngcdcsSrvDb.cpp:1068
ngcdcsMRGLIST mergeList
Merger file-list handler.
Definition ngcdcsSRV.hpp:627
virtual void ShutdownSystemCB2()
Shutdown callback 2.
Definition ngcdcsSrvMain.cpp:1258
ngcdcsSEQ * SeqMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route, ngcbPARAM_LIST *p)
Sequencer module factory.
Definition ngcdcsSrvMod.cpp:231
int FitsMerger(ngcbFITS *hdr, char *erms)
FITS merger (from ngcbACQ_SERVICE)
Definition ngcdcsSrvFits.cpp:25
virtual ngcdcsSCA * MakeSCA(ngcbIFC *dev, const ngcb_route_t &route, ngcbPARAM_LIST *p)
Create Sidecar ASIC module.
Definition ngcdcsSrvMod.cpp:151
virtual void VerboseCB(const char *msg, int level=ngcdcsLOG_INFO)
Verbose output callback.
Definition ngcdcsSrvLog.cpp:329
int SelftestSeq(int id)
Selftest function for sequencer module.
Definition ngcdcsSrvSelftest.cpp:122
int RouteComp(ngcbMOD *, ngcbMOD *)
Compare module routes.
Definition ngcdcsSrvSysCfg.cpp:3365
const char * ProcName()
Return process name.
Definition ngcdcsSrvArgs.cpp:28
virtual int DelSockCB(int fd)
Remove file descriptor from socket event list.
Definition ngcdcsSrvProtocol.cpp:360
void SubState(int newState)
set new sub-state
Definition ngcdcsSrvStateCtrl.cpp:415
int FrameHandler(void *buffer, ngcdcs_finfo_t *finfo, char *erms)
Frame handler (from ngcbACQ_SERVICE)
Definition ngcdcsSrvExp.cpp:174
ngcdcsAO * AOMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
AO camera module factory.
Definition ngcdcsSrvMod.cpp:288
int SrvPortOrig()
Get original server port number.
Definition ngcdcsSrvMain.cpp:430
int SimError(int error, int idx=0)
Simulate various error test cases.
Definition ngcdcsSrvProtocol.cpp:1010
char thisHost[64]
Our hostname.
Definition ngcdcsSRV.hpp:291
int CloseDebugConnection()
Close error-state debug connection.
Definition ngcdcsSrvOpMode.cpp:176
FILE * watchdog
Watchdog.
Definition ngcdcsSRV.hpp:344
virtual int ConfigureSystemCB2(ngcdcs_syscfg_t &newCfg)
System configuration call-back 2 (after re-configuration)
Definition ngcdcsSrvSysCfg.cpp:61
void ClearSubState()
Clear sub-state (error or active)
Definition ngcdcsSrvStateCtrl.cpp:507
virtual int ResolvePath(char *resolved, const char *fileName)
Resolve full path name by parsing search paths etc.
Definition ngcdcsSrvSysCfg.cpp:68
int ShutterAction(int id, const char *action, char *reply)
Perform shutter action.
Definition ngcdcsSrvRunCtrl.cpp:1716
virtual ngcdcsPREAMP * PreampMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
Preamplifier module factory.
Definition ngcdcsSrvMod.cpp:263
int RecStart(const char *id, double absTime=0.0)
Start recording sequence (shortcut to series of function calls)
Definition ngcdcsSrvExp.cpp:1471
ngcdcsLISA * LISAMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
LISA camera module factory.
Definition ngcdcsSrvMod.cpp:315
int FdCB(int fd)
File descriptor event.
Definition ngcdcsSrvProtocol.cpp:286
ngcdcsSRV()
Constructors.
Definition ngcdcsSrvMain.cpp:77
int detIndex
Detector category index.
Definition ngcdcsSRV.hpp:288
void void void void void void Print(const char *format,...) __attribute__((format(printf
Print verbose message.
Definition ngcdcsSrvLog.cpp:296
virtual ngcdcsNGSD * MakeNGSD(ngcbIFC *dev, const ngcb_route_t &route, double extRef)
Create NGSD module.
Definition ngcdcsSrvMod.cpp:132
int Check(const ngcdcs_syscfg_t &cfg)
Check system configuration.
Definition ngcdcsSrvSysCfg.cpp:2993
void Abort()
Abort server.
Definition ngcdcsSrvMain.cpp:929
ngcdcsCLDC * CldcMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route, int nc, int nb, double extRef)
CLDC module factory.
Definition ngcdcsSrvMod.cpp:164
int Statistics(int id, char *s)
Formatted acquisition process statistics.
Definition ngcdcsSrvInfo.cpp:2199
int ProtocolAscii(int fd)
ASCII command protocol.
Definition ngcdcsSrvProtocol.cpp:143
int Macro(const char *fileName, char *reply, int protection=0)
Execute macro file.
Definition ngcdcsSrvProtocol.cpp:918
int mergeVerify
Enable/disable verification run before merging.
Definition ngcdcsSRV.hpp:633
int ResetSensors()
Reset sensors.
Definition ngcdcsSrvStateCtrl.cpp:1666
virtual int DbUpdateCB()
Update database call-back.
Definition ngcdcsSrvDb.cpp:967
int CldcCheck(int id)
Telemetry check.
Definition ngcdcsSrvSetupCLDC.cpp:282
void ClrLog()
Clear built-in log.
Definition ngcdcsSrvLog.cpp:339
int mergeChunk
Merger chunk size (bytes)
Definition ngcdcsSRV.hpp:639
int Enable(int check)
Go to operational state with or without integrity check.
Definition ngcdcsSrvStateCtrl.cpp:778
virtual void PublishExpEvent(int errorId, unsigned int newStat, const char *fileName, int merge, const char *erms)
Publish exposure event.
Definition ngcdcsSrvDb.cpp:971
ngcdcsADC * AdcMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route, int num, int bitPix)
ADC module factory.
Definition ngcdcsSrvMod.cpp:245
virtual void DbLogCB(const char *msg)
Database log callback.
Definition ngcdcsSrvDb.cpp:969
int CfgPath(char *path, const char *cfgFile)
Get cfg-file path.
Definition ngcdcsSrvSysCfg.cpp:80
int ExpStart(int acqId=0, double absTime=0.0)
Start exposure.
Definition ngcdcsSrvExp.cpp:791
void UnlockService()
Unlock service loop.
Definition ngcdcsSrvMain.cpp:2493
int Reset()
Reset system.
Definition ngcdcsSrvStateCtrl.cpp:1563
int SysCfg(const char *cfgFile)
Apply system configuration.
Definition ngcdcsSrvSysCfg.cpp:237
char mergeArg[128]
Additional merger arguments.
Definition ngcdcsSRV.hpp:642
void State(int newState, int update=1)
Set new server state.
Definition ngcdcsSrvStateCtrl.cpp:381
int FrameGen(int id, const char *name, int flag)
Set frame attribute: generate.
Definition ngcdcsSrvFrames.cpp:28
int DumpFits(const char *fileName=NULL)
Dump FITS-header to file.
Definition ngcdcsSrvFits.cpp:3027
virtual int MergeStart(const char *name, int display, int id, int cleanup=0)
Start exposure data file merger with requested id.
Definition ngcdcsSrvMrg.cpp:118
int ParamLookup(const char *name, char *value)
Handler for parameter lookup (from ngcbSERVICE)
Definition ngcdcsSrvParam.cpp:858
int SelftestCldc(int id)
Selftest function for CLDC module.
Definition ngcdcsSrvSelftest.cpp:24
void SaveErr(const char *erms)
Save last error message.
Definition ngcdcsSrvLog.cpp:394
int MainLoop()
Run service-loop.
Definition ngcdcsSrvMain.cpp:2521
virtual ngcdcsAPD * MakeAPD(ngcbIFC *dev, const ngcb_route_t &route, int nb)
Create APD bias generator.
Definition ngcdcsSrvMod.cpp:52
int Recover()
Recover from error state.
Definition ngcdcsSrvStateCtrl.cpp:719
int ExpDrvStart()
Activate exposure driver.
Definition ngcdcsSrvExpDrv.cpp:582
int GetPat(int id, int num, char *s)
Formatted clock pattern.
Definition ngcdcsSrvInfo.cpp:2289
int concurrentMerge
Concurrent merging.
Definition ngcdcsSRV.hpp:624
virtual ngcdcsSVS * MakeSVS(ngcbIFC *dev, const ngcb_route_t &route)
Create SVS module.
Definition ngcdcsSrvMod.cpp:145
virtual void PollStatConfigure(int enable, int interval)
Configure status polling (milliseconds)
Definition ngcdcsSrvTimer.cpp:287
int ReadModeIdx(int id)
Get read-mode index by id.
Definition ngcdcsSrvReadMode.cpp:254
void DevError(const char *erms, int id, void *descriptor)
Device error (from ngcbSERVICE)
Definition ngcdcsSrvStateCtrl.cpp:312
ngcbDIC dictionary
Global dictionary.
Definition ngcdcsSRV.hpp:1067
virtual int ConfigureSystemCB1(ngcdcs_syscfg_t &newCfg)
System configuration call-back 1 (before re-configuration)
Definition ngcdcsSrvSysCfg.cpp:54
virtual void PublishLogPars()
Publish logging parameters.
Definition ngcdcsSrvDb.cpp:1006
void ExportVersion(const char *newVersion)
Export version.
Definition ngcdcsSrvArgs.cpp:782
int LogLevel()
Get logging level.
Definition ngcdcsSrvLog.cpp:104
int AdcInfo(int id, char *s)
Formatted ADC module info.
Definition ngcdcsSrvInfo.cpp:906
int SeqWaiting()
Check if all sequencers are in WAITING state.
Definition ngcdcsSrvRunCtrl.cpp:166
int CldcDefault(int id)
Restore default voltages.
Definition ngcdcsSrvSetupCLDC.cpp:227
char expDrvFeedBack[128]
Feed-back channel selection.
Definition ngcdcsSRV.hpp:598
int integrityCheck
Integrity check when going online.
Definition ngcdcsSRV.hpp:674
int InitSysCfg(const char *cfgFile)
Initialize default system configuration from file.
Definition ngcdcsSrvSysCfg.cpp:209
virtual ngcdcsTEC * MakeTEC(ngcbIFC *dev, const ngcb_route_t &route)
Create TEC module.
Definition ngcdcsSrvMod.cpp:139
ngcbIFC * ctrlDev[ngcdcsCTRL_MAX_DEV]
Mirror of controller devices.
Definition ngcdcsSRV.hpp:407
int SeqContinue(int id=0)
Sequencer continue.
Definition ngcdcsSrvRunCtrl.cpp:1561
int PrepareFits(int refresh=1)
Prepare FITS-header.
Definition ngcdcsSrvFits.cpp:85
void ExpStatus2String(char *s, int stat)
Convert exposure status to string.
Definition ngcdcsSrvExp.cpp:132
int LoadSetup(const char *fileName, char **list, int *listLength, int max=-1)
Load setup from file into string array.
Definition ngcdcsSrvParam.cpp:893
int ExpPause(int id=0)
Pause exosure.
Definition ngcdcsSrvExp.cpp:1333
int Update()
Update database.
Definition ngcdcsSrvStateCtrl.cpp:1701
void SysInfo(char *s)
Formatted system info.
Definition ngcdcsSrvInfo.cpp:87
int SeqIdle(int id=0)
Check sequencer idle states.
Definition ngcdcsSrvRunCtrl.cpp:125
int fitsLogPeriod
FITS logging period (seconds)
Definition ngcdcsSRV.hpp:837
virtual void DbLock()
Lock database.
Definition ngcdcsSrvDb.cpp:30
void AcqError(const char *erms, int id, void *descriptor)
Device error (from ngcbACQ_SERVICE)
Definition ngcdcsSrvStateCtrl.cpp:320
int OpMode(int level)
Set operational mode.
Definition ngcdcsSrvOpMode.cpp:24
ngcbPARAM * ParamDefine(const char *name, const char *value, int id, int *status=NULL)
Define parameter.
Definition ngcdcsSrvParam.cpp:497
virtual void MergeReset(int relaunch=0)
Reset data merger interface.
Definition ngcdcsSrvMrg.cpp:434
int Initialize()
Initialize system.
Definition ngcdcsSrvMain.cpp:558
char opMode[32]
Operation mode string.
Definition ngcdcsSRV.hpp:671
virtual ngcdcsLISABIAS * MakeLISABIAS(ngcbIFC *dev, const ngcb_route_t &route, int nb)
Create LISA bias generator.
Definition ngcdcsSrvMod.cpp:72
int FrameExport(int id, const char *name, int flag)
Set frame attribute: export.
Definition ngcdcsSrvFrames.cpp:179
int HaveLocalEvents()
Local events configured.
Definition ngcdcsSrvTimer.cpp:227
void void void void void ErrLog(int severity, const char *format,...) __attribute__((format(printf
Error log, severity is one of ngcbWARNING, ngcbFAILURE and ngcbERR_SEVERE.
Definition ngcdcsSrvLog.cpp:280
ngcbALARM_SYS * alarmSystem
Alarm system.
Definition ngcdcsSRV.hpp:831
int ResetDfe()
Reset detector front-end.
Definition ngcdcsSrvStateCtrl.cpp:1605
void ExpStatus(unsigned int newStat, const char *erms=NULL)
Update exposure status.
Definition ngcdcsSrvExp.cpp:268
const char * DicList()
Get dictionary list.
Definition ngcdcsSrvParam.cpp:495
int numAcqMod
Number of acquisition modules.
Definition ngcdcsSRV.hpp:427
int CheckExp()
Return an error when an exposure is still active.
Definition ngcdcsSrvExp.cpp:237
virtual ngcdcsPREAMP * MakePREAMP(ngcbIFC *dev, const ngcb_route_t &route)
Create preamplifier module.
Definition ngcdcsSrvMod.cpp:108
ngcdcsACQ * acq[ngcdcsACQ_MAX_PROC]
Acquisition modules.
Definition ngcdcsSRV.hpp:424
int FitsBlock()
Number of FITS blocks from system.
Definition ngcdcsSrvFits.cpp:83
char * ErrMsg()
Global error message.
Definition ngcdcsSrvMain.cpp:460
size_t ppStackSize
Post-processor stack size in bytes (0 = use system default)
Definition ngcdcsSRV.hpp:1290
int CldcRestore(int id, const char *key=NULL)
Restore voltage defined by voltage-keyword.
Definition ngcdcsSrvSetupCLDC.cpp:415
virtual int MergeStop(int id)
Stop exposure data file merger.
Definition ngcdcsSrvMrg.cpp:211
int RestoreState()
Restore sequencer states.
Definition ngcdcsSrvStateCtrl.cpp:601
int AcqProc(int id, const char *procName)
Set acquisition process on multiple instances.
Definition ngcdcsSrvSetupACQ.cpp:24
virtual ngcdcsADC * MakeADC(ngcbIFC *dev, const ngcb_route_t &route, int num, int bitPix)
Create ADC module.
Definition ngcdcsSrvMod.cpp:95
void ExpDrvModList(char *s)
Print list of loaded exposure driver modules to string.
Definition ngcdcsSrvExpDrv.cpp:291
int ProtocolBin(int fd)
Binary command protocol.
Definition ngcdcsSrvProtocol.cpp:619
int SeqTrigger(int id)
Sequencer sync trigger.
Definition ngcdcsSrvRunCtrl.cpp:1396
void Release()
Release server.
Definition ngcdcsSrvMain.cpp:884
void Port(int port)
Set core service port.
Definition ngcdcsSrvMain.cpp:447
virtual ngcdcsSHUTTER * MakeSHUTTER(ngcbIFC *dev, const ngcb_route_t &route)
Create shutter module.
Definition ngcdcsSrvMod.cpp:102
void Profile(const char *name=NULL)
Apply profile.
Definition ngcdcsSrvMain.cpp:464
ngcdcsSVS * SVSMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
SVS module factory.
Definition ngcdcsSrvMod.cpp:346
virtual void Query()
Query system status.
Definition ngcdcsSrvTimer.cpp:28
int StatusParam(const char *name, char *value)
Get single parameter.
Definition ngcdcsSrvStatus.cpp:1548
ngcdcsNGC2 * NGC2Mod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
NGC2 basic module factory.
Definition ngcdcsSrvMod.cpp:272
int ExpDrvCfg(const char *s)
Configue exposure driver from either a file a parameter string.
Definition ngcdcsSrvExpDrv.cpp:490
ngcdcsEXP exposure
Exposure handler.
Definition ngcdcsSRV.hpp:494
int ExpDrvUnload()
Unload all dynamically loaded driver modules.
Definition ngcdcsSrvExpDrv.cpp:258
uint64_t SizeRecorded()
Recorded data size during current exposure (in bytes)
Definition ngcdcsSrvExp.cpp:97
virtual void PublishState()
Publish server state.
Definition ngcdcsSrvDb.cpp:1015
virtual void ErrorEvent(int id, const char *erms)
Error event handler.
Definition ngcdcsSrvStateCtrl.cpp:335
char * ExpStatusString()
Return current exposure status as string.
Definition ngcdcsSrvExp.cpp:166
virtual void PublishExpDrvStatus()
Publish exposure driver status.
Definition ngcdcsSrvDb.cpp:1039
virtual ngcdcsACQ * MakeACQ(const ngcdcs_acq_cfg_t &cfg, ngcbPARAM_LIST *p)
Create acquisition module.
Definition ngcdcsSrvMod.cpp:158
void void void void void void void AddLog(const char *format,...) __attribute__((format(printf
Add message to the logging system.
Definition ngcdcsSrvLog.cpp:312
void ModInfo(char *s)
Formatted module info.
Definition ngcdcsSrvInfo.cpp:345
int ExpAbort(int acqId=0)
Abort exposure.
Definition ngcdcsSrvExp.cpp:1233
virtual void DbUnlock()
Unlock database.
Definition ngcdcsSrvDb.cpp:35
int StatusList(const char *list, char *reply)
Get parameter status (parameter names string)
Definition ngcdcsSrvStatus.cpp:1482
void ExecShell(const char *name)
Set remote execution shell.
Definition ngcdcsSrvMain.cpp:442
virtual void LogCB(const char *msg, int level=ngcdcsLOG_INFO)
Logging output callback.
Definition ngcdcsSrvLog.cpp:337
void BroadcastAlarm(const char *msg)
Broadcast alarm.
Definition ngcdcsSrvProtocol.cpp:869
ngcdcsCLDC0 * CldcFn(int idx)
Get index of CLDC functional module.
Definition ngcdcsSrvMod.cpp:395
int Execute(const char *cmd, char *reply, int protect=0, int fd=-1)
Command handler.
Definition ngcdcsSrvProtocol.cpp:585
virtual void MergeNext()
Merge next item in the data merger list.
Definition ngcdcsSrvMrg.cpp:283
virtual int AddSockCB(int fd)
Add file descriptor to socket event list.
Definition ngcdcsSrvProtocol.cpp:344
int Telemetry(int id, char *s)
Formatted telemetry.
Definition ngcdcsSrvInfo.cpp:1989
void Logger(int flag, const char *msg)
Logger (from ngcbSERVICE)
Definition ngcdcsSrvLog.cpp:185
virtual void ExitSignal(int sig)
Exit handler.
Definition ngcdcsSrvMain.cpp:1242
int forceStartup
Enforce system startup even when instance check fails.
Definition ngcdcsSRV.hpp:285
const char * LastErr()
Last error message.
Definition ngcdcsSrvMain.cpp:462
virtual void InstallSignalHandlers()
Install signal handlers.
Definition ngcdcsSrvMain.cpp:435
virtual int ExpCountDownCB()
Exposure countdown start call-back.
Definition ngcdcsSrvExp.cpp:229
virtual void HiResTimer(int enable)
Enable/disable hi-res timer.
Definition ngcdcsSrvTimer.cpp:304
int VerboseLevel()
Get verbose level.
Definition ngcdcsSrvLog.cpp:102
int SvsAction(int id, const char *action, char *reply)
Perform SVS action.
Definition ngcdcsSrvRunCtrl.cpp:1791
int NeedEnableCycle()
Return a flag indicating whether an enabling cycle is needed.
Definition ngcdcsSrvStateCtrl.cpp:773
ngcdcsSCA * ScaMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route, ngcbPARAM_LIST *p)
Sidecar ASIC module factory.
Definition ngcdcsSrvMod.cpp:355
int FrameWin(int id, const char *name, int sx, int sy, int nx, int ny)
Set frame window.
Definition ngcdcsSrvFrames.cpp:285
int SeqWait(int id, int event, int timeout, int interval)
Wait for status event.
Definition ngcdcsSrvRunCtrl.cpp:1678
int updateReadModeList
Read-out mode list update flag.
Definition ngcdcsSRV.hpp:477
int readModeId
Current read-mode id.
Definition ngcdcsSRV.hpp:471
int CheckTriggerPeriod(int id, double period)
Check, if the trigger period matches the current read-out sequence.
Definition ngcdcsSrvInfo.cpp:2393
virtual ngcdcsNGSDBIAS * MakeNGSDBIAS(ngcbIFC *dev, const ngcb_route_t &route, int nb, double extRef)
Create NGSD bias generator.
Definition ngcdcsSrvMod.cpp:80
ngcdcs_syscfg_t sysCfg
Current configuration structure.
Definition ngcdcsSRV.hpp:306
int fitsLogLevel
FITS logging level.
Definition ngcdcsSRV.hpp:834
virtual int MergeMsg(int id, char *msg)
Get status message of exposure data file merger.
Definition ngcdcsSrvMrg.cpp:260
int numCldcFn
Number of CLDC functions.
Definition ngcdcsSRV.hpp:1183
ngcbLIST evtList
Event list.
Definition ngcdcsSRV.hpp:300
virtual ngcdcsALBIAS * MakeALBIAS(ngcbIFC *dev, const ngcb_route_t &route, int nb)
Create ALICE bias generator.
Definition ngcdcsSrvMod.cpp:65
int ParamDefault()
Set default values.
Definition ngcdcsSrvParam.cpp:804
int numSeqFn
Number of sequencer functions.
Definition ngcdcsSRV.hpp:1180
int ExpDrvAbort()
Abort exposure driver.
Definition ngcdcsSrvExpDrv.cpp:700
void LockService()
Lock service loop.
Definition ngcdcsSrvMain.cpp:2487
int SeqPause(int id=0)
Sequencer pause.
Definition ngcdcsSrvRunCtrl.cpp:1504
int TimerCB()
Timer call-back.
Definition ngcdcsSrvTimer.cpp:253
virtual ngcdcsAO * MakeAO(ngcbIFC *dev, const ngcb_route_t &route)
Create AO camera module.
Definition ngcdcsSrvMod.cpp:120
virtual void MergeInit()
Initialize file-merger interface.
Definition ngcdcsSrvMrg.cpp:386
ngcdcs_detcfg_t detCfg
Current configuration structure.
Definition ngcdcsSRV.hpp:390
int ExpDrvSelect(const char *name)
Install exposure driver.
Definition ngcdcsSrvExpDrv.cpp:293
virtual void ShutdownSystemCB1()
Shutdown callback 1.
Definition ngcdcsSrvMain.cpp:1256
int HandleExpEvt()
Handle exposure event.
Definition ngcdcsSrvExp.cpp:307
int FrameLocal(int id, const char *name, int flag)
Set frame attribute: store to local medi.
Definition ngcdcsSrvFrames.cpp:131
int Disable()
Go to not operational state.
Definition ngcdcsSrvStateCtrl.cpp:1295
ngcdcsTCCD * tccd[ngcdcsTCCD_MAX_PROC]
TCCD modules.
Definition ngcdcsSRV.hpp:413
void Shutdown()
Dhutdown all modules.
Definition ngcdcsSrvMain.cpp:1260
double TimeElapsed()
Time elapsed in current exposure.
Definition ngcdcsSrvExp.cpp:105
virtual ngcdcsNGC2 * MakeNGC2(ngcbIFC *dev, const ngcb_route_t &route)
Create NGC2 basic module.
Definition ngcdcsSrvMod.cpp:114
int SeqStop(int id=0)
Stop (sequencer + acquisition process)
Definition ngcdcsSrvRunCtrl.cpp:832
void DelCmd(const char *cmd)
Delete command from server command list.
Definition ngcdcsSrvCmd.cpp:61
int updateParam
Parameter update flag.
Definition ngcdcsSRV.hpp:1117
int SelftestAdc(int id)
Selftest function for ADC module.
Definition ngcdcsSrvSelftest.cpp:173
int DbConfigure()
Configure database.
Definition ngcdcsSrvDb.cpp:151
virtual ngcdcsCLDC * MakeCLDC(ngcbIFC *dev, const ngcb_route_t &route, int nc, int nb)
Create standard CLDC module.
Definition ngcdcsSrvMod.cpp:25
char dbPoint[256]
Actual data base point.
Definition ngcdcsSRV.hpp:920
void virtual int DbConfCB()
Configure database call-back.
Definition ngcdcsSrvDb.cpp:965
int ExpDrvClose()
Uninstall exposure driver.
Definition ngcdcsSrvExpDrv.cpp:469
int ExpCont(int id=0)
Continue paused exosure.
Definition ngcdcsSrvExp.cpp:1387
void StoreState()
Store sequencer states.
Definition ngcdcsSrvStateCtrl.cpp:560
void CheckDev(int idx, char *s)
Device check.
Definition ngcdcsSrvInfo.cpp:1090
int polling
Enable/disable polling.
Definition ngcdcsSRV.hpp:713
char configDir[256]
Configuration directory.
Definition ngcdcsSRV.hpp:309
virtual ngcdcsAOBIAS * MakeAOBIAS(ngcbIFC *dev, const ngcb_route_t &route, int nb)
Create AO bias generator.
Definition ngcdcsSrvMod.cpp:58
int autoRestart
Enable automatic restart mechanism.
Definition ngcdcsSRV.hpp:1008
int StoreCfg(const char *fileName)
Store configuration.
Definition ngcdcsSrvStoreCfg.cpp:28
int mergeDisplay
Flag to launch merger status display.
Definition ngcdcsSRV.hpp:630
int SelftestShutter(int id)
Selftest function for shutter module.
Definition ngcdcsSrvSelftest.cpp:215
int CldcDisable(int id)
Disable CLDC outputs.
Definition ngcdcsSrvSetupCLDC.cpp:142
int numTccdMod
Number of acquisition modules.
Definition ngcdcsSRV.hpp:416
void ExpDrvList(char *s)
Print exposure driver list to string.
Definition ngcdcsSrvExpDrv.cpp:289
int ConfigureSystem(ngcdcs_syscfg_t newCfg, int copy=1)
Configure system.
Definition ngcdcsSrvMain.cpp:1385
int Snapshot(int id, char *s)
Formatted bias snapshot.
Definition ngcdcsSrvInfo.cpp:1897
virtual void ErrLogEvent(int id, const char *erms)
Error logging event.
Definition ngcdcsSrvLog.cpp:401
void ExpDrvStatus(unsigned int newStat)
Exposure driver status update.
Definition ngcdcsSrvExpDrv.cpp:573
ngcdcsNGSD * NGSDMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route, double extRef)
NGSD module factory.
Definition ngcdcsSrvMod.cpp:328
int NewEventConnection(int fd)
New event connection.
Definition ngcdcsSrvDb.cpp:40
virtual ngcbCMD_LIST * CreateCmdList()
Command list factory.
Definition ngcdcsSrvCmd.cpp:32
void ParamUndefine(const char *name, int id)
Undefine (remove) parameter.
Definition ngcdcsSrvParam.cpp:772
char stateString[32]
Server state string (STANDBY,ONLINE,...
Definition ngcdcsSRV.hpp:680
int ErrState()
Check if we are in error state.
Definition ngcdcsSrvStateCtrl.cpp:552
int state
Server state value.
Definition ngcdcsSRV.hpp:677
double RemainingTime()
Time remaining in current exposure.
Definition ngcdcsSrvExp.cpp:119
char * Instance()
Get instance.
Definition ngcdcsSrvMain.cpp:458
virtual ngcdcsB24 * MakeB24(ngcbIFC *dev, const ngcb_route_t &route, int nb)
Create NGC2 B24 bias generator.
Definition ngcdcsSrvMod.cpp:40
int FrameStore(int id, const char *name, int flag)
Set frame attribute: store.
Definition ngcdcsSrvFrames.cpp:83
virtual int LoadSysCfg(ngcdcs_syscfg_t *newCfg, const char *fileName)
System configuration file loader.
Definition ngcdcsSrvSysCfg.cpp:462
virtual ngcdcsSHUTTER * ShutterMod(const char *spec, ngcbIFC *dev, const ngcb_route_t &route)
Shutter module factory.
Definition ngcdcsSrvMod.cpp:254
void SysCfgDefault(const char *cfg)
Apply default system configuration.
Definition ngcdcsSrvSysCfg.cpp:190
int ExpDrvLoaded(const char *module)
Check if exposure driver module is loaded.
Definition ngcdcsSrvExpDrv.cpp:284
ngcdcsSEQ0 * SeqFn(int idx)
Get index of sequencer functional module.
Definition ngcdcsSrvMod.cpp:375
void void void Log(int level, const char *format,...) __attribute__((format(printf
Logging method depending on level.
Definition ngcdcsSrvLog.cpp:242
int CoreShell()
Core shell.
Definition ngcdcsSrvUI.cpp:148
int HIRES_TIMER
High resolution polling interval.
Definition ngcdcsSRV.hpp:719
virtual ngcdcsLISA * MakeLISA(ngcbIFC *dev, const ngcb_route_t &route)
Create LISA camera module.
Definition ngcdcsSrvMod.cpp:126
int ExpAddWait(int fd, int id)
Add exposure waiting client (socket)
Definition ngcdcsSrvExp.cpp:1427
void Info(char *s)
Formatted server info.
Definition ngcdcsSrvInfo.cpp:29
int subState
Server sub-state value.
Definition ngcdcsSRV.hpp:686
char readModeName[64]
Current read-mode name.
Definition ngcdcsSRV.hpp:474
const char * Version()
Current version.
Definition ngcdcsSrvMain.cpp:428
void RpcTranslate(void *payload, size_t size, int request, int how, char *s)
Translate RPC payload to string.
Definition ngcdcsSrvInfo.cpp:2440
virtual int LoadDetCfg(ngcdcs_detcfg_t *newCfg, const char *fileName)
Detector configuration file loader.
Definition ngcdcsSrvDetCfg.cpp:719
int FatalError()
Check for fatal error.
Definition ngcdcsSrvStateCtrl.cpp:325
uint64_t FramesProcessed()
Number of processed frames during current exposure.
Definition ngcdcsSrvExp.cpp:89
virtual ngcdcsSEQ * MakeSEQ(ngcbIFC *dev, const ngcb_route_t &route, ngcbPARAM_LIST *p)
Create sequencer module.
Definition ngcdcsSrvMod.cpp:88
int autoMerge
Automatic merging.
Definition ngcdcsSRV.hpp:621
char subStateString[32]
Sub-state string (IDLE,BUSY,...)
Definition ngcdcsSRV.hpp:689
int Rtd(int idx)
Start RTD for acquistion module.
Definition ngcdcsSrvUI.cpp:383
int CldcEnable(int id)
Enable CLDC outputs.
Definition ngcdcsSrvSetupCLDC.cpp:24
void ClearState(int id=0)
Clear stored sequencer states.
Definition ngcdcsSrvStateCtrl.cpp:658
int CldcCalibrate(int id)
Calibrate voltages.
Definition ngcdcsSrvSetupCLDC.cpp:322
int DetCfg(const char *cfgFile)
Apply detector configuration.
Definition ngcdcsSrvDetCfg.cpp:152
int deviceEvents
Enable/disable device events.
Definition ngcdcsSRV.hpp:297
void DisableDbMirror()
Disable internal databse mirror.
Definition ngcdcsSrvDb.cpp:25
int SeqStart(int id=0, struct timeval *ts=NULL, double absTime=0.0)
Start (sequencer + acquisition process)
Definition ngcdcsSrvRunCtrl.cpp:1103
int GetPrg(int id, int num, char *s)
Formatted sequencer program.
Definition ngcdcsSrvInfo.cpp:2330
ngcdcsACQ * AcqMod(const char *spec, const ngcdcs_acq_cfg_t &cfg, ngcbPARAM_LIST *p)
Acquisition module factory.
Definition ngcdcsSrvMod.cpp:365
int AcqStart(int id=0)
Start (acquisition process)
Definition ngcdcsSrvRunCtrl.cpp:780
int ParseArguments(int argc, char **argv)
Parse options.
Definition ngcdcsSrvArgs.cpp:89
ngcdcsEXPDRV * expDrv
Exposure sequence driver.
Definition ngcdcsSRV.hpp:571
int SelftestSca(int id)
Selftest function for Sidecar ASIC module.
Definition ngcdcsSrvSelftest.cpp:299
virtual int LookupCB(const char *paramName, char *value)
Call-back for parameter lookup.
Definition ngcdcsSrvStatus.cpp:1598
int SelftestPreamp(int id)
Selftest function for preamplifier module.
Definition ngcdcsSrvSelftest.cpp:257
int AcqInfo(int id, char *s)
Formatted acquisition process info.
Definition ngcdcsSrvInfo.cpp:1005
virtual ngcdcsC20B20 * MakeC20B20(ngcbIFC *dev, const ngcb_route_t &route, int nc, int nb)
Create NGC2 bias generator.
Definition ngcdcsSrvMod.cpp:32
virtual void SysCfgOverride(ngcdcs_syscfg_t *newCfg)
Overrride system configuration (call-back)
Definition ngcdcsSrvSysCfg.cpp:232
Definition ngcdcsSUBFRM.hpp:48
Definition ngcdcsSVS.hpp:157
Definition ngcdcsTCCD.hpp:27
Definition ngcdcsTEC.hpp:136
unsigned long int ngcb_alarm_id
Definition ngcbALARM.hpp:49
#define ngcbDB_MAX_ATTR
Definition ngcbATTR.hpp:20
int(ngcbCMD_SRV::* ngcb_function_t)(ngcb_cmd_handle_t *handle, char *reply)
Definition ngcbCMD.hpp:307
#define ngcbEVT_PENDING
Definition ngcbIFC.hpp:43
#define ngcbVB_LOG
Definition ngcbSERVICE.hpp:25
#define ngcbVB_PRINT
Definition ngcbSERVICE.hpp:24
#define ngcbSIO_MAX_CON
Definition ngcbSIO.hpp:23
int ngcbGetTime(struct timeval *t)
Definition ngcbTime.c:40
#define ngcdcsACQ_MAX_PROC
Definition ngcdcsACQ.hpp:70
#define ngcdcsCTRL_MAX_SEQ
Definition ngcdcsCTRL.hpp:43
#define ngcdcsCTRL_MAX_DEV
Definition ngcdcsCTRL.hpp:55
int ngcdcsCfg2Arg(int argc, char **argv, char *argStr)
Definition ngcdcsSrvArgs.cpp:802
void ngcdcsSrvBreakHandler(int sig)
Definition ngcdcsSrvMain.cpp:35
#define ngcdcsLOG_INFO
Definition ngcdcsSRV.hpp:124
void ngcdcsSrvExitHandler(int sig)
Definition ngcdcsSrvMain.cpp:54
#define ngcdcsMAX_LOG
Definition ngcdcsSRV.hpp:119
#define ngcdcsTCCD_MAX_PROC
Definition ngcdcsTCCD.hpp:21
Definition ngcbIFC.hpp:575
Definition ngcbSTREAM.hpp:27
Definition ngcbSIO.hpp:63
Definition ngcbIFC.hpp:72
Definition ngcdcsEXP.hpp:102
Definition ngcdcsACQ_DATA.hpp:24
Definition ngcdcsCFG.hpp:1193
Definition ngcdcsEXP.hpp:141
Definition ngcdcsFINFO.hpp:462
Definition ngcdcsSRV.hpp:148
unsigned int nExpStart
Definition ngcdcsSRV.hpp:150
ngcdcs_srvinfo_t()
Constructor.
Definition ngcdcsSRV.hpp:158
unsigned int nExpCompl
Definition ngcdcsSRV.hpp:151
unsigned int nFile
Definition ngcdcsSRV.hpp:155
struct timeval startTime
Definition ngcdcsSRV.hpp:149
unsigned int nFram
Definition ngcdcsSRV.hpp:154
unsigned int nExpFail
Definition ngcdcsSRV.hpp:153
unsigned int nExpAbort
Definition ngcdcsSRV.hpp:152
Definition ngcdcsCFG.hpp:950
Definition ngcdcsSRV.hpp:134
virtual ~ngcdcs_wait_t()
Destructor.
Definition ngcdcsSRV.hpp:142
int id
Definition ngcdcsSRV.hpp:136
ngcdcs_wait_t()
Constructor.
Definition ngcdcsSRV.hpp:139
int fd
Definition ngcdcsSRV.hpp:135
Definition ngcdcsSEQ.hpp:156