Base class for a Frame. More...
#include <Frame.h>
Public Member Functions | |
virtual Bool_t | AddSubFrame (const Frame &) |
Add a subframe to that frame (only if composite) More... | |
virtual void | ClearFrameStatus ()=0 |
To clear to kGood the current status of this frame. More... | |
virtual Bool_t | Configure (const char *name, const char *option) |
configuration from/to a file More... | |
virtual Bool_t | Configure (ConfigurationFrame *, const char *option) |
to reconfigure the interface for that frame More... | |
virtual Bool_t | Copy (const Char_t *, UInt_t, const char= 'b')=0 |
copy a buffer to this Frame More... | |
virtual Bool_t | Copy (const Frame *)=0 |
copy a frame into this one. Theyy have to have the same prototype More... | |
virtual void | Dump (const Char_t *filename, Bool_t anew=false) const =0 |
Dump the content of the frame in a file (for debugging) More... | |
virtual Bool_t | Dump (FILE *) const =0 |
virtual Bool_t | Export (BufferIO &buf) const =0 |
Export the content of the frame in a buffer. More... | |
virtual Bool_t | ExportData (BufferIO &buf) const =0 |
Export the content of the frame (data part only) in a buffer. More... | |
virtual void | FastReset ()=0 |
FastReset the current frame, means the data part keep the previous values. More... | |
virtual Short_t | GetCheckLevel () const |
virtual BaseBuffer::EStatus | GetFrameStatus () const =0 |
To get the current status of this frame. More... | |
virtual Key * | GetKey ()=0 |
To get the Key associated to this frame. More... | |
virtual const Key * | GetKey () const =0 |
To get the Key associated to this frame. More... | |
virtual UInt_t | GetLength () const =0 |
total length for that frame More... | |
virtual UInt_t | GetNbSubFrame () const |
Returns the number of sub-frames composing this frame. Scan have to be called first. More... | |
virtual const BufferIO * | GetRealBuffer () const =0 |
give access to the underlying buffer of the data part More... | |
const FactoryItem & | GetSignature () const |
Signature of that frame. More... | |
virtual const Key * | GetSubKey (UInt_t) const =0 |
Returns one of the sub-key in case this is a composite frame. More... | |
virtual Bool_t | IsASubFrame (const Frame &) |
to check if a subframe could be added to the composite frame More... | |
virtual Bool_t | IsComposite () const |
tells if this frame is a composite frame i.e. if it is composed of sub-frames More... | |
virtual Bool_t | IsLinked () const =0 |
true if the underlying buffers have been linked. More... | |
virtual Bool_t | Link (const Char_t *, UInt_t, const char= 'b')=0 |
Link a buffer to this Frame. More... | |
virtual Bool_t | Link (const BufferIO &, UInt_t, const char= 'b')=0 |
Link a buffer to this Frame. More... | |
virtual Bool_t | Link (const Frame *)=0 |
Link a frame into this one. They have to have the same prototype. More... | |
virtual Bool_t | LinkSubFrame (UInt_t, Frame *) |
Attach the sub-frame corresponding to the given subkey # to the Frame given in the second argument. More... | |
virtual Bool_t | Load (FILE *)=0 |
load a Frame from a C file (for debugging) More... | |
virtual UInt_t | Read () |
It reads the content into dedicated structures from the Frame (data part) More... | |
virtual void | Reset ()=0 |
Reset the current frame. More... | |
virtual UInt_t | Scan () |
Scan this Frame. If it is a composite frame, it looks for the keys of sub-frames. More... | |
virtual void | SetCheckLevel (Short_t checklevel) |
The number of tests (and the speed !) once writing/reading in Frame increase with this level. More... | |
virtual void | Stallion (UInt_t repetition=4u)=0 |
Fill the frame with a given pattern (used for ADF test) More... | |
virtual Bool_t | TransfertSubFrame (const Frame &, UInt_t) |
copy the sub-frame #i to the Frame given in the second argument More... | |
virtual void | Unlink ()=0 |
UnLink a buffer to this Frame. More... | |
virtual UInt_t | Write () |
It writes to the Frame the content of the dedicated structures. More... | |
virtual | ~Frame () |
Protected Member Functions | |
virtual Bool_t | DoConfigure (std::istream &) |
configure this from an input stream More... | |
virtual Bool_t | DoConfigure (std::ostream &) |
write the configuration in an output stream More... | |
Frame () | |
To avoid direct creation of a Frame. More... | |
Frame (Key *) | |
void | SetSignature (FactoryItem item) |
to change the signature of that frame More... | |
Friends | |
class | FrameFactory |
Base class for a Frame.
A Frame is an association of a key and a buffer to fill in/out data. The creation of a new Frame is performed through FrameFactory.
A block of memory can be linked to a Frame via the Link method. Once successfully linked, any methods provided by a particular Frame are available to deal with the content of the Frame.
A Frame could be composed of sub-frames. In this case IsComposite returns true (false otherwise = default). If a Frame is a composite frame, the Scan method operates on the data part to extract a list of keys for each sub-frame. This list of keys is kept in a stack. The GetNbSubFrame gives the number of sub-frames found.
The LinkSubFrame and CopySubFrame methods could be then used to extract a particular sub-frame.
A "non-composite" frame contains data needed by an algorithm. Thus high-level structures (kind of sub-events) are associated with a particular frame (see for instance PSAFrame). These structures are all filled from the Frame by calling the Read method. As well, once you have fill them with the appropriate results from your algorithm, their content is written in the Frame to be sent back on the data flow.