JSFEventBuf
class description - source file - inheritance tree
public:
JSFEventBuf()
JSFEventBuf(const char* name, const char* title, JSFModule* module)
JSFEventBuf(JSFModule* module, const char* name, const char* title)
JSFEventBuf(const JSFEventBuf&)
virtual ~JSFEventBuf()
static TClass* Class()
JSFEventBuf* FindEventBuf(const Char_t* name)
Int_t GetDate()
Int_t GetEventNumber()
Int_t GetRunNumber()
Int_t GetTime()
virtual TClass* IsA() const
JSFModule* Module()
Bool_t SameEvent(JSFEventBuf* buf)
void SetEventNumber(Int_t nevent)
void SetHeader()
void SetRunNumber(Int_t nrun)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
TTree* Tree()
private:
Int_t fRunNumber Run number
Int_t fEventNumber Event number
Int_t fDate event date.
Int_t fTime event time
protected:
JSFModule* fModule ! Pointer which defines this Event Buffer
TTree* fTree ! Pointer to tree
See also
-
JSFGeneratorBuf, JSFMEGeneratorBuf, JSFQuickSimBuf, JSFSIMDSTBuf, JSFSpringBuf
JSFModule
Basic unit of data analysis
User Analysis class should be derived from this class.
Basic member functions for data analysis are,
Initialize()
BeginRun(Int_t RunNumber)
Process(Int_t EventNumber)
EndRun()
Terminate()
User class should override these functions.
fFile is a pointer data member to the file. It is set by JSFSteer
and can be READ/WRITE/UPDATE. (UPDATE may not work properly yet.)
Event data is stored in the tree, Event, in the "fFile". Other
configuration data are stored as an Keyed file in the "fFile".
Directory and key names are,
Initialize() --> /conf/init/[modulename]
BeginRun(nnn) --> /conf/beginNNNNNN/[modulename]
EndRun(nnn) --> /conf/endNNNNN/[modulename]
Terminate() --> /conf/term/[modulename]
Note that key names have been changed since JSF-1-11, to
simplfy the directory structure.
The member function, ConfDirectory(), creates and cd to proper
directory. How to write/read data is depend on the implementaion
of the class.
Process is called only when the "fFile" is writable, while other
functions are called evenif fFile is not writable. If Initialize,
BeginRun, EndRun, or Terminate is called when fFile is not writable,
they should prepare data member of the class properly.
Event data is saved in the object pointed by fEventBuf, which is
the JSFEventBuf object. JSFModule does not create JSFEventBuf.
User class dereived from JSFModule should define fEventBuf.
The member function, MakeBranch() and SetBranch() is called from
JSFSteer::Initialize(). MakeBranch() defines the tree branch to
store event data, while SetBranch() set addresses to read tree data.
Usually, user read event data by tree->Fill(), which readin all branches
in the tree. If the branch address is not set properly, the program will
crash. When reading the root data, JSFSteer read the header and creats
the objetcs required to get tree data.
$Id: JSFModule.cxx,v 1.7 2001/11/06 05:17:15 miyamoto Exp $
JSFEventBuf()
JSFEventBuf(const char *name, const char *title, JSFModule *module)
:TNamed(name,title)
Default constructor of JSF module.
JSFEventBuf(JSFModule *module, const char *name, const char *title)
:TNamed(name,title)
Default constructor of JSF module.
void SetHeader()
Set header information of event buffer.
JSFEventBuf* FindEventBuf(const Char_t *name)
Find a pointer to the EventBuf objects in the same tree as this
objects.
Note that each EventBuf objects are saved as Branch of same tree.
Inline Functions
Int_t GetRunNumber()
Int_t GetEventNumber()
Int_t GetDate()
Int_t GetTime()
void SetRunNumber(Int_t nrun)
void SetEventNumber(Int_t nevent)
JSFModule* Module()
TTree* Tree()
Bool_t SameEvent(JSFEventBuf* buf)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
JSFEventBuf JSFEventBuf(const JSFEventBuf&)
void ~JSFEventBuf()
Last update: Tue Jan 20 15:53:57 2004
ROOT page - Home page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.