12 #ifndef SST_CORE_ELEMENT_H
13 #define SST_CORE_ELEMENT_H
15 #include <sst/core/sst_types.h>
16 #include <sst/core/params.h>
21 #include <sst/core/elibase.h>
36 typedef Component* (*componentAllocate)(ComponentId_t, Params&);
37 typedef Introspector* (*introspectorAllocate)(Params&);
38 typedef void (*eventInitialize)(void);
39 typedef Module* (*moduleAllocate)(Params&);
40 typedef Module* (*moduleAllocateWithComponent)(Component*, Params&);
41 typedef SubComponent* (*subcomponentAllocate)(Component*, Params&);
43 typedef void (*generateFunction)(ConfigGraph*, std::string options,
int ranks);
44 typedef void* (*genPythonModuleFunction)(void);
124 #if SST_BUILDING_CORE
127 struct __attribute__ ((deprecated("Old ELI support (defined in sst/core/element.h) will be removed in version 9.0. Please convert to new ELI (defined in sst/core/elementinfo.h).")))
ElementLibraryInfo {
144 #endif // SST_CORE_ELEMENT_H
const ElementInfoStatistic * stats
Definition: element.h:98
Describes an Event.
Definition: element.h:73
struct ElementInfoComponent * components
Definition: element.h:131
const char * provides
Definition: element.h:89
Describes a Component and its associated information.
Definition: element.h:49
componentAllocate alloc
Definition: element.h:53
Describes a Partitioner.
Definition: element.h:106
const char * description
Definition: element.h:51
struct ElementInfoIntrospector * introspectors
Definition: element.h:133
uint32_t category
Definition: element.h:56
const char * name
Definition: element.h:50
introspectorAllocate alloc
Definition: element.h:67
Describes all the parts of the Element Library.
Definition: element.h:127
void(* printHelp)(FILE *output)
Definition: element.h:118
moduleAllocate alloc
Definition: element.h:86
const char * description
Definition: element.h:65
const char * description
Definition: element.h:75
void(* printHelp)(FILE *output)
Definition: element.h:109
const char * name
Definition: element.h:129
struct ElementInfoEvent * events
Definition: element.h:132
struct ElementInfoSubComponent * subcomponents
Definition: element.h:135
const ElementInfoStatistic * stats
Definition: element.h:57
struct ElementInfoGenerator * generators
Definition: element.h:138
void(* printHelp)(FILE *output)
Definition: element.h:66
void(* printHelp)(FILE *output)
Definition: element.h:76
Describes Statistics used by a Component.
Definition: elibase.h:31
Describes a Generator.
Definition: element.h:115
const char * name
Definition: element.h:74
Describes an Introspector.
Definition: element.h:63
const char * description
Definition: element.h:108
eventInitialize init
Definition: element.h:77
const ElementInfoParam * params
Definition: element.h:68
const char * name
Definition: element.h:64
const ElementInfoParam * params
Definition: element.h:97
Describes Parameters to a Component.
Definition: elibase.h:40
partitionFunction func
Definition: element.h:110
const char * description
Definition: element.h:84
subcomponentAllocate alloc
Definition: element.h:96
moduleAllocateWithComponent alloc_with_comp
Definition: element.h:87
Base class for Partitioning graphs.
Definition: sstpart.h:31
const char * name
Definition: element.h:83
const char * provides
Definition: element.h:99
struct ElementInfoPartitioner * partitioners
Definition: element.h:136
Describes a Module.
Definition: element.h:82
const ElementInfoPort * ports
Definition: element.h:55
genPythonModuleFunction pythonModuleGenerator
Definition: element.h:137
const ElementInfoPort * ports
Definition: element.h:100
const char * description
Definition: element.h:94
struct ElementInfoModule * modules
Definition: element.h:134
const ElementInfoParam * params
Definition: element.h:88
const char * description
Definition: element.h:117
const char * description
Definition: element.h:130
void(* printHelp)(FILE *output)
Definition: element.h:52
const ElementInfoParam * params
Definition: element.h:54
const char * name
Definition: element.h:107
Describes Ports that the Component can use.
Definition: elibase.h:48
generateFunction func
Definition: element.h:119
const char * name
Definition: element.h:93
void(* printHelp)(FILE *output)
Definition: element.h:95
const char * name
Definition: element.h:116
void(* printHelp)(FILE *output)
Definition: element.h:85