17 #ifndef _GAZEBO_MODELDATABSE_HH_ 18 #define _GAZEBO_MODELDATABSE_HH_ 24 #include <boost/function.hpp> 31 #define GZ_MODEL_MANIFEST_FILENAME "model.config" 34 #define GZ_MODEL_DB_MANIFEST_FILENAME "database.config" 44 class ModelDatabasePrivate;
63 public:
void Start(
bool _fetchImmediately =
false);
70 public: std::string GetURI();
77 public: std::map<std::string, std::string> GetModels();
87 void (
const std::map<std::string, std::string> &)> _func);
96 public: std::string GetModelName(
const std::string &_uri);
100 public: std::string GetModelConfig(
const std::string &_uri);
104 public: std::string GetDBConfig(
const std::string &_uri);
113 public: std::string GetModelPath(
const std::string &_uri,
114 bool _forceDownload =
false);
122 public: std::string GetModelFile(
const std::string &_uri);
130 public:
void DownloadDependencies(
const std::string &_path);
137 public:
bool HasModel(
const std::string &_modelName);
142 private: std::string GetManifestImpl(
const std::string &_uri);
147 private:
void UpdateModelCache(
bool _fetchImmediately);
151 private:
bool UpdateModelCacheImpl();
154 private: ModelDatabasePrivate *dataPtr;
Forward declarations for the common classes.
Definition: Animation.hh:26
Singleton template class.
Definition: SingletonT.hh:33
common
Definition: ModelDatabase.hh:37
Connects to model database, and has utility functions to find models.
Definition: ModelDatabase.hh:52
boost::shared_ptr< Connection > ConnectionPtr
Definition: CommonTypes.hh:134
#define GZ_SINGLETON_DECLARE(visibility, n1, n2, singletonType)
Helper to declare typed SingletonT.
Definition: SingletonT.hh:61