00001 #ifndef H5DATATYPES_RAYONIXCONFIGV1_H
00002 #define H5DATATYPES_RAYONIXCONFIGV1_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #include "hdf5pp/Group.h"
00030 #include "pdsdata/psddl/rayonix.ddl.h"
00031
00032
00033
00034
00035
00036 namespace H5DataTypes {
00037
00038
00039
00040
00041 class RayonixConfigV1 {
00042 public:
00043
00044 typedef Pds::Rayonix::ConfigV1 XtcType ;
00045
00046 RayonixConfigV1 () {}
00047 RayonixConfigV1 ( const XtcType& data ) ;
00048
00049 static hdf5pp::Type stored_type() ;
00050 static hdf5pp::Type native_type() ;
00051
00052
00053 static void store( const XtcType& config, hdf5pp::Group location ) ;
00054
00055 static size_t xtcSize( const XtcType& xtc ) { return sizeof(xtc) ; }
00056
00057 private:
00058
00059 uint8_t binning_f;
00060 uint8_t binning_s;
00061 uint32_t exposure;
00062 uint32_t trigger;
00063 uint16_t rawMode;
00064 uint16_t darkFlag;
00065 uint32_t readoutMode;
00066 char deviceID[40];
00067
00068 };
00069
00070 }
00071
00072 #endif // H5DATATYPES_RAYONIXCONFIGV1_H