CARMA C++
PDB_Edit.h
1 /*
2  * CARMA Project Database Edit Functionality
3  */
4 
5 #ifndef PDB_EDIT_H
6 #define PDB_EDIT_H
7 
8 #include <carma/observertools/ProjectDatabaseManagerImpl.h>
9 #include <carma/observertools/ProjectDatabaseManager.h>
10 #include <carma/observertools/PDB_MongoDB.h>
11 
12 #include <string>
13 #include <vector>
14 
15 namespace carma {
16 namespace observertools {
17 
18 std::string editStatusToString(const EditStatus action);
19 
20 struct PDB_Edit_Params {
21  std::string projectID;
22  std::string obsblockID;
23  std::string subObsblockID;
24  int trialID;
25  std::vector<ItemValue> editItems;
26  EditStatus action;
27 };
28 
29 class PDB_Edit {
30 public:
31  PDB_Edit(const PDB_DB_Params &db, const PDB_Edit_Params &params);
32  bool run() const;
33 
34 private:
35  const PDB_DB_Params db_;
36  const PDB_Edit_Params params_;
37 };
38 
39 } // namespace carma::observertools
40 } // namespace carma
41 
42 #endif /* PDB_EDIT_H */
EditStatus
Various enumeration constants.