H5DataTypes/include/XtcClockTimeStamp.h

Go to the documentation of this file.
00001 #ifndef H5DATATYPES_XTCCLOCKTIMESTAMP_H
00002 #define H5DATATYPES_XTCCLOCKTIMESTAMP_H
00003 
00004 //--------------------------------------------------------------------------
00005 // File and Version Information:
00006 //      $Id: XtcClockTimeStamp.h 4805 2012-11-21 22:35:53Z salnikov@SLAC.STANFORD.EDU $
00007 //
00008 // Description:
00009 //      Class XtcClockTimeStamp, combination of Clocktime and Timestamp data
00010 //
00011 //------------------------------------------------------------------------
00012 
00013 //-----------------
00014 // C/C++ Headers --
00015 //-----------------
00016 
00017 //----------------------
00018 // Base Class Headers --
00019 //----------------------
00020 
00021 //-------------------------------
00022 // Collaborating Class Headers --
00023 //-------------------------------
00024 #include "hdf5pp/Group.h"
00025 #include "pdsdata/xtc/ClockTime.hh"
00026 #include "pdsdata/xtc/TimeStamp.hh"
00027 
00028 //------------------------------------
00029 // Collaborating Class Declarations --
00030 //------------------------------------
00031 
00032 //              ---------------------
00033 //              -- Class Interface --
00034 //              ---------------------
00035 
00036 /**
00037  *
00038  *  This software was developed for the LUSI project.  If you use all or
00039  *  part of it, please give an appropriate acknowledgment.
00040  *
00041  *  @see AdditionalClass
00042  *
00043  *  @version $Id: XtcClockTimeStamp.h 4805 2012-11-21 22:35:53Z salnikov@SLAC.STANFORD.EDU $
00044  *
00045  *  @author Andrei Salnikov
00046  */
00047 
00048 namespace H5DataTypes {
00049 
00050 class XtcClockTimeStamp  {
00051 public:
00052 
00053   // Default constructor
00054   XtcClockTimeStamp () {}
00055   XtcClockTimeStamp ( const Pds::ClockTime& time, const Pds::TimeStamp& ts ) ;
00056 
00057   static hdf5pp::Type stored_type() ;
00058   static hdf5pp::Type native_type() ;
00059 
00060   static void storeFullTimeStamp(bool val) { s_storeFullTimeStamp = val; }
00061 
00062 private:
00063 
00064   uint32_t seconds;
00065   uint32_t nanoseconds;
00066   uint32_t ticks;
00067   uint32_t fiducials;
00068   uint32_t control;
00069   uint32_t vector;
00070 
00071   static bool s_storeFullTimeStamp;
00072 };
00073 
00074 } // namespace H5DataTypes
00075 
00076 #endif // H5DATATYPES_XTCCLOCKTIMESTAMP_H

Generated on 19 Dec 2016 for PSDMSoftware by  doxygen 1.4.7