#pragma once namespace NCL { namespace CSC8503 { #define RAYCAST_LAYER_ID 0 class Layer { public: Layer() : layerID(0) {} ~Layer() = default; void SetLayerID(unsigned newID) { layerID = newID; } unsigned& GetLayerID() { return layerID; } const unsigned& GetConstLayerID() const { return layerID; } bool operator==(const Layer& other) const { if (this->GetConstLayerID() == other.GetConstLayerID()) return true; return false; } private: unsigned layerID; }; } }