Candidate_v1.6.1
Line | |
---|
1 | /*
|
---|
2 | * ExitflagContainer.hpp
|
---|
3 | *
|
---|
4 | * Created on: 11.05.2012
|
---|
5 | * Author: heber
|
---|
6 | */
|
---|
7 |
|
---|
8 | #ifndef EXITFLAGCONTAINER_HPP_
|
---|
9 | #define EXITFLAGCONTAINER_HPP_
|
---|
10 |
|
---|
11 | // include config.h
|
---|
12 | #ifdef HAVE_CONFIG_H
|
---|
13 | #include <config.h>
|
---|
14 | #endif
|
---|
15 |
|
---|
16 | /** This class simply contains an exit flag to be inherited by instances that
|
---|
17 | * deal with (asynchronous) operations. These may be given a callback function
|
---|
18 | * that sets the exitflag to ErrorFlag in case of failure, e.g
|
---|
19 | *
|
---|
20 | * \code
|
---|
21 | * const boost::function<void ()> failed =
|
---|
22 | * boost::bind(&ExitflagContainer::setExitflag, boost::ref(this), ErrorFlag);
|
---|
23 | * \endcode
|
---|
24 | * where \a this refers to the inheriting instance.
|
---|
25 | *
|
---|
26 | */
|
---|
27 | class ExitflagContainer
|
---|
28 | {
|
---|
29 | public:
|
---|
30 | ExitflagContainer() :
|
---|
31 | Exitflag(OkFlag)
|
---|
32 | {}
|
---|
33 |
|
---|
34 | enum Exitflag_t {
|
---|
35 | OkFlag = 0,
|
---|
36 | ErrorFlag = 255
|
---|
37 | };
|
---|
38 |
|
---|
39 | /** Getter for Exitflag.
|
---|
40 | *
|
---|
41 | * @return Exitflag
|
---|
42 | */
|
---|
43 | size_t getExitflag() const
|
---|
44 | {
|
---|
45 | return Exitflag;
|
---|
46 | }
|
---|
47 |
|
---|
48 | /** Setter for Exitflag.
|
---|
49 | *
|
---|
50 | * @param exitflag
|
---|
51 | */
|
---|
52 | void setExitflag(const Exitflag_t _Exitflag)
|
---|
53 | {
|
---|
54 | Exitflag = _Exitflag;
|
---|
55 | }
|
---|
56 |
|
---|
57 | private:
|
---|
58 | // exit flag of this operation, derived classes may change it
|
---|
59 | enum Exitflag_t Exitflag;
|
---|
60 | };
|
---|
61 |
|
---|
62 | #endif /* EXITFLAGCONTAINER_HPP_ */
|
---|
Note:
See
TracBrowser
for help on using the repository browser.