CMS 3D CMS Logo

CaloDirectionOperations.h
Go to the documentation of this file.
1 #ifndef FastSimulation_CaloGeometryTools_CaloDirectionOperations_h
2 #define FastSimulation_CaloGeometryTools_CaloDirectionOperations_h
3 
5 
6 // A set of "non standard" operations on CaloDirections
7 // This is FastSimulation specific !
8 // F. Beaudette 23/10/06
9 
11 public:
14 
15  // add directions in 2D
16  static CaloDirection add2d(const CaloDirection& dir1, const CaloDirection& dir2);
17 
19  static CaloDirection Side(unsigned i);
21  static unsigned Side(const CaloDirection& side);
22 
24  static unsigned neighbourDirection(const CaloDirection& side);
26  static CaloDirection neighbourDirection(unsigned i);
27 
28  // returns the opposite side
30  static unsigned oppositeDirection(unsigned iside);
31 };
32 
33 #endif
static CaloDirection add2d(const CaloDirection &dir1, const CaloDirection &dir2)
static CaloDirection oppositeSide(const CaloDirection &side)
static unsigned oppositeDirection(unsigned iside)
static unsigned neighbourDirection(const CaloDirection &side)
unsigned int -> Direction for the neighbours
static CaloDirection Side(unsigned i)
unsigned int -> Side conversion
CaloDirection
Codes the local directions in the cell lattice.
Definition: CaloDirection.h:9