Pārlūkot izejas kodu

Add IFactory interface to provide basic factory functionality

Patrick-Christopher Mattulat 3 gadi atpakaļ
vecāks
revīzija
b48f875d23
1 mainītis faili ar 29 papildinājumiem un 0 dzēšanām
  1. 29 0
      include/ls_std/factory/IFactory.hpp

+ 29 - 0
include/ls_std/factory/IFactory.hpp

@@ -0,0 +1,29 @@
+/*
+ * Author:          Patrick-Christopher Mattulat
+ * Company:         Lynar Studios
+ * E-Mail:          webmaster@lynarstudios.com
+ * Created:         2021-04-23
+ * Changed:         2021-04-23
+ *
+ * */
+
+#ifndef LS_STD_I_FACTORY_HPP
+#define LS_STD_I_FACTORY_HPP
+
+#include <memory>
+#include <ls_std/base/Class.hpp>
+
+namespace ls_std
+{
+  class IFactory
+  {
+    public:
+
+      IFactory() = default;
+      ~IFactory() = default;
+
+      virtual std::shared_ptr<ls_std::Class> build() = 0;
+  };
+}
+
+#endif