Merge topic 'serialization-fixes'
ec4a434dc Include all int types in SerializableTypeString d9fe6a546 Fix ArrayHandleCast serializable type name Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Sujin Philip <sujin.philip@kitware.com> Merge-request: !2311
This commit is contained in:
commit
60f19f3f9e
@ -284,9 +284,8 @@ struct SerializableTypeString<vtkm::cont::ArrayHandleCast<T, AH>>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "AH_Cast<" + SerializableTypeString<T>::Get() + "," +
|
||||
SerializableTypeString<typename AH::ValueType>::Get() + "," +
|
||||
SerializableTypeString<typename AH::StorageTag>::Get() + ">";
|
||||
static std::string name =
|
||||
"AH_Cast<" + SerializableTypeString<T>::Get() + "," + SerializableTypeString<AH>::Get() + ">";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
|
@ -49,88 +49,35 @@ std::string GetVariadicSerializableTypeString(const T&)
|
||||
return SerializableTypeString<T>::Get();
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
std::string IntTypeString()
|
||||
{
|
||||
return (std::is_signed<T>::value ? "I" : "U") + std::to_string(sizeof(T) * 8);
|
||||
}
|
||||
|
||||
} // internal
|
||||
|
||||
/// @cond SERIALIZATION
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::Int8>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "I8";
|
||||
return name;
|
||||
#define VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(int_type) \
|
||||
template <> \
|
||||
struct SerializableTypeString<int_type> \
|
||||
{ \
|
||||
static VTKM_CONT std::string Get() { return internal::IntTypeString<int_type>(); } \
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::UInt8>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "U8";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(char);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(signed char);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(unsigned char);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(signed short);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(unsigned short);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(signed int);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(unsigned int);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(signed long);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(unsigned long);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(signed long long);
|
||||
VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL(unsigned long long);
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::Int16>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "I16";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::UInt16>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "U16";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::Int32>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "I32";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::UInt32>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "U32";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::Int64>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "I64";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::UInt64>
|
||||
{
|
||||
static VTKM_CONT const std::string& Get()
|
||||
{
|
||||
static std::string name = "U64";
|
||||
return name;
|
||||
}
|
||||
};
|
||||
#undef VTK_M_SERIALIZABLE_INT_TYPE_STRING_IMPL
|
||||
|
||||
template <>
|
||||
struct SerializableTypeString<vtkm::Float32>
|
||||
|
Loading…
Reference in New Issue
Block a user