Belle II Software  release-08-01-10
ISuperLayerUtil Struct Reference

This is a utility class for the free ISuperLayer type. More...

#include <ISuperLayer.h>

Public Member Functions

 ISuperLayerUtil ()=delete
 Utility classes should not be instantiated.
 

Static Public Member Functions

static bool isInvalid (ISuperLayer iSuperLayer)
 Indicates if the given number corresponds to a true cdc superlayer - excludes the logic ids for inner and outer volume.
 
static bool isInCDC (ISuperLayer iSuperLayer)
 Indicates if the given number corresponds to a true cdc superlayer - excludes the logic ids for inner and outer volume.
 
static bool isLogical (ISuperLayer iSuperLayer)
 Indicates if the given number corresponds to a logical superlayer - includes the logic ids for inner and outer volume.
 
static bool isInnerVolume (ISuperLayer iSuperLayer)
 Indicates if the given number corresponds to the logical superlayer of the column inside the CDC.
 
static bool isOuterVolume (ISuperLayer iSuperLayer)
 Indicates if the given number corresponds to the logical superlayer of the volumn outside the CDC.
 
static bool isAxial (ISuperLayer iSuperLayer)
 Returns if the super layer with the given id is axial.
 
static EStereoKind getStereoKind (ISuperLayer iSuperLayer)
 Returns the stereo kind of the super layer.
 
static ISuperLayer getNextInwards (ISuperLayer iSuperLayer)
 Returns the super layer that is inside of the given super layer. More...
 
static ISuperLayer getNextOutwards (ISuperLayer iSuperLayer)
 Returns the super layer that is outside of the given super layer. More...
 
template<class T >
static ISuperLayer getFrom (const T &t)
 Returns the superlayer of an object.
 

Static Public Attributes

static const ISuperLayer c_N = 9
 Constant representing the total number of cdc superlayers.
 
static const ISuperLayer c_InnerVolume = -1
 Constant marking the subdetectors closer to the IP than the CDC.
 
static const ISuperLayer c_OuterVolume = 9
 Constant marking the subdetectors further away from the IP than the CDC.
 
static const ISuperLayer c_Invalid = SHRT_MIN
 Constant making an invalid superlayer id.
 

Detailed Description

This is a utility class for the free ISuperLayer type.

It provides the basic methods to operate on the ISuperLayer numbers.

Definition at line 50 of file ISuperLayer.h.

Member Function Documentation

◆ getNextInwards()

ISuperLayer getNextInwards ( ISuperLayer  iSuperLayer)
static

Returns the super layer that is inside of the given super layer.

Return c_Invalid for the inner volume and for invalid super layers

Definition at line 63 of file ISuperLayer.cc.

64 {
65  if (isInvalid(iSuperLayer) or isInnerVolume(iSuperLayer)) {
66  return c_Invalid;
67  } else {
68  return iSuperLayer - 1;
69  }
70 }
static const ISuperLayer c_Invalid
Constant making an invalid superlayer id.
Definition: ISuperLayer.h:65
static bool isInvalid(ISuperLayer iSuperLayer)
Indicates if the given number corresponds to a true cdc superlayer - excludes the logic ids for inner...
Definition: ISuperLayer.cc:38
static bool isInnerVolume(ISuperLayer iSuperLayer)
Indicates if the given number corresponds to the logical superlayer of the column inside the CDC.
Definition: ISuperLayer.cc:53

◆ getNextOutwards()

ISuperLayer getNextOutwards ( ISuperLayer  iSuperLayer)
static

Returns the super layer that is outside of the given super layer.

Return c_Invalid for the outer volume and for invalid super layers

Definition at line 72 of file ISuperLayer.cc.


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