Belle II Software development
|
Cell used by the cellular automata. More...
#include <AutomatonCell.h>
Public Types | |
enum | ECellFlag : unsigned int { c_Assigned = 1 , c_Start = 2 , c_PriorityPath = 4 , c_Cycle = 8 , c_Masked = 16 , c_Taken = 32 , c_Background = 64 , c_Priority = 128 , c_Reverse = 256 , c_Alias = 512 , c_BadADCOrTOT = 1024 } |
Type for the status flags of cells in the cellular automata. More... | |
using | ECellFlags = ECellFlag |
Type for an ordered combination of the status flags of cells in the cellular automata. | |
Public Member Functions | |
AutomatonCell () | |
Default constructor for ROOT compatibility. Cell weight defaults to 0. | |
AutomatonCell (const Weight &cellWeight) | |
Constructor with a certain cell weight. | |
AutomatonCell (const Weight &cellWeight, const ECellFlags &initialFlags) | |
Constructor with a certain cell weight and initial flags to be set. | |
Weight | getCellState () const |
Getter for the cell state. | |
void | setCellState (Weight state) |
Setter for the cell state. | |
Weight | getCellWeight () const |
Getter for the cell weight. | |
void | setCellWeight (Weight weight) |
Setter for the cell weight. | |
void | setAssignedFlag (bool setTo=true) |
Sets the already assigned marker flag to the given value. Default value true. | |
void | unsetAssignedFlag () |
Resets the already assigned marker flag to false. | |
bool | hasAssignedFlag () const |
Gets the current state of the already assigned marker flag. | |
void | setStartFlag (bool setTo=true) |
Sets the start marker flag to the given value. Default value true. | |
void | unsetStartFlag () |
Resets the start marker flag to false. | |
bool | hasStartFlag () const |
Gets the current state of the start marker flag. | |
void | setPriorityPathFlag (bool setTo=true) |
Sets the priority path marker flag to the given value. Default value true. | |
void | unsetPriorityPathFlag () |
Resets the priority path marker flag to false. | |
bool | hasPriorityPathFlag () const |
Gets the current state of the priority path marker flag. | |
void | setCycleFlag (bool setTo=true) |
Sets the cycle marker flag to the given value. Default value true. | |
void | unsetCycleFlag () |
Resets the cycle marker flag to false. | |
bool | hasCycleFlag () const |
Gets the current state of the cycle marker flag. | |
void | unsetTemporaryFlags () |
Resets the assigned, start and cycle marker flag. | |
void | setMaskedFlag (bool setTo=true) |
Sets the masked flag to the given value. Default value true. | |
void | unsetMaskedFlag () |
Resets the masked flag to false. | |
bool | hasMaskedFlag () const |
Gets the current state of the masked marker flag. | |
void | setTakenFlag (bool setTo=true) |
Sets the taken flag to the given value. Default value true. | |
void | unsetTakenFlag () |
Resets the taken flag to false. | |
bool | hasTakenFlag () const |
Gets the current state of the taken marker flag. | |
void | setBackgroundFlag (bool setTo=true) |
Sets the background flag to the given value. Default value true. | |
void | unsetBackgroundFlag () |
Resets the background flag to false. | |
bool | hasBackgroundFlag () const |
Gets the current state of the do not use flag marker flag. | |
void | setBadADCOrTOTFlag (bool setTo=true) |
Sets the bad ADC or TOT flag to the given value. | |
void | unsetBadADCOrTOTFlag () |
Resets the bad ADC or TOT flag to false. | |
bool | hasBadADCOrTOTFlag () const |
Gets the current state of the bad ADC or TOT flag. | |
void | setPriorityFlag (bool setTo=true) |
Sets the priority flag to the given value. Default value true. | |
void | unsetPriorityFlag () |
Resets the priority flag to false. | |
bool | hasPriorityFlag () const |
Gets the current state of the do not use flag marker flag. | |
void | setReverseFlag (bool setTo=true) |
Sets the reverse flag to the given value. Default value true. | |
void | unsetReverseFlag () |
Resets the reverse flag to false. | |
bool | hasReverseFlag () const |
Gets the current state of the do not use flag marker flag. | |
void | setAliasFlag (bool setTo=true) |
Sets the alias flag to the given value. Default value true. | |
void | unsetAliasFlag () |
Resets the alias flag to false. | |
bool | hasAliasFlag () const |
Gets the current state of the do not use flag marker flag. | |
template<ECellFlags cellFlag> | |
void | setFlags (bool setTo) |
Setting accessing the flag by tag. | |
const ECellFlags & | getFlags () const |
Getter for the ordered combination of the cell flags to mark some status of the cell. | |
void | setFlags (ECellFlags flags) |
Setter for the cell flags. | |
void | clearFlags (ECellFlags flags=c_AllFlags) |
Clear all flags. | |
bool | hasAnyFlags (ECellFlags flags) const |
Checks if a cell has any of a sum of given flags. | |
Static Public Attributes | |
static const ECellFlags | c_AllFlags |
Constant summing all possible cell flags. | |
static const ECellFlags | c_TemporaryFlags |
Flags that are reset at the start of each run of the cellular automaton. | |
Private Attributes | |
Weight | m_weight = 1 |
Storage for the cell weight. | |
ECellFlags | m_flags = ECellFlag(0) |
Storage for the cell status flags. | |
Weight | m_state = 0 |
Storage for the cell state set by the cellular automata. | |
Cell used by the cellular automata.
This class represents a cell in the cellular automata algorithm the local tracking is build on. Different to the ordinary cellular automaton algorithms this class stores the state not as a integer number but
as a float value. This enables to have fractional measures of quality attached to the cell if say one new item
is not worth a full point, but a probability measure which is additive. The points that can be gained by picking
this cell are stored in the cell weight property. Moreover the class defines status flags to be set and/or read by
the cellular automaton.
Definition at line 29 of file AutomatonCell.h.
using ECellFlags = ECellFlag |
Type for an ordered combination of the status flags of cells in the cellular automata.
Definition at line 50 of file AutomatonCell.h.
enum ECellFlag : unsigned int |
Type for the status flags of cells in the cellular automata.
Definition at line 33 of file AutomatonCell.h.
|
inline |
Default constructor for ROOT compatibility. Cell weight defaults to 0.
Definition at line 72 of file AutomatonCell.h.
|
inlineexplicit |
|
inline |
Constructor with a certain cell weight and initial flags to be set.
Definition at line 88 of file AutomatonCell.h.
|
inline |
Clear all flags.
Definition at line 360 of file AutomatonCell.h.
|
inline |
Getter for the cell state.
Definition at line 96 of file AutomatonCell.h.
|
inline |
Getter for the cell weight.
The cell might carry more than one unit of information to be added to the path.
The weight describes an additive constant to be gained when picking up this cell.
For instance segments may provide their number of hits as weight.
Or they could have a reduced number of hits diminished by the quality of a fit to the segment.
For on the other side wire hits this should be one.
Definition at line 116 of file AutomatonCell.h.
|
inline |
Getter for the ordered combination of the cell flags to mark some status of the cell.
Give the ordered combination of all cell flags, therefore providing a bit pattern.
Use rather hasAnyFlags() to retrieve stats even for single state values.
Definition at line 352 of file AutomatonCell.h.
|
inline |
Gets the current state of the do not use flag marker flag.
Definition at line 331 of file AutomatonCell.h.
|
inline |
|
inline |
Gets the current state of the already assigned marker flag.
Definition at line 140 of file AutomatonCell.h.
|
inline |
Gets the current state of the do not use flag marker flag.
Definition at line 257 of file AutomatonCell.h.
|
inline |
Gets the current state of the bad ADC or TOT flag.
Definition at line 277 of file AutomatonCell.h.
|
inline |
Gets the current state of the cycle marker flag.
Definition at line 194 of file AutomatonCell.h.
|
inline |
Gets the current state of the masked marker flag.
Definition at line 218 of file AutomatonCell.h.
|
inline |
Gets the current state of the do not use flag marker flag.
Definition at line 295 of file AutomatonCell.h.
|
inline |
Gets the current state of the priority path marker flag.
Definition at line 176 of file AutomatonCell.h.
|
inline |
Gets the current state of the do not use flag marker flag.
Definition at line 313 of file AutomatonCell.h.
|
inline |
Gets the current state of the start marker flag.
Definition at line 158 of file AutomatonCell.h.
|
inline |
Gets the current state of the taken marker flag.
Taken means that the hit has been either assigned to a track or has been classified as background should therefore be not used for any track fitting
Definition at line 239 of file AutomatonCell.h.
|
inline |
Sets the alias flag to the given value. Default value true.
Definition at line 319 of file AutomatonCell.h.
|
inline |
Sets the already assigned marker flag to the given value. Default value true.
Definition at line 128 of file AutomatonCell.h.
|
inline |
Sets the background flag to the given value. Default value true.
Definition at line 245 of file AutomatonCell.h.
|
inline |
Sets the bad ADC or TOT flag to the given value.
Default value true. The CDCWireHit with bad ADC or TOT should not be used in pattern recognition, but may be added to the track after the track finding if it is very close to the found track.
Definition at line 265 of file AutomatonCell.h.
|
inline |
Setter for the cell state.
Definition at line 102 of file AutomatonCell.h.
|
inline |
Setter for the cell weight.
Definition at line 122 of file AutomatonCell.h.
|
inline |
Sets the cycle marker flag to the given value. Default value true.
Definition at line 182 of file AutomatonCell.h.
|
inline |
Setting accessing the flag by tag.
Definition at line 338 of file AutomatonCell.h.
|
inline |
|
inline |
Sets the masked flag to the given value. Default value true.
Definition at line 206 of file AutomatonCell.h.
|
inline |
Sets the priority flag to the given value. Default value true.
Definition at line 283 of file AutomatonCell.h.
|
inline |
Sets the priority path marker flag to the given value. Default value true.
Definition at line 164 of file AutomatonCell.h.
|
inline |
Sets the reverse flag to the given value. Default value true.
Definition at line 301 of file AutomatonCell.h.
|
inline |
Sets the start marker flag to the given value. Default value true.
Definition at line 146 of file AutomatonCell.h.
|
inline |
Sets the taken flag to the given value. Default value true.
Definition at line 224 of file AutomatonCell.h.
|
inline |
Resets the alias flag to false.
Definition at line 325 of file AutomatonCell.h.
|
inline |
Resets the already assigned marker flag to false.
Definition at line 134 of file AutomatonCell.h.
|
inline |
Resets the background flag to false.
Definition at line 251 of file AutomatonCell.h.
|
inline |
Resets the bad ADC or TOT flag to false.
Definition at line 271 of file AutomatonCell.h.
|
inline |
Resets the cycle marker flag to false.
Definition at line 188 of file AutomatonCell.h.
|
inline |
Resets the masked flag to false.
Definition at line 212 of file AutomatonCell.h.
|
inline |
Resets the priority flag to false.
Definition at line 289 of file AutomatonCell.h.
|
inline |
Resets the priority path marker flag to false.
Definition at line 170 of file AutomatonCell.h.
|
inline |
Resets the reverse flag to false.
Definition at line 307 of file AutomatonCell.h.
|
inline |
Resets the start marker flag to false.
Definition at line 152 of file AutomatonCell.h.
|
inline |
Resets the taken flag to false.
Definition at line 230 of file AutomatonCell.h.
|
inline |
Resets the assigned, start and cycle marker flag.
Definition at line 200 of file AutomatonCell.h.
|
static |
Constant summing all possible cell flags.
Definition at line 53 of file AutomatonCell.h.
|
static |
Flags that are reset at the start of each run of the cellular automaton.
Definition at line 65 of file AutomatonCell.h.
|
private |
Storage for the cell status flags.
Definition at line 372 of file AutomatonCell.h.
|
private |
Storage for the cell state set by the cellular automata.
Definition at line 375 of file AutomatonCell.h.
|
private |
Storage for the cell weight.
Definition at line 369 of file AutomatonCell.h.