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

RawBlockProxy.h

Go to the documentation of this file.
00001 
00002 // $Id: RawBlockProxy.h,v 1.4 2002/10/16 08:11:11 rhatcher Exp $
00003 //
00004 // This class servers as an intermediary between the module registry
00005 // and job modules created by the user. It helps hide the details of
00006 // job modules from the registry and helps hide some details from the
00007 // user. It also helps guarantee that modules are not created if they
00008 // are not used saving on memory and start-up time.
00009 //
00010 // Initial    JobCModuleProxy  by messier@huhepl.harvard.edu
00011 // Adapted to RawBlockProxy    by rhatcher@fnal.gov (2001-04-13)
00012 //
00014 #ifndef RAWBLOCKPROXY_H
00015 #define RAWBLOCKPROXY_H
00016 
00017 #ifndef IOSFWD
00018 #include <iosfwd>
00019 #define IOSFWD
00020 #endif
00021 
00022 // not inheriting from TObject so we need an explicit Rtypes
00023 #ifndef ROOT_Rtypes
00024 #if !defined(__CINT__) || defined(__MAKECINT__)
00025 #include "Rtypes.h"
00026 #endif
00027 #endif
00028 
00029 class RawDataBlock;
00030 
00031 class RawBlockProxy 
00032 {
00033 
00034    friend std::ostream& operator<<(std::ostream& os, const RawBlockProxy& rbp);
00035 
00036 public:
00037    RawBlockProxy();
00038    virtual ~RawBlockProxy() { ; }
00039 
00040    const Char_t  *GetName() const    { return fName;    }
00041    const Bool_t   IsDCS() const      { return fIsDCS;   }
00042    const Int_t    GetMajorId() const { return fMajorId; }
00043 
00044    virtual RawDataBlock *CreateRawDataBlock(const Int_t* block);
00045 
00046 protected:
00047 
00048    const char  *fName;     // Name of the RawDataBlock
00049          Bool_t fIsDCS;    // DAQ or DCS
00050          Int_t  fMajorId;  // Major Id
00051 
00052 };
00053 
00054 #endif

Generated on Sat Nov 21 22:47:28 2009 for loon by  doxygen 1.3.9.1