LOGO

RestFrames  v1.0.1
RestFrames HEP Event Analysis Software Library
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
RestFrames::Group Class Referenceabstract

Detailed Description

abstract base class for all Group objects

The Group class is a very important class, its main function is to group separately the invisible objects and indistiguisable visible objects.

Definition at line 46 of file Group.hh.

Inheritance diagram for RestFrames::Group:
Inheritance graph
[legend]

Public Member Functions

 Group (const std::string &sname, const std::string &stitle)
 Standard constructor. More...
 
 Group ()
 Empty constructor.
 
virtual void Clear ()
 Clears Group of all connections to other objects.
 
bool IsInvisibleGroup () const
 Is this an InvisibleGroup? (true/false)
 
bool IsCombinatoricGroup () const
 Is this a CombinatoricGroup? (true/false)
 
GroupType GetType () const
 Returns group (GroupType) type. More...
 
virtual void AddFrame (RestFrame &frame)
 Adds a frame (RestFrame) to this group. More...
 
virtual void AddFrames (const RestFrameList &frames)
 Adds a list of RestFrames to this group. More...
 
virtual void AddJigsaw (Jigsaw &jigsaw)
 Adds a jigsaw (Jigsaw) to current group. More...
 
virtual void RemoveFrame (RestFrame &frame)
 Removes a frame (RestFrame) from this group. More...
 
void RemoveFrames ()
 Removes all frames (RestFrame) from this group. More...
 
void RemoveJigsaw (Jigsaw &jigsaw)
 Removes a jigsaw (Jigsaw) from this group. More...
 
void RemoveJigsaws ()
 Removes all jigsaws (Jigsaw) from current group. More...
 
bool ContainsFrame (const RestFrame &frame) const
 Is frame (RestFrame) contained in this group? (true/false) More...
 
int GetNFrames () const
 Returns the number of frames (RestFrame) contained in this group. More...
 
const RestFrameListGetListFrames () const
 Returns a list of frames (RestFrame) contained in this group. More...
 
const JigsawListGetListJigsaws () const
 Returns a list of jigsaws (Jigsaw) contained in this group. More...
 
- Public Member Functions inherited from RestFrames::RFBase
 RFBase (const std::string &sname, const std::string &stitle, int key)
 Standard constructor. More...
 
 RFBase ()
 Empty constructor.
 
bool IsEmpty () const
 Checks whether this is default (empty) instance of class.
 
bool operator! () const
 Tests whether key is the same as this.
 
void Print (LogType type) const
 Print information associated with object.
 
virtual std::string PrintString (LogType type) const
 String of information associated with object.
 
RFKey GetKey () const
 gets object identification key
 
std::string GetName () const
 Returns object name.
 
std::string GetTitle () const
 Returns object title.
 
bool IsSame (const RFKey &key) const
 Tests whether key is the same as this.
 
bool IsSame (const RFBase &obj) const
 Tests whether obj is the same as this.
 
bool operator== (const RFKey &key) const
 Tests whether key is the same as this.
 
bool operator== (const RFBase &obj) const
 Tests whether obj is the same as this.
 
bool operator!= (const RFKey &key) const
 Tests whether key is the same as this.
 
bool operator!= (const RFBase &obj) const
 Tests whether obj is the same as this.
 

Static Public Member Functions

static GroupEmpty ()
 Returns empty Group. More...
 
- Static Public Member Functions inherited from RestFrames::RFBase
static RFBaseEmpty ()
 Returns empty RFBase. More...
 

Protected Member Functions

virtual bool InitializeAnalysis ()
 
virtual bool ClearEvent ()=0
 
virtual bool AnalyzeEvent ()=0
 
virtual StateInitializeParentState ()=0
 
virtual StateGetParentState () const
 
int GetNChildStates () const
 
virtual StateGetChildState (int i) const
 
StateGetChildState (const RestFrame &frame) const
 
StateList GetChildStates (const RestFrameList &frames) const
 
RestFrame const & GetLabFrame () const
 
- Protected Member Functions inherited from RestFrames::RFBase
bool SetBody (bool body) const
 
bool SetMind (bool mind) const
 
bool SetSpirit (bool spirit) const
 
virtual bool IsSoundBody () const
 
virtual bool IsSoundMind () const
 
virtual bool IsSoundSpirit () const
 
void UnSoundBody (const std::string &function) const
 
void UnSoundMind (const std::string &function) const
 
void UnSoundSpirit (const std::string &function) const
 
void AddDependent (RFBase *dep)
 pointer to RFBase object owned by this one
 

Protected Attributes

GroupType m_Type
 
Statem_GroupStatePtr
 
- Protected Attributes inherited from RestFrames::RFBase
RFLog m_Log
 
RFBasem_This
 

Friends

class TreePlot
 
class ReconstructionFrame
 
class LabRecoFrame
 
class Jigsaw
 

Additional Inherited Members

- Static Protected Attributes inherited from RestFrames::RFBase
static const TVector3 m_Empty3Vector
 
static const TLorentzVector m_Empty4Vector
 

Constructor & Destructor Documentation

◆ Group()

RestFrames::Group::Group ( const std::string &  sname,
const std::string &  stitle 
)

Standard constructor.

Parameters
snameClass instance name used for log statements
stitleClass instance title used in figures

Definition at line 40 of file Group.cc.

Member Function Documentation

◆ AddFrame()

void RestFrames::Group::AddFrame ( RestFrame frame)
virtual

Adds a frame (RestFrame) to this group.

Parameters
frameRestFrame to be added

Method for adding a RestFrame to this group. Links frame's group to this group

Warning
frame will not be added if it is not a ReconstructionFrame type frame.

Reimplemented in RestFrames::InvisibleGroup, and RestFrames::CombinatoricGroup.

Definition at line 83 of file Group.cc.

◆ AddFrames()

void RestFrames::Group::AddFrames ( const RestFrameList frames)
virtual

Adds a list of RestFrames to this group.

Parameters
framesList of RestFrames to be added

Method for adding a list of RestFrames to this group. Calls AddFrame() independently for each frame of the frames list.

Definition at line 93 of file Group.cc.

◆ AddJigsaw()

void RestFrames::Group::AddJigsaw ( Jigsaw jigsaw)
virtual

Adds a jigsaw (Jigsaw) to current group.

Parameters
jigsawJigsaw to be added

Method for adding a jigsaw to a group. If jigsaw belongs to another group, it is removed from that group and added to this one.

Warning
jigsaw will not be added if it already belongs to this group.

Reimplemented in RestFrames::InvisibleGroup, and RestFrames::CombinatoricGroup.

Definition at line 99 of file Group.cc.

◆ ContainsFrame()

bool RestFrames::Group::ContainsFrame ( const RestFrame frame) const

Is frame (RestFrame) contained in this group? (true/false)

Parameters
frameFrame that could be contained

Definition at line 157 of file Group.cc.

◆ Empty()

Group & RestFrames::Group::Empty ( )
static

Returns empty Group.

Returns
Empty Group

Definition at line 58 of file Group.cc.

◆ GetListFrames()

const RestFrameList & RestFrames::Group::GetListFrames ( ) const

Returns a list of frames (RestFrame) contained in this group.

Returns
List of frames contained in this group

Definition at line 165 of file Group.cc.

◆ GetListJigsaws()

const JigsawList & RestFrames::Group::GetListJigsaws ( ) const

Returns a list of jigsaws (Jigsaw) contained in this group.

Returns
List of jigsaws contained in this group

Definition at line 169 of file Group.cc.

◆ GetNFrames()

int RestFrames::Group::GetNFrames ( ) const

Returns the number of frames (RestFrame) contained in this group.

Returns
Number of frames (RestFrame) in this group

Definition at line 161 of file Group.cc.

◆ GetType()

GroupType RestFrames::Group::GetType ( ) const
inline

Returns group (GroupType) type.

Returns
Group type

Definition at line 73 of file Group.hh.

◆ RemoveFrame()

void RestFrames::Group::RemoveFrame ( RestFrame frame)
virtual

Removes a frame (RestFrame) from this group.

Parameters
frameFrame to be removed

Method for removing the RestFrame frame from this group.

Warning
frame will not be removed if it is not contained in this group

Reimplemented in RestFrames::CombinatoricGroup.

Definition at line 117 of file Group.cc.

◆ RemoveFrames()

void RestFrames::Group::RemoveFrames ( )

Removes all frames (RestFrame) from this group.

Method for removing all frames from this group. Calls RemoveFrame() independently for each frame contained in this group.

Definition at line 127 of file Group.cc.

◆ RemoveJigsaw()

void RestFrames::Group::RemoveJigsaw ( Jigsaw jigsaw)

Removes a jigsaw (Jigsaw) from this group.

Parameters
jigsawJigsaw to be removed

Method for removing Jigsaw jigsaw from this group.

Warning
jigsaw will not be removed if it is not contained in this group.

Definition at line 134 of file Group.cc.

◆ RemoveJigsaws()

void RestFrames::Group::RemoveJigsaws ( )

Removes all jigsaws (Jigsaw) from current group.

Method for removing all jigsaws from this group. Calls RemoveJigsaw() independently for each jigsaw contained in this group.

Definition at line 146 of file Group.cc.

#include "RestFrames/Group.hh"

Collaboration diagram for RestFrames::Group:
Collaboration graph
[legend]

The documentation for this class was generated from the following files: