Belle II Software development
WithAutomatonCell.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <tracking/trackFindingCDC/ca/AutomatonCell.h>
11#include <tracking/trackFindingCDC/utilities/Scalar.h>
12
13namespace Belle2 {
18 namespace TrackFindingCDC {
19
21 template<class T>
22 class WithAutomatonCell : public ScalarToClass<T> {
23
24 private:
26 using Super = ScalarToClass<T>;
27
28 public:
30 explicit WithAutomatonCell(const T& obj)
31 : Super(obj)
33 {
34 }
35
38 {
39 return m_automatonCell;
40 }
41
44 {
46 }
47
50 {
52 }
53
55 void receiveMaskedFlag() const {}
56
57 private:
60 };
61 }
63}
Cell used by the cellular automata.
Definition: AutomatonCell.h:29
void setMaskedFlag(bool setTo=true)
Sets the masked flag to the given value. Default value true.
void unsetMaskedFlag()
Resets the masked flag to false.
Mixin class to attach an automaton cell to an object or pointer.
ScalarToClass< T > Super
Base class of the mixin.
AutomatonCell & getAutomatonCell() const
Mutable getter for the automaton cell.
void setAndForwardMaskedFlag() const
Mockup as we do not have any sub-items.
void unsetAndForwardMaskedFlag() const
Mockup as we do not have any sub-items.
WithAutomatonCell(const T &obj)
Mixin class wraps an object a.
AutomatonCell m_automatonCell
Memory for the automaton cell.
void receiveMaskedFlag() const
Mockup as we do not have any sub-items.
Abstract base class for different kinds of events.