Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Node.h

Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 #ifndef JOBC_NODE_H
00010 #define JOBC_NODE_H
00011 #include <string>
00012 #ifndef JOBC_RESOURCE_H
00013 #include "JobControl/Resource.h"
00014 #endif
00015 namespace edm  { class EventHandle; }
00016 namespace jobc { class Module;      }
00017 
00018 namespace jobc {
00021   class Node {
00022   public:
00023     Node();
00024     Node(const char* name, const char* ver="default", bool isSeq=false);
00025     Node(const Node& n);
00026     virtual ~Node();
00027 
00028     const char* Name()       const { return fName.c_str();       }
00029     const char* FolderName() const { return fFolderName.c_str(); }
00030     bool        IsSequence() const { return fIsSequence;         }
00031     
00032     void SetFilter    (bool onoff=true) { fFilterActive   = onoff; }
00033     void ReverseFilter(bool onoff=true) { fFilterReversed = onoff; }
00034     void ActivateReco (bool onoff=true) { fRecoActive     = onoff; }
00035     void ActivateAna  (bool onoff=true) { fAnaActive      = onoff; }
00036     
00037     void StepInToFolder()  const;
00038     void StepOutOfFolder() const;
00039     
00040     Node&   operator=(const Node& rhs);
00041     Module* GetModule();
00042     
00043     virtual Node* GetNode(const char* /*n*/) { return this; }
00044     virtual bool  Exec(edm::EventHandle& evt);
00045     virtual void  Print(const char* indent=0) const;
00046     virtual void  ResourceReport(bool printheader=false) const;
00047     
00048     double AnaTime()  const;
00049     double RecoTime() const;
00050   protected:
00051     Module* fModule;
00052     bool    fIsSequence;
00053     
00054     std::string  fName;           
00055     std::string  fVersion;        
00056     std::string  fFolderName;     
00057     bool         fFilterActive;   
00058     bool         fFilterReversed; 
00059     bool         fRecoActive;     
00060     bool         fAnaActive;      
00061     unsigned int fNpassReco;      
00062     unsigned int fNfailReco;      
00063     unsigned int fNpassAna;       
00064     unsigned int fNfailAna;       
00065     Resource     fResourceAna;    
00066     Resource     fResourceReco;   
00067   };
00068 }
00069 #endif // JOBCNODE_H
00070 
00071 

Generated on Wed Oct 15 02:35:26 2008 for NOvA Offline by  doxygen 1.3.9.1