// Copyright (c) 2023 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #pragma once #include "dawnlibs.hpp" namespace Dawn { struct SceneItemComponentRegister { uint8_t i; }; class SceneItemComponentList { private: std::vector components; protected: /** * Request the list to append a scene item component of type T * to the registry. * * @tparam T Parameter type of the SceneItemComponent */ template void append() { struct SceneItemComponentRegister r; this->components.push_back(r); } public: /** * Initialies the scene item component list. This constructor is generated * at build time from the scene item component registry tool. */ SceneItemComponentList(); }; }