39 #ifndef __OPENFLUID_MACHINE_WAREREGISTRY_HPP__
40 #define __OPENFLUID_MACHINE_WAREREGISTRY_HPP__
49 template<
class SignatureType>
57 using WaresByID_t = std::map<openfluid::ware::WareID_t,WareContainer<SignatureType>>;
62 using WaresByPath_t = std::map<std::string,WareContainer<SignatureType>>;
97 const auto ID = Container.
signature()->ID;
Definition: WareContainer.hpp:62
bool hasSignature() const
Definition: WareContainer.hpp:207
std::string getPath() const
Definition: WareContainer.hpp:110
bool isValid() const
Definition: WareContainer.hpp:162
const std::unique_ptr< SignatureType > & signature() const
Definition: WareContainer.hpp:198
Definition: WareRegistry.hpp:51
virtual void discoverWares(const std::string IDPattern)=0
bool add(WareContainer< SignatureType > Container)
Definition: WareRegistry.hpp:91
const WaresByID_t & availableWares() const
Definition: WareRegistry.hpp:147
const WaresByPath_t & erroredWares() const
Definition: WareRegistry.hpp:156
std::map< openfluid::ware::WareID_t, WareContainer< SignatureType > > WaresByID_t
Definition: WareRegistry.hpp:57
WareContainer< SignatureType > m_InvalidWareContainer
Definition: WareRegistry.hpp:80
std::map< std::string, WareContainer< SignatureType > > WaresByPath_t
Definition: WareRegistry.hpp:62
virtual ~WareRegistry()
Definition: WareRegistry.hpp:83
const WareContainer< SignatureType > & wareContainer(const openfluid::ware::WareID_t &ID) const
Definition: WareRegistry.hpp:131
virtual bool addWare(const openfluid::ware::WareID_t &ID)=0
WaresByID_t m_AvailableWares
Definition: WareRegistry.hpp:76
WaresByPath_t m_ErroredWares
Definition: WareRegistry.hpp:78
bool hasAvailableWare(const openfluid::ware::WareID_t &ID) const
Definition: WareRegistry.hpp:166
void clearWares()
Definition: WareRegistry.hpp:120
std::string WareID_t
Definition: TypeDefs.hpp:49
Definition: ApplicationException.hpp:47