Fire Core  8.0.0.alpha
GIS framework per tutti gli usi
 Tutto Classi Namespace Funzioni Variabili Ridefinizioni di tipo (typedef) Tipi enumerati (enum) Valori del tipo enumerato Friend
ResourcesFactory.hpp
1 // Copyright 2015 GEOSYSTEMS SRL
2 // All Rights Reserved.
3 
4 #ifndef FIRE_RESOURCES_RESOURCESFACTORY_HPP_INCLUDED
5 #define FIRE_RESOURCES_RESOURCESFACTORY_HPP_INCLUDED
6 
7 #include <boost/filesystem.hpp>
8 
9 #include <exception>
10 #include <string>
11 #include <vector>
12 
13 #include "fire/export.hpp"
14 
15 #include "fire/Object.hpp"
16 
17 namespace fire {
18 namespace resources {
19 class Properties;
20 } // namespace resources
21 } // namespace fire
22 
27 namespace fire {
32 namespace resources {
37 class FIRE_ENGINE_DLL ResourcesFactory : public fire::Object {
38  private:
43  static fire::resources::ResourcesFactory* resourcesFactory;
48  boost::filesystem::path resourcesFolderPath;
61  explicit ResourcesFactory(const std::string& resourcesFolderPath);
62 
63  public:
71  static ResourcesFactory* instance();
82  static ResourcesFactory* instance(const std::string& resourcesFolderPath);
90  std::string getResourcesFolderPath() const;
98  void setResourcesFolderPath(const std::string& resourcesFolderPath);
109  std::vector< std::string > getResourcePaths(std::string& filter) const;
120  fire::resources::Properties* createProperties(const std::string& propertiesPath) const;
121 };
122 } // namespace resources
123 } // namespace fire
124 
125 #endif
Classe per la gestione della factory delle risorse.
Definition: ResourcesFactory.hpp:37
Classe per la gestione di un oggetto.
Definition: Object.hpp:29
Classe per la gestione delle proprietà contenute in una risorsa.
Definition: Properties.hpp:36