Samchon Framework for CPP  1.0.0
FTInstance.hpp
1 #pragma once
2 #include <samchon/API.hpp>
3 
4 #include <samchon/protocol/Entity.hpp>
5 
6 namespace samchon
7 {
8 namespace library
9 {
10  class FTFolder;
11 
22  class SAMCHON_FRAMEWORK_API FTInstance
23  : public virtual protocol::Entity
24  {
25  private:
26  typedef protocol::Entity super;
27 
28  protected:
29  virtual auto TAG() const -> std::string;
30 
35 
39  int uid;
40 
44  std::string name;
45 
49  std::string comment;
50 
51  public:
52  /* ========================================================
53  CONSTRUCTORS
54  ======================================================== */
61  virtual ~FTInstance() = default;
62 
63  virtual void construct(std::shared_ptr<library::XML> xml);
64 
65  /* ========================================================
66  GETTERS
67  ======================================================== */
68  virtual auto key() const -> std::string;
69 
73  auto getUID() const -> int;
74 
78  auto getParent() const -> FTFolder*;
79 
83  auto getName() const -> std::string;
84 
88  auto getComment() const -> std::string;
89 
90 
91  /* ========================================================
92  EXPORTER
93  ======================================================== */
94  virtual auto toXML() const -> std::shared_ptr<library::XML>;
95  };
96 };
97 };
An entity, a standard data class.
Definition: Entity.hpp:48
An interface of file-tree.
Definition: FTInstance.hpp:22
Definition: RWMutex.hpp:4
std::string name
Name of the file.
Definition: FTInstance.hpp:44
int uid
Key, an unique id of file.
Definition: FTInstance.hpp:39
XML is a class representing xml object.
Definition: XML.hpp:72
std::string comment
Comment of the file.
Definition: FTInstance.hpp:49
Top level namespace of products built from samchon.
Definition: ByteArray.hpp:7
FTFolder * parent
Parent folder containing the instance.
Definition: FTInstance.hpp:34