00001 #ifndef SCAN_HEADER__H 00002 #define SCAN_HEADER__H 00003 00004 #include "dataTypes.h" 00005 #include "CommonWithDsp/processor.h" 00006 #include "CommonWithDsp/sctStructure.h" 00007 00008 struct ScanHeader { 00009 UINT16 version; //header version 00010 UINT16 length; //header length 00011 UINT32 runNumber; 00012 UINT32 scanNumber; 00013 00014 char moduleName[16]; //Serial number 00015 00016 UINT16 scanType; //As defined in ABCDscans.h 00017 UINT16 npoints; //Number of scan points 00018 00019 UINT32 size; //Size of data block in 16bit words 00020 UINT16 dataType; //Datatype as defined in dataTypes.h 00021 UINT16 width; //Width of data - either 0 (N/A), 16, 32bits 00022 00023 ABCDModule config; // Don't need to know how big it is (look at length) 00024 00025 UINT32 pntPoints; // Index to point data from beginning of file 00026 UINT32 pntEvents; // Index to event data from beginning of file 00027 UINT32 pntErrors; // Index to error data from beginning of file 00028 UINT32 pntData; // Index to histogram data from beginning of file 00029 }; 00030 00031 struct scan_result_ptrs { 00032 ScanHeader header; 00033 00034 FLOAT32* points; //Point values 00035 UINT32* nEvents; //No. events 00036 UINT32* nErrorEvents; //No. Error Events 00037 void* data; //data 00038 }; 00039 00040 #endif