diff options
Diffstat (limited to 'image/backends/basic.hh')
-rw-r--r-- | image/backends/basic.hh | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/image/backends/basic.hh b/image/backends/basic.hh index d39c57e..3181f69 100644 --- a/image/backends/basic.hh +++ b/image/backends/basic.hh @@ -12,11 +12,21 @@ #pragma once +#include <functional> #include <string> +#include <vector> namespace Horizon { namespace Image { +class BasicBackend; + +struct BackendDescriptor { + std::string type_code; + std::string description; + std::function<BasicBackend *(std::string, std::string)> creation_fn; +}; + class BasicBackend { public: /*! Create the backend object. @@ -43,6 +53,9 @@ public: */ virtual int finalise(); + /*! Returns a list of available backends. */ + static const std::vector<BackendDescriptor> available_backends(); + /*! The intermediate directory which contains the sysroot the image * should contain. */ const std::string &ir_dir; |