AliRoot Core  da88d91 (da88d91)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMUONNode Class Reference

A node of a segment tree. More...

#include <AliMUONNode.h>

Inheritance diagram for AliMUONNode:

Public Member Functions

 AliMUONNode (Double_t a, Double_t b, Double_t midpoInt_t)
 
virtual ~AliMUONNode ()
 
void Print (const char *opt="") const
 
void Contribution (Double_t b, Double_t e, TObjArray &stack)
 
void InsertInterval (Double_t b, Double_t e, TObjArray &stack)
 
void DeleteInterval (Double_t b, Double_t e, TObjArray &stack)
 
Bool_t IsFullyContained (Double_t b, Double_t e) const
 
void Update ()
 
void Demote ()
 
void Promote ()
 
Int_t C () const
 Get cardinality. More...
 
void C (Int_t v)
 Increase cardinality. More...
 
Int_t P () const
 Get potent state. More...
 
void LeftNode (AliMUONNode *n)
 Set left node. More...
 
void RightNode (AliMUONNode *n)
 Set right node. More...
 

Private Member Functions

 AliMUONNode (const AliMUONNode &node)
 not implemented More...
 
AliMUONNodeoperator= (const AliMUONNode &node)
 not implemented More...
 

Private Attributes

AliMUONNodefLeftNode
 left node More...
 
AliMUONNodefRightNode
 right node More...
 
Double_t fMin
 Min. More...
 
Double_t fMax
 Max. More...
 
Double_t fMidPoint
 (Min+Max)/2 More...
 
Int_t fC
 cardinality More...
 
Int_t fP
 potent state More...
 

Detailed Description

A node of a segment tree.

A node of a segment tree

For the details of the meaning of cardinality and potent data members, please see Diane L. Souvaine and Iliana Bjorling-Sachs, Proceedings of the IEEE, Vol. 80, No. 9, September 1992, p. 1449

Author
Laurent Aphecetche, Subatech

Definition at line 21 of file AliMUONNode.h.

Constructor & Destructor Documentation

AliMUONNode::AliMUONNode ( Double_t  a,
Double_t  b,
Double_t  midpoInt_t 
)

ctor

Definition at line 45 of file AliMUONNode.cxx.

AliMUONNode::~AliMUONNode ( )
virtual

dtor

Definition at line 52 of file AliMUONNode.cxx.

AliMUONNode::AliMUONNode ( const AliMUONNode node)
private

not implemented

Member Function Documentation

Int_t AliMUONNode::C ( ) const
inline

Get cardinality.

Definition at line 44 of file AliMUONNode.h.

Referenced by DeleteInterval(), Demote(), InsertInterval(), Promote(), and Update().

void AliMUONNode::C ( Int_t  v)
inline

Increase cardinality.

Definition at line 47 of file AliMUONNode.h.

void AliMUONNode::Contribution ( Double_t  b,
Double_t  e,
TObjArray stack 
)

Contribution of an edge (b,e) to the final contour

Definition at line 83 of file AliMUONNode.cxx.

Referenced by Contribution(), and AliMUONSegmentTree::Contribution().

void AliMUONNode::DeleteInterval ( Double_t  b,
Double_t  e,
TObjArray stack 
)

Delete an interval

Definition at line 157 of file AliMUONNode.cxx.

Referenced by DeleteInterval(), and AliMUONSegmentTree::DeleteInterval().

void AliMUONNode::Demote ( )

Demote node

Definition at line 218 of file AliMUONNode.cxx.

Referenced by DeleteInterval().

void AliMUONNode::InsertInterval ( Double_t  b,
Double_t  e,
TObjArray stack 
)

Insert an interval

Definition at line 134 of file AliMUONNode.cxx.

Referenced by InsertInterval(), and AliMUONSegmentTree::InsertInterval().

Bool_t AliMUONNode::IsFullyContained ( Double_t  b,
Double_t  e 
) const

Whether this node's interval is fully contained into [b,e]

Definition at line 125 of file AliMUONNode.cxx.

Referenced by Contribution(), DeleteInterval(), and InsertInterval().

void AliMUONNode::LeftNode ( AliMUONNode n)
inline

Set left node.

Definition at line 53 of file AliMUONNode.h.

Referenced by AliMUONSegmentTree::Build().

AliMUONNode& AliMUONNode::operator= ( const AliMUONNode node)
private

not implemented

Int_t AliMUONNode::P ( ) const
inline

Get potent state.

Definition at line 50 of file AliMUONNode.h.

Referenced by Update().

void AliMUONNode::Print ( const char *  opt = "") const

Printout

Definition at line 61 of file AliMUONNode.cxx.

Referenced by Print(), and AliMUONSegmentTree::Print().

void AliMUONNode::Promote ( )

Promote node

Definition at line 208 of file AliMUONNode.cxx.

Referenced by Update().

void AliMUONNode::RightNode ( AliMUONNode n)
inline

Set right node.

Definition at line 56 of file AliMUONNode.h.

Referenced by AliMUONSegmentTree::Build().

void AliMUONNode::Update ( )

Update internal values

Definition at line 182 of file AliMUONNode.cxx.

Referenced by DeleteInterval(), and InsertInterval().

Member Data Documentation

Int_t AliMUONNode::fC
private

cardinality

Definition at line 71 of file AliMUONNode.h.

Referenced by C(), Contribution(), and DeleteInterval().

AliMUONNode* AliMUONNode::fLeftNode
private
Double_t AliMUONNode::fMax
private

Max.

Definition at line 68 of file AliMUONNode.h.

Referenced by Contribution(), IsFullyContained(), and Print().

Double_t AliMUONNode::fMidPoint
private

(Min+Max)/2

Definition at line 69 of file AliMUONNode.h.

Referenced by Contribution(), DeleteInterval(), InsertInterval(), and Print().

Double_t AliMUONNode::fMin
private

Min.

Definition at line 67 of file AliMUONNode.h.

Referenced by Contribution(), IsFullyContained(), and Print().

Int_t AliMUONNode::fP
private

potent state

Definition at line 72 of file AliMUONNode.h.

Referenced by Contribution(), Demote(), P(), and Update().

AliMUONNode* AliMUONNode::fRightNode
private

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