libaurum: apply smart pointer wider and extract impl out
[platform/core/uifw/aurum.git] / libaurum / inc / Accessibility / AccessibleApplication.h
1 #pragma once
2
3 #include "AccessibleWindow.h"
4 #include "AccessibleNode.h"
5
6 #include <memory>
7
8 class AccessibleApplication {
9 public:
10     AccessibleApplication(std::shared_ptr<AccessibleNode> node);
11     virtual ~AccessibleApplication();
12
13 public:
14     std::shared_ptr<AccessibleNode> getAccessibleNode();
15     bool isActive(void);
16
17 public:
18     virtual std::vector<std::shared_ptr<AccessibleWindow>> getWindows(void) = 0;
19     virtual std::vector<std::shared_ptr<AccessibleWindow>> getActiveWindows(void);
20     virtual std::string getPackageName(void) = 0;
21
22 private:
23     std::shared_ptr<AccessibleNode> mNode;
24 };
25