CARMA C++
ProjectDatabaseManagerHandle.h
Go to the documentation of this file.
1 #ifndef CARMA_CONTROL_PROJECTDATABASEMANAGER_HANDLE_H
2 #define CARMA_CONTROL_PROJECTDATABASEMANAGER_HANDLE_H
3 
14 #include "carma/corba/corba.h"
16 #include "carma/monitor/ControlSubsystem.h"
17 #include "carma/observertools/ItemValue.h"
18 #include "carma/observertools/ProjectDatabaseManager.h"
19 #include "carma/observertools/ProjectDatabaseManager_skel.h"
20 #include "carma/observertools/PDB_Util.h"
21 
22 namespace carma{
23 namespace control{
24 
25 typedef RemoteObjHandleT<observertools::ProjectDatabaseManager>
26  ProjectDatabaseManagerRemoteObjHandle;
27 
31  public:
39  monitor::MonitorSystem &carmaMonitor,
40  monitor::ControlSubsystemBase::Reachable & reachable);
41 
43 
57  const int requestId );
58 
68 
73  const char * scriptFile,
74  const char * catalogFile
75  );
76 
85  void projectEdit(
86  const observertools::ProjectId pid,
88  const observertools::EditStatus action,
89  const int editRequestId
90  );
91 
99  bool getEditResult( int editRequestId );
100 
101 
102  void runProject(const char* projectID, const char* obsblock,
103  const char* subObsblock, const bool isCommissioning,
104  const bool isDualCorr, const char* arrayConfig1,
105  const char* arrayConfig2,
106  const char* scriptFile, const char* catalogFile,
107  const int requestId);
108 
109  short getRunResult( int requestId );
110 
111  private:
112 
113  int queryResultId_;
114  std::string queryException_;
115  int editResultId_;
116  std::string editException_;
117  bool editSuccess_;
118  int runId_;
119  std::string runException_;
120  short trialId_;
121  observertools::ProjectSequence_var projSeq_;
122 
123 };
124 
125 } //namespace control
126 } //namespace carma
127 
128 #endif //CARMA_CONTROL_PROJECTDATABASEMANAGER_HANDLE_H
Structure containing a project obsblock, subobsblock strings and trial number.
Definition: PDB_Util.h:20
EditStatus
Various enumeration constants.
void projectQuery(const observertools::ItemValueSequence ivSeq, const int requestId)
Query the project database for a project sequence.
ProjectDatabaseManagerHandle(monitor::MonitorSystem &carmaMonitor, monitor::ControlSubsystemBase::Reachable &reachable)
Constructor.
sequence< Project > ProjectSequence
Sequence of projects.
Manages connection to remote DO.
void addScriptOrCatalog(const observertools::ProjectId pid, const char *scriptFile, const char *catalogFile)
Add a script and/or catalog to a project.
void projectEdit(const observertools::ProjectId pid, const observertools::ItemValueSequence ivSeq, const observertools::EditStatus action, const int editRequestId)
Edit a project.
Typed class for managing connections to DOs.
Monitor system base class.
Definition: MonitorSystem.h:81
sequence< ItemValue > ItemValueSequence
Sequence of an Item name and value pairs.
Definition: ItemValue.idl:26
Manages Project Database Manager control DO connections.
observertools::ProjectSequence * getProjectSequence(int requestId)