master
a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models
Loading...
Searching...
No Matches
BasicObserver.hpp
Go to the documentation of this file.
1
/*
2
* BasicObserver.hpp
3
*
4
* Created on: Mar 4, 2012
5
* Author: Ben O'Leary (benjamin.oleary@gmail.com)
6
*
7
* This file is part of BOLlib, released under the
8
* GNU General Public License. Please see the accompanying
9
* README.BOLlib.txt file for a full list of files, brief documentation
10
* on how to use these classes, and further details on the license.
11
*/
12
13
#ifndef BASICOBSERVER_HPP_
14
#define BASICOBSERVER_HPP_
15
16
#include <list>
17
18
namespace
BOL
19
{
20
// this is an abstract base class that allows BasicObserved objects to
21
// call respondToObservedSignal() on its observers.
22
class
BasicObserver
23
{
24
public
:
25
BasicObserver
();
26
virtual
27
~BasicObserver
();
28
29
virtual
void
30
respondToObservedSignal
() = 0;
31
void
32
acceptFlagFromObserved
(
bool
*
const
flagFromObserved );
33
void
34
discardFlagFromObserved
(
bool
*
const
flagFromObserved );
35
void
36
clearObservingFlags
();
37
38
39
protected
:
40
std::list< bool* >
stillObservingFlags
;
41
};
42
43
44
45
46
47
inline
void
48
BasicObserver::acceptFlagFromObserved
(
bool
*
const
flagFromObserved )
49
{
50
stillObservingFlags
.push_back( flagFromObserved );
51
}
52
53
inline
void
54
BasicObserver::discardFlagFromObserved
(
bool
*
const
flagFromObserved )
55
{
56
stillObservingFlags
.remove( flagFromObserved );
57
}
58
59
inline
void
60
BasicObserver::clearObservingFlags
()
61
{
62
for
( std::list< bool* >::iterator
63
flagIterator(
stillObservingFlags
.begin() );
64
stillObservingFlags
.end() != flagIterator;
65
++flagIterator )
66
{
67
*(*flagIterator) =
false
;
68
}
69
stillObservingFlags
.clear();
70
}
71
72
}
73
74
#endif
/* BASICOBSERVER_HPP_ */
BOL::BasicObserver
Definition
BasicObserver.hpp:23
BOL::BasicObserver::discardFlagFromObserved
void discardFlagFromObserved(bool *const flagFromObserved)
Definition
BasicObserver.hpp:54
BOL::BasicObserver::~BasicObserver
virtual ~BasicObserver()
Definition
BasicObserver.cpp:23
BOL::BasicObserver::respondToObservedSignal
virtual void respondToObservedSignal()=0
BOL::BasicObserver::acceptFlagFromObserved
void acceptFlagFromObserved(bool *const flagFromObserved)
Definition
BasicObserver.hpp:48
BOL::BasicObserver::clearObservingFlags
void clearObservingFlags()
Definition
BasicObserver.hpp:60
BOL::BasicObserver::stillObservingFlags
std::list< bool * > stillObservingFlags
Definition
BasicObserver.hpp:40
BOL::BasicObserver::BasicObserver
BasicObserver()
Definition
BasicObserver.cpp:17
BOL
Definition
ArgumentParser.hpp:23
LHPC
include
BOLlib
include
BasicObserver.hpp
Generated on Tue Aug 4 2026 for $\texttt{HEPfit}$ using
1.9.8