/* * PulserMap.h * * Header files to be included in the SNL code. The functions defined here * will be called from the SNL code as C-functions. * * Created on: Aug 17, 2015 * Author: Hovanes Egiyan */ #ifndef PULSERMAP_H_ #define PULSERMAP_H_ #ifdef __cplusplus extern "C" { #endif // A structure to interface with the structure with pointers to the PV arrays. // It gets included in the SNL code as well as into the PulserPV.hh clas definition file. struct pvStructure { unsigned int offset; unsigned int nElm; unsigned int shortFlag; unsigned int unsignedFlag; unsigned int doubleFlag; short* shortPtr; unsigned* unsignedPtr; double* doublePtr ; }; void pulserUsePVs( const char* detName, SS_ID ssID, struct pvStructure* pvs ); void pulserAssignPVs( const char* detName ); /*short pulserInputsChanged( const char* detName ); */ void pulserRegisterFlag( const char* detName, SS_ID ssID, EV_ID flagID ); void pulserSwitch( const char* detName, const char* pulserID, const short state ); void pulserSetWidth( const char* detName, const char* pulserID, const unsigned width ); void pulserSetFrequency( const char* detName, const char* pulserID, const double freq ); void pulserSetNPulses( const char* detName, const char* pulserID, const unsigned n ); void pulserSetDelay( const char* detName, const char* pulserID, const unsigned delay ); short pulserGetStatus( const char* detName, const char* pulserID ); unsigned pulserGetWidth( const char* detName, const char* pulserID ); double pulserGetFrequency( const char* detName, const char* pulserID ); unsigned pulserGetNPulses( const char* detName, const char* pulserID ); unsigned pulserGetDelay( const char* detName, const char* pulserID ); #ifdef __cplusplus }; #endif #endif /* PULSERMAP_H_ */