dxx-rebirth/common/main/objnum.h
Kp bfeca84bb8 Change object::signature to be a generation counter
This removes the need to walk all objects when creating a new one, since
each object can have a private generation counter, unaware of other
objects.  For compatibility with demos, mix in the object's index when
writing the signature value.
2019-07-07 22:00:02 +00:00

25 lines
463 B
C++

#pragma once
#include <cstdint>
typedef uint16_t objnum_t;
class object_signature_t
{
uint16_t signature;
public:
explicit object_signature_t() = default;
constexpr explicit object_signature_t(uint16_t s) :
signature(s)
{
}
bool operator==(const object_signature_t &rhs) const
{
return signature == rhs.signature;
}
bool operator!=(const object_signature_t &rhs) const
{
return !(*this == rhs);
}
uint16_t get() const { return signature; }
};