/* * ProfilerMap.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: Sep 26, 2015 * Author: Hovanes Egiyan */ #ifndef _PROFILERMAP_H_ #define _PROFILERMAP_H_ //#include "seqCom.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 ProfilerPV.hh class definition file. struct pvStructure { unsigned int offset; unsigned int nElm; unsigned int shortFlag; unsigned int unsignedFlag; unsigned int doubleFlag; unsigned int waveFlag; short* shortPtr; unsigned* unsignedPtr; double* doublePtr; long* wavePtr; }; void profilerUsePVs( const char* detName, SS_ID ssID, struct pvStructure* pvs ); void profilerAssignPVs( const char* detName ); void profilerRegisterFlag( const char* detName, const char* planeID, SS_ID ssID, EV_ID flagID, const char* flgaName ); int profilerIsSimulation( const char* detName, const char* plane ); void profilerSetSmoothOption( const char* detName, const char* plane, const short opt ); void profilerSetAccumulateOption( const char* detName, const char* plane, const short opt ); void profilerResetScalers( const char* detName, const char* plane, const short reset ); void profilerFitWithCauchy( const char* detName, const char* plane ); void profilerGetMean( const char* detName, const char* plane, double* meanArrayPtr); void profilerGetWidth( const char* detName, const char* plane, double* widthArrayPtr ); void profilerGetAmplitude( const char* detName, const char* plane, double* amplArrayPtr ); void profilerGetSignal( const char* detName, const char* plane, double* sigArrayPtr ); void profilerGetBkg( const char* detName, const char* plane, double* bkgArrayPtr ); void profilerGetSum( const char* detName, const char* plane, double* sumArrayPtr ); double profilerGetTotalRate( const char* detName, const char* plane ); double profilerGetSummedMean( const char* detName, const char* plane ); double profilerGetSummedWidth( const char* detName, const char* plane ); double profilerGetSummedAmplitude( const char* detName, const char* plane ); double profilerGetSummedSignal( const char* detName, const char* plane ); double profilerGetSummedBkg( const char* detName, const char* plane ); double profilerGetSummedMeanErr( const char* detName, const char* plane ); double profilerGetSummedWidthErr( const char* detName, const char* plane ); double profilerGetSummedAmplitudeErr( const char* detName, const char* plane ); double profilerGetSummedSignalErr( const char* detName, const char* plane ); double profilerGetSummedBkgErr( const char* detName, const char* plane ); void profilerGetValues( const char* detName, const char* plane, double* valueArrayPtr ); void profilerGetAxis( const char* detName, const char* plane, double* axisArrayPtr ); #ifdef __cplusplus }; #endif #endif /* _PROFILERMAP_H_ */