SST 16.0.0
Structural Simulation Toolkit
sstcptmodel.h
1// -*- c++ -*-
2
3// Copyright 2009-2026 NTESS. Under the terms
4// of Contract DE-NA0003525 with NTESS, the U.S.
5// Government retains certain rights in this software.
6//
7// Copyright (c) 2009-2026, NTESS
8// All rights reserved.
9//
10// This file is part of the SST software package. For license
11// information, see the LICENSE file in the top level directory of the
12// distribution.
13
14#ifndef SST_CORE_MODEL_RESTART_SSTCPTMODEL_H
15#define SST_CORE_MODEL_RESTART_SSTCPTMODEL_H
16
17#include "sst/core/config.h"
18#include "sst/core/model/configGraph.h"
19#include "sst/core/model/sstmodel.h"
20#include "sst/core/output.h"
21#include "sst/core/rankInfo.h"
22#include "sst/core/sst_types.h"
23#include "sst/core/warnmacros.h"
24
25// #include "nlohmann/json.hpp"
26
27#include <string>
28
29// using json = nlohmann::json;
30
31namespace SST::Core {
32
33class SSTCPTModelDefinition : public SSTModelDescription
34{
35public:
36 SST_ELI_REGISTER_MODEL_DESCRIPTION(
38 "sst",
39 "model.sstcpt",
40 SST_ELI_ELEMENT_VERSION(1,0,0),
41 "JSON model for building SST simulation graphs",
42 false)
43
44 SST_ELI_DOCUMENT_MODEL_SUPPORTED_EXTENSIONS(".sstcpt")
45
46 SSTCPTModelDefinition(const std::string& script_file, int verbosity, Config* config, double start_time);
47 ~SSTCPTModelDefinition() = default;
48
50
51protected:
52 std::string manifest_;
53 Output* output_ = nullptr;
54 Config* config_ = nullptr;
55 ConfigGraph* graph_ = nullptr;
56 double start_time_ = 0.0;
57
58 std::string version_ = "";
59 std::string arch_ = "";
60 std::string os_ = "";
61};
62
63} // namespace SST::Core
64
65#endif // SST_CORE_MODEL_RESTART_SSTCPTMODEL_H
A Configuration Graph A graph representing Components and Links.
Definition configGraph.h:76
Class to contain SST Simulation Configuration variables.
Definition config.h:52
Definition sstcptmodel.h:34
ConfigGraph * createConfigGraph() override
Create the ConfigGraph.
Definition sstcptmodel.cc:37
Output object provides consistent method for outputting data to stdout, stderr and/or sst debug file.
Definition output.h:58