Warning, file /include/corecel/sys/ActionRegistryOutput.hh was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007 #pragma once
0008
0009 #include <memory>
0010
0011 #include "corecel/io/OutputInterface.hh"
0012
0013 namespace celeritas
0014 {
0015 class ActionRegistry;
0016
0017
0018
0019
0020 class ActionRegistryOutput final : public OutputInterface
0021 {
0022 public:
0023
0024
0025 using SPConstActionRegistry = std::shared_ptr<ActionRegistry const>;
0026
0027
0028 public:
0029
0030 explicit ActionRegistryOutput(SPConstActionRegistry actions);
0031
0032
0033 explicit ActionRegistryOutput(SPConstActionRegistry, std::string);
0034
0035
0036 Category category() const final { return Category::internal; }
0037
0038
0039 std::string_view label() const final { return label_; }
0040
0041
0042 void output(JsonPimpl*) const final;
0043
0044 private:
0045 SPConstActionRegistry actions_;
0046 std::string label_;
0047 };
0048
0049
0050 }