SMTK
@SMTK_VERSION@
Simulation Modeling Tool Kit
|
10 #ifndef smtk_markup_Component_h
11 #define smtk_markup_Component_h
13 #include "smtk/markup/Exports.h"
15 #include "smtk/graph/ArcImplementation.h"
16 #include "smtk/graph/Component.h"
18 #include "nlohmann/json.hpp"
20 #include <type_traits>
34 template<
typename ArcTraits,
typename Constness,
typename Outgoingness>
45 struct GroupsToMembers;
46 struct LabelsToSubjects;
47 struct OntologyIdentifiersToIndividuals;
48 struct URLsToImportedData;
57 using Serialize = std::true_type;
58 using Index = std::size_t;
60 template<
typename... Args>
68 virtual void initialize(
const nlohmann::json& data, smtk::resource::json::Helper& helper);
71 Component::Index index()
const;
74 std::string name()
const override;
77 bool setName(
const std::string& name);
110 ontologyClasses()
const;
124 #endif // smtk_markup_Component_h
The main namespace for the Simulation Modeling Tool Kit (SMTK).
Definition: doc.h:33
Graph Component represents a node in the graph resource.
Definition: Component.h:62
For endpoint interfaces, provide tag classes used to select incoming or outgoing APIs.
Definition: ArcTraits.h:34
Definition: Component.h:51
An object that a node instance can present to access/edit its outgoing/incoming arcs.
Definition: ArcImplementation.h:39
For endpoint interfaces, provide tag classes used to select const or non-const APIs.
Definition: ArcTraits.h:26
#define smtkTypeMacro(...)
Add typedefs to a class for identifcation.
Definition: SharedFromThis.h:128
static const Component::Index type_index
A unique integer corresponding to the component type.
Definition: Component.h:80
#define smtkSuperclassMacro(...)
Add a typedef to the superclass of this class.
Definition: SharedFromThis.h:147
Definition: Component.cxx:23