41 #include <openfluid/config.hpp>
42 #include <openfluid/ware/TypeDefs.hpp>
50 #ifndef __OPENFLUID_WARE_WARESIGNATURE_HPP__
51 #define __OPENFLUID_WARE_WARESIGNATURE_HPP__
63 using Person_t = std::pair<std::string,std::string>;
65 using Link_t = std::pair<std::string,std::string>;
152 std::vector<std::string> MatchingTags;
153 for(
const auto& Tag : Tags)
155 const std::string TagType = Type + openfluid::config::STR_SEPARATOR_TAG_TYPE;
202 return "experimental";
214 if (StatusStr ==
"beta")
218 else if (StatusStr ==
"stable")
247 std::function<
bool(
const std::string&,std::string&,
272 const std::string& D,
const std::string& SI,
273 std::function<
bool(
const std::string&,std::string&,
325 RequiredParams.clear();
326 RequiredVars.clear();
328 RequiredAttributes.clear();
329 UsedAttributes.clear();
330 RequiredExtraFiles.clear();
331 UsedExtraFiles.clear();
Type
Definition: Value.hpp:66
@ NONE
Definition: Value.hpp:66
Definition: WareSignature.hpp:338
SignatureHandledData HandledData
Definition: WareSignature.hpp:343
void clear()
Definition: WareSignature.hpp:345
Definition: WareSignature.hpp:235
SignatureDataItem(const std::string &N, const std::string &D, const std::string &SI, openfluid::core::Value::Type T, std::function< bool(const std::string &)> Validator=openfluid::ware::isNonEmpty)
std::string SIUnit
Definition: WareSignature.hpp:240
std::string Name
Definition: WareSignature.hpp:238
SignatureDataItem()
Definition: WareSignature.hpp:243
SignatureDataItem(const std::string &N, const std::string &D, const std::string &SI, std::function< bool(const std::string &, std::string &, openfluid::core::Value::Type &)> Extractor=openfluid::ware::identityExtractor)
std::string Description
Definition: WareSignature.hpp:239
Definition: WareSignature.hpp:294
std::vector< SignatureDataItem > UsedParams
Definition: WareSignature.hpp:297
std::vector< SignatureSpatialDataItem > UsedVars
Definition: WareSignature.hpp:303
std::vector< std::string > RequiredExtraFiles
Definition: WareSignature.hpp:309
std::vector< std::string > UsedExtraFiles
Definition: WareSignature.hpp:311
void clear()
Definition: WareSignature.hpp:322
std::vector< SignatureSpatialDataItem > RequiredAttributes
Definition: WareSignature.hpp:305
std::vector< SignatureSpatialDataItem > RequiredVars
Definition: WareSignature.hpp:301
SignatureHandledData()
Definition: WareSignature.hpp:314
std::vector< SignatureSpatialDataItem > UsedAttributes
Definition: WareSignature.hpp:307
std::vector< SignatureDataItem > RequiredParams
Definition: WareSignature.hpp:299
~SignatureHandledData()
Definition: WareSignature.hpp:319
Definition: WareSignature.hpp:263
openfluid::core::UnitsClass_t UnitsClass
Definition: WareSignature.hpp:266
SignatureSpatialDataItem(const std::string &N, const openfluid::core::UnitsClass_t &U, const std::string &D, const std::string &SI, std::function< bool(const std::string &, std::string &, openfluid::core::Value::Type &)> Extractor=openfluid::ware::identityExtractor)
Definition: WareSignature.hpp:271
SignatureSpatialDataItem()
Definition: WareSignature.hpp:268
SignatureSpatialDataItem(const std::string &N, const openfluid::core::UnitsClass_t &U, const std::string &D, const std::string &SI, openfluid::core::Value::Type T, std::function< bool(const std::string &)> Validator=openfluid::ware::isNonEmpty)
Definition: WareSignature.hpp:278
Definition: WareIssues.hpp:135
void clear()
Definition: WareIssues.hpp:180
Definition: WareSignature.hpp:58
WareID_t ID
Definition: WareSignature.hpp:79
WareStatus_t Status
Definition: WareSignature.hpp:93
PeopleList_t Authors
Definition: WareSignature.hpp:98
std::vector< std::string > Tags
Definition: WareSignature.hpp:113
std::string Description
Definition: WareSignature.hpp:83
void clear()
Definition: WareSignature.hpp:170
LinksList_t Links
Definition: WareSignature.hpp:118
virtual openfluid::ware::WareType getType() const =0
WareSignature()
Definition: WareSignature.hpp:131
virtual ~WareSignature()=default
std::pair< std::string, std::string > Person_t
Definition: WareSignature.hpp:63
std::string License
Definition: WareSignature.hpp:108
std::string getStatusAsString() const
Definition: WareSignature.hpp:191
SignatureBuildInfo BuildInfo
Definition: WareSignature.hpp:77
std::vector< Link_t > LinksList_t
Definition: WareSignature.hpp:69
std::map< std::string, std::string > DependenciesMap_t
Definition: WareSignature.hpp:71
WareName_t Name
Definition: WareSignature.hpp:81
void setStatusFromString(const std::string &StatusStr)
Definition: WareSignature.hpp:210
std::vector< Person_t > PeopleList_t
Definition: WareSignature.hpp:67
DependenciesMap_t Dependencies
Definition: WareSignature.hpp:128
WareVersion_t Version
Definition: WareSignature.hpp:88
PeopleList_t Contacts
Definition: WareSignature.hpp:103
std::vector< std::string > getTagsByType(const std::string &Type) const
Definition: WareSignature.hpp:150
WareIssues Issues
Definition: WareSignature.hpp:123
std::pair< std::string, std::string > Link_t
Definition: WareSignature.hpp:65
#define OPENFLUID_API
Definition: dllexport.hpp:86
std::string UnitsClass_t
Definition: TypeDefs.hpp:98
WareType
Definition: TypeDefs.hpp:61
std::string WareID_t
Definition: TypeDefs.hpp:49
std::string WareVersion_t
Definition: TypeDefs.hpp:53
std::string WareName_t
Definition: TypeDefs.hpp:51
bool OPENFLUID_API isNonEmpty(const std::string &Str)
Definition: DataItemUtils.hpp:75
WareStatus_t
Definition: TypeDefs.hpp:102
@ STABLE
Definition: TypeDefs.hpp:116
@ EXPERIMENTAL
Definition: TypeDefs.hpp:106
@ BETA
Definition: TypeDefs.hpp:111
bool OPENFLUID_API identityExtractor(const std::string &VO, std::string &V, openfluid::core::Value::Type &)
Definition: DataItemUtils.hpp:59
Definition: ApplicationException.hpp:47
Definition: TypeDefs.hpp:125