vsg 1.1.3
VulkanSceneGraph library
|
#include <Inherit.h>
Public Member Functions | |
template<typename... Args> | |
Inherit (Args &&... args) | |
std::size_t | sizeofObject () const noexcept override |
const char * | className () const noexcept override |
const std::type_info & | type_info () const noexcept override |
bool | is_compatible (const std::type_info &type) const noexcept override |
int | compare (const Object &rhs) const override |
void | accept (Visitor &visitor) override |
void | accept (ConstVisitor &visitor) const override |
void | accept (RecordTraversal &visitor) const override |
Static Public Member Functions | |
template<typename... Args> | |
static ref_ptr< Subclass > | create (Args &&... args) |
template<typename... Args> | |
static ref_ptr< Subclass > | create_if (bool flag, Args &&... args) |
Inherit<> uses the Curiously Recurring Template Pattern to provide the classes versions of create, accept(..), RTTI and sizeofObject()
|
inlineoverride |
Reimplemented in vsg::RenderGraph.
|
inlineoverride |
Reimplemented in vsg::InputAssemblyState, vsg::InstrumentationNode, vsg::Joint, vsg::JointSampler, vsg::Layer, vsg::Light, vsg::LoadedObject, vsg::LOD, vsg::MatrixTransform, vsg::MorphSampler, vsg::MultisampleState, vsg::Options, vsg::PagedLOD, vsg::PercentageCloserSoftShadows, vsg::PipelineLayout, vsg::PointLight, vsg::QuadGroup, vsg::RasterizationState, vsg::RayTracingPipeline, vsg::RegionOfInterest, vsg::Sampler, vsg::ShaderCompileSettings, vsg::ShaderModule, vsg::ShaderSet, vsg::ShaderStage, vsg::ShadowSettings, vsg::SoftShadows, vsg::SpotLight, vsg::StateCommand, vsg::StateGroup, vsg::StateSwitch, vsg::Switch, vsg::TessellationState, vsg::TextGroup, vsg::TileDatabase, vsg::TileDatabaseSettings, vsg::Transform, vsg::TransformSampler, vsg::VertexDraw, vsg::VertexIndexDraw, vsg::VertexInputState, vsg::ViewDependentStateBinding, vsg::ViewDescriptorSetLayout, and vsg::ViewportState.