BusBoy  2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
AlgorithmData.h
Go to the documentation of this file.
1 
17 #ifndef __BUSBOY_ALGORITHM_DATA_H__
18 #define __BUSBOY_ALGORITHM_DATA_H__
19 
20 #include <string>
21 #include <set>
23 #include "dataset/dataset_api.h"
24 #include "keys/keys_api.h"
25 
26 namespace BUSBOY {
27 
28 class AlgorithmDataImpl;
29 
36 
37  public:
38 
39  AlgorithmData();
40 
41  void setKeyspace(const Keyspace& keyspace);
42 
48  const Keyspace& getKeyspace() const;
49 
54 
55  void setConfig(const AlgorithmConfig& config);
56 
61  const AlgorithmConfig& getConfig() const;
62 
63  void addInputDataset(const std::string& name, Dataset* dataset);
64 
65  void addOutputDataset(const std::string& name, Dataset* dataset);
66 
67  Dataset* getInputDataset(const std::string& name) const;
68 
69  bool hasInputDataset(const std::string& name) const;
70 
71  Dataset* getOutputDataset(const std::string& name) const;
72 
73  bool hasOutputDataset(const std::string& name) const;
74 
75  std::set<std::string> getInputDatasetNames() const;
76 
77  std::set<std::string> getOutputDatasetNames() const;
78 
79  bool operator==(const AlgorithmData& algoData) const;
80 
81  bool operator!=(const AlgorithmData& algoData) const;
82 
84 
85  private:
86 
87  AlgorithmDataImpl* m_impl;
88 
89  // prevent calling these
90  AlgorithmData(const AlgorithmData& reg);
91  AlgorithmData& operator=(const AlgorithmData& reg);
92 
93 };
94 
95 }
96 
97 #endif

Copyright 2014 Google Inc. All rights reserved.