12#ifndef SST_CORE_MODEL_SSTMODEL_H
13#define SST_CORE_MODEL_SSTMODEL_H
15#include "sst/core/eli/elementinfo.h"
16#include "sst/core/params.h"
17#include "sst/core/warnmacros.h"
29class SSTModelDescription
33 SST_ELI_DECLARE_BASE(SSTModelDescription)
35 SST_ELI_DECLARE_CTOR_EXTERN(
const std::string&,
int,
Config*,
double)
36 SST_ELI_DECLARE_INFO_EXTERN(
41 static bool isElementParallelCapable(
const std::string& type);
42 static const std::vector<std::string>& getElementSupportedExtensions(
const std::string& type);
44 explicit SSTModelDescription(
Config* cfg);
45 virtual ~SSTModelDescription() {};
100#define SST_ELI_REGISTER_MODEL_DESCRIPTION(cls, lib, name, version, desc, parallel_capable) \
101 SST_ELI_REGISTER_DERIVED(SST::SSTModelDescription, ::cls,lib,name,ELI_FORWARD_AS_ONE(version),desc) \
102 SST_ELI_DOCUMENT_SIMPLE_INFO(bool,0,parallel_capable)
104#define SST_ELI_DOCUMENT_MODEL_SUPPORTED_EXTENSIONS(...) \
105 SST_ELI_DOCUMENT_SIMPLE_INFO(std::vector<std::string>,1,__VA_ARGS__)
A Configuration Graph A graph representing Components and Links.
Definition configGraph.h:450
Class to contain SST Simulation Configuration variables.
Definition config.h:41
Definition simpleInfo.h:88
std::string key_type
Definition params.h:236
void setModelOptions(const std::string &options)
Sets the model options field of the Config object.
Definition sstmodel.cc:35
virtual ConfigGraph * createConfigGraph()=0
Create the ConfigGraph.
void insertGlobalParameter(const std::string &set, const Params::key_type &key, const Params::key_type &value, bool overwrite=true)
Allows ModelDefinition to set global parameters.
Definition sstmodel.cc:41
bool setOptionFromModel(const std::string &entryName, const std::string &value)
Set a configuration string to update configuration values.
Definition sstmodel.cc:29