Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:16:12

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef FUN4ALLRAW_FUN4ALLPRDFINPUTMANAGER_H
0004 #define FUN4ALLRAW_FUN4ALLPRDFINPUTMANAGER_H
0005 
0006 #include <fun4all/Fun4AllInputManager.h>
0007 
0008 #include <string>
0009 
0010 class Event;
0011 class Eventiterator;
0012 class PHCompositeNode;
0013 class SyncObject;
0014 
0015 class Fun4AllPrdfInputManager : public Fun4AllInputManager
0016 {
0017  public:
0018   Fun4AllPrdfInputManager(const std::string &name = "DUMMY", const std::string &prdfnodename = "PRDF", const std::string &topnodename = "TOP");
0019   ~Fun4AllPrdfInputManager() override;
0020   int fileopen(const std::string &filenam) override;
0021 
0022   // cppcheck-suppress virtualCallInConstructor
0023   int fileclose() override;
0024   int run(const int nevents = 0) override;
0025 
0026   void Print(const std::string &what = "ALL") const override;
0027   int ResetEvent() override;
0028   int PushBackEvents(const int i) override;
0029   int GetSyncObject(SyncObject **mastersync) override;
0030   int SyncIt(const SyncObject *mastersync) override;
0031   int HasSyncObject() const override { return 1; }
0032   std::string GetString(const std::string &what) const override;
0033 
0034  private:
0035   int m_Segment = -999;
0036   int m_EventsTotal = 0;
0037   int m_EventsThisFile = 0;
0038   PHCompositeNode *m_topNode = nullptr;
0039   Event *m_Event = nullptr;
0040   Event *m_SaveEvent = nullptr;
0041   Eventiterator *m_EventIterator = nullptr;
0042   SyncObject *m_SyncObject = nullptr;
0043   std::string m_PrdfNodeName;
0044 };
0045 
0046 #endif /* FUN4ALL_FUN4ALLPRDFINPUTMANAGER_H */