RestFrames
v1.0.1
RestFrames HEP Event Analysis Software Library
|
Go to the documentation of this file.
30 #ifndef CombinatoricGroup_HH
31 #define CombinatoricGroup_HH
37 namespace RestFrames {
87 int N,
bool exclusive_N =
false);
99 int& N,
bool& exclusive_N)
const;
129 int charge_num,
int charge_den);
164 virtual bool ClearEvent();
165 virtual bool AnalyzeEvent();
174 mutable std::map<const RestFrame*, int> m_NElementsForFrame;
175 mutable std::map<const RestFrame*, bool> m_NExclusiveElementsForFrame;
virtual void Clear()
Clears CombinatoricGroup of all connections to other objects.
virtual void GetNElementsForFrame(const RestFrame &frame, int &N, bool &exclusive_N) const
Tells number of elements required for this frame.
abstract base class for all Frame objects
abstract base class for all Group objects
int GetNElementsInFrame(const RestFrame &frame) const
Returns number of elements in a frame.
CombinatoricGroup()
Empty constructor.
RFKey AddLabFrameFourVector(const TLorentzVector &V, const RFCharge &charge=RFCharge())
Adds four-vector (TLorentzVector) in the lab frame.
RestFrame const & GetFrame(const RFKey &key) const
Returns frame (RestFrame) that contains key
virtual void RemoveFrame(RestFrame &frame)
Removes a frame (RestFrame) from this combinatoric group.
virtual void AddJigsaw(Jigsaw &jigsaw)
Adds a jigsaw (Jigsaw) to this combinatoric group.
static CombinatoricGroup & Empty()
Returns empty CombinatoricGroup.
TLorentzVector GetLabFrameFourVector(const RFKey &key) const
Returns lab frame's four-vector (TLorentzVector) of frame that contains key
abstract base class for all Jigsaw objects
virtual void SetNElementsForFrame(const RestFrame &frame, int N, bool exclusive_N=false)
Assigns to frame a required min/max number of elements.
virtual void AddFrame(RestFrame &frame)
Adds a frame (RestFrame) to this combinatoric group.