PSXtcInput/include/XtcIndexInputModule.h

Go to the documentation of this file.
00001 #ifndef PSXTCINPUT_XTCINDEXINPUTMODULE_H
00002 #define PSXTCINPUT_XTCINDEXINPUTMODULE_H
00003 
00004 //--------------------------------------------------------------------------
00005 // File and Version Information:
00006 //      $Id: XtcIndexInputModule.h 7696 2014-02-27 00:40:59Z salnikov@SLAC.STANFORD.EDU $
00007 //
00008 // Description:
00009 //      Class XtcIndexInputModule.
00010 //
00011 //------------------------------------------------------------------------
00012 
00013 //-----------------
00014 // C/C++ Headers --
00015 //-----------------
00016 #include <string>
00017 
00018 //----------------------
00019 // Base Class Headers --
00020 //----------------------
00021 #include "PSXtcInput/XtcInputModuleBase.h"
00022 
00023 //-------------------------------
00024 // Collaborating Class Headers --
00025 //-------------------------------
00026 #include "PSXtcInput/Index.h"
00027 #include "PSXtcInput/DgramPieces.h"
00028 
00029 //------------------------------------
00030 // Collaborating Class Declarations --
00031 //------------------------------------
00032 
00033 
00034 //              ---------------------
00035 //              -- Class Interface --
00036 //              ---------------------
00037 
00038 namespace PSXtcInput {
00039 
00040 /**
00041  *  @ingroup PSXtcInput
00042  *  
00043  *  @brief Psana input module for reading XTC files.
00044  *
00045  *  This software was developed for the LCLS project.  If you use all or 
00046  *  part of it, please give an appropriate acknowledgment.
00047  *
00048  *  @version $Id: XtcIndexInputModule.h 7696 2014-02-27 00:40:59Z salnikov@SLAC.STANFORD.EDU $
00049  *
00050  *  @author Andrei Salnikov
00051  */
00052 
00053   class XtcIndexInputModule : public XtcInputModuleBase {
00054 public:
00055 
00056   /// Constructor takes the name of the module.
00057   XtcIndexInputModule (const std::string& name) ;
00058 
00059   /// Method which is called once at the beginning of the job
00060   virtual void beginJob(Event& evt, Env& env);
00061 
00062   psana::Index& index() {return _idx;}
00063 
00064   // Destructor
00065   virtual ~XtcIndexInputModule () ;
00066 
00067 protected:
00068   
00069 private:
00070   std::queue<DgramPieces> _queue;
00071   Index _idx;
00072 };
00073 
00074 } // namespace PSXtcInput
00075 
00076 #endif // PSXTCINPUT_XTCINDEXINPUTMODULE_H

Generated on 19 Dec 2016 for PSANAclasses by  doxygen 1.4.7