forked from sigblips/SonATA
-
Notifications
You must be signed in to change notification settings - Fork 7
/
ObserveActivityStatus.h
79 lines (59 loc) · 2.21 KB
/
ObserveActivityStatus.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
/*******************************************************************************
File: ObserveActivityStatus.h
Project: OpenSonATA
Authors: The OpenSonATA code is the result of many programmers
over many years
Copyright 2011 The SETI Institute
OpenSonATA is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenSonATA is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with OpenSonATA. If not, see<http://www.gnu.org/licenses/>.
Implementers of this code are requested to include the caption
"Licensed through SETI" with a link to setiQuest.org.
For alternate licensing arrangements, please contact
The SETI Institute at www.seti.org or setiquest.org.
*******************************************************************************/
#ifndef ObserveActivityStatus_H
#define ObserveActivityStatus_H
#include <ace/Synch.h>
#include <string>
using std::string;
class ObserveActivityStatus
{
public:
ObserveActivityStatus();
virtual ~ObserveActivityStatus();
enum StatusEnum {
ACTIVITY_CREATED,
ACTIVITY_STARTED,
PENDING_DATA_COLLECTION,
DATA_COLLECTION_STARTED,
DATA_COLLECTION_COMPLETE,
PENDING_SIGNAL_DETECTION,
SIGNAL_DETECTION_STARTED,
SIGNAL_DETECTION_COMPLETE,
ACTIVITY_ABORTED,
ACTIVITY_FAILED,
ACTIVITY_STOPPING,
ACTIVITY_STOPPED,
ACTIVITY_COMPLETE,
ACTIVITY_STATUS_MAXIMUM,
};
StatusEnum get() const;
string getString() const;
void set(StatusEnum status);
private:
mutable ACE_Recursive_Thread_Mutex objectMutex_;
StatusEnum statusEnum_;
// Disable copy construction & assignment.
// Don't define these.
ObserveActivityStatus(const ObserveActivityStatus& rhs);
ObserveActivityStatus& operator=(const ObserveActivityStatus& rhs);
};
#endif // ObserveActivityStatus_H