21 #ifndef LIB_LIGHTMETRICA_ASSETS_H
22 #define LIB_LIGHTMETRICA_ASSETS_H
24 #include "component.h"
28 #include <boost/signals2.hpp>
43 LM_COMPONENT_INTERFACE_DEF(
"assets");
52 LM_DISABLE_COPY_AND_MOVE(
Assets);
78 virtual boost::signals2::connection
Connect_ReportProgress(
const std::function<
void (
double,
bool)>& func) = 0;
93 virtual bool RegisterInterface(
const std::string& interfaceName,
const std::string& interfaceGroupName,
const std::vector<std::string>& dependencies) = 0;
104 template <
typename AssetInterfaceType>
126 template <
typename AssetInterfaceType>
133 #include "assets.inl"
135 #endif // LIB_LIGHTMETRICA_ASSETS_H
Definition: component.h:45
LM_PUBLIC_API Asset * ResolveReferenceToAsset(const ConfigNode &node, const std::string &type) const
Definition: assets.cpp:279
virtual bool Load(const ConfigNode &node)=0
virtual Asset * GetAssetByName(const std::string &name) const =0
virtual boost::signals2::connection Connect_ReportProgress(const std::function< void(double, bool)> &func)=0
Definition: confignode.h:37