// Copyright (C) 2015 Jérôme Leclercq // This file is part of the "Nazara Development Kit" // For conditions of distribution and use, see copyright notice in Prerequesites.hpp #include namespace Ndk { template Component::Component() : BaseComponent(GetComponentId()) { } template Component::~Component() = default; template virtual BaseComponent* Component::Clone() const { static_assert::value, "ComponentType should be copy-constructible"> return new ComponentType(static_cast(*this)); } template constexpr nzUInt32 GetComponentId() { return ComponentType::ComponentId; } }