]>
Commit | Line | Data |
---|---|---|
7e0cf530 | 1 | // Author: Mihai Niculescu 2013 |
2 | ||
3 | /************************************************************************** | |
4 | * Copyright(c) 1998-2013, ALICE Experiment at CERN, all rights reserved. * | |
5 | * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for * | |
6 | * full copyright notice. * | |
7 | **************************************************************************/ | |
8 | ||
9 | #ifndef __AliRecoServer_H__ | |
10 | #define __AliRecoServer_H__ | |
11 | ||
7e0cf530 | 12 | #include <TObjString.h> |
13 | #include <TQObject.h> | |
14 | #include <RQ_OBJECT.h> | |
15 | ||
16 | class TEnv; | |
17 | class AliCDBManager; | |
18 | class AliReconstruction; | |
19 | class AliRecoServerThread; | |
20 | ||
db352b46 | 21 | namespace zmq |
22 | { | |
23 | class context_t; | |
24 | } | |
25 | ||
7e0cf530 | 26 | class AliRecoServer : public TQObject |
27 | { | |
28 | RQ_OBJECT("AliRecoServer") | |
29 | public: | |
30 | AliRecoServer(); | |
31 | virtual ~AliRecoServer(); | |
32 | ||
33 | // Closes the server. The server will no longer listen/serve | |
34 | void Close(); | |
35 | ||
36 | Bool_t IsListenning() const; | |
37 | ||
38 | Int_t GetRunId() const { return fCurrentRunId; } | |
39 | const char* GetError() const;//TODO: not implemented | |
40 | ||
41 | Bool_t StartReconstruction(Int_t run, const char* input="mem://@*:"); | |
42 | void StopReconstruction(); | |
43 | ||
44 | void ThreadFinished(Int_t status); // *SIGNAL* | |
45 | ||
46 | private: | |
47 | Int_t RetrieveGRP(UInt_t run, TString &gdc); | |
48 | void SetupReco(const char* input); | |
49 | ||
50 | AliRecoServer(const AliRecoServer&); // Not implemented | |
51 | AliRecoServer& operator=(const AliRecoServer&); // Not implemented | |
52 | ||
53 | private: | |
54 | // thread shared | |
55 | zmq::context_t* fContext; | |
56 | AliReconstruction* fReco; | |
57 | AliCDBManager* fCDBman; | |
58 | ||
59 | // not shared | |
60 | Int_t fCurrentRunId; | |
61 | Bool_t fIsListenning; | |
62 | TEnv* fSettings; | |
63 | AliRecoServerThread* fRecoTh; | |
64 | ||
65 | public: | |
66 | ||
67 | ClassDef(AliRecoServer, 0); | |
68 | }; | |
69 | ||
70 | #endif /* __AliRecoServer_H__ */ |