Aurum  0.1.1
 All Classes Functions Variables Pages
ISearchable.h
1 #ifndef ISEARCHABLE_H
2 #define ISEARCHABLE_H
3 #include "config.h"
4 
5 #include "UiSelector.h"
6 
7 #include <memory>
8 #include <vector>
9 
10 class UiObject;
15 class ISearchable {
16 public:
17 
22  virtual ~ISearchable() {}
23 
28  virtual bool hasObject(const std::shared_ptr<UiSelector> selector) const = 0;
29 
34  virtual std::unique_ptr<UiObject> findObject(
35  const std::shared_ptr<UiSelector> selector) const = 0;
36 
41  virtual std::vector<std::unique_ptr<UiObject>> findObjects(
42  const std::shared_ptr<UiSelector> selector) const = 0;
43 };
44 
45 #endif