|
|
@@ -80,11 +80,6 @@ protected:
|
|
|
static int id = 0;
|
|
|
return id++;
|
|
|
}
|
|
|
- template<typename T>
|
|
|
- static FamilyId GetId() {
|
|
|
- static int id = GetNewId();
|
|
|
- return static_cast<FamilyId>(id);
|
|
|
- }
|
|
|
};
|
|
|
|
|
|
template<typename T>
|
|
|
@@ -93,7 +88,8 @@ public:
|
|
|
// Get a unique ID for a given type.
|
|
|
// Note: IDs will be unique across DLL-boundaries even for the same type.
|
|
|
static FamilyId Id() {
|
|
|
- return GetId< typename std::remove_cv< typename std::remove_reference< T >::type >::type >();
|
|
|
+ static int id = GetNewId();
|
|
|
+ return static_cast<FamilyId>(id);
|
|
|
}
|
|
|
};
|
|
|
|