17enum class ComponentHealth {
28enum class ConfigFileMode {
39class RawComponentBase {
41 RawComponentBase() =
default;
43 RawComponentBase(RawComponentBase&&) =
delete;
45 RawComponentBase(
const RawComponentBase&) =
delete;
47 virtual ~RawComponentBase();
49 virtual ComponentHealth GetComponentHealth()
const {
return ComponentHealth::kOk; }
51 virtual void OnLoadingCancelled() {}
53 virtual void OnAllComponentsLoaded() {}
55 virtual void OnAllComponentsAreStopping() {}
57 static yaml_config::Schema GetStaticConfigSchema();
64template <
typename Component>
65inline constexpr bool kHasValidate =
false;
70template <
typename Component>
71inline constexpr auto kConfigFileMode = ConfigFileMode::kRequired;