Skip to content

Commit 180481b

Browse files
N-Dekkerhjmjohnson
authored andcommitted
ENH: Let file readers interpret CHAR enum as signed char
Let ImageFileReader, MeshFileReader, and VideoFileReader interpret `IOComponentEnum::CHAR` as `signed char`, instead of `char`. This ensures that 8-bits signed data files are properly interpreted.
1 parent b1266c2 commit 180481b

File tree

3 files changed

+4
-4
lines changed

3 files changed

+4
-4
lines changed

Modules/IO/ImageBase/include/itkImageFileReader.hxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,7 +482,7 @@ ImageFileReader<TOutputImage, ConvertPixelTraits>::DoConvertBuffer(const void *
482482
{
483483
}
484484
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::UCHAR, unsigned char)
485-
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, char)
485+
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, signed char)
486486
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::USHORT, unsigned short)
487487
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::SHORT, short)
488488
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::UINT, unsigned int)

Modules/IO/MeshBase/include/itkMeshFileReader.hxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -703,7 +703,7 @@ MeshFileReader<TOutputMesh, ConvertPointPixelTraits, ConvertCellPixelTraits>::Co
703703
{
704704
}
705705
ITK_CONVERT_POINT_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::UCHAR, unsigned char)
706-
ITK_CONVERT_POINT_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, char)
706+
ITK_CONVERT_POINT_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, signed char)
707707
ITK_CONVERT_POINT_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::USHORT, unsigned short)
708708
ITK_CONVERT_POINT_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::SHORT, short)
709709
ITK_CONVERT_POINT_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::UINT, unsigned int)
@@ -778,7 +778,7 @@ MeshFileReader<TOutputMesh, ConvertPointPixelTraits, ConvertCellPixelTraits>::Co
778778
{
779779
}
780780
ITK_CONVERT_CELL_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::UCHAR, unsigned char)
781-
ITK_CONVERT_CELL_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, char)
781+
ITK_CONVERT_CELL_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, signed char)
782782
ITK_CONVERT_CELL_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::USHORT, unsigned short)
783783
ITK_CONVERT_CELL_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::SHORT, short)
784784
ITK_CONVERT_CELL_PIXEL_BUFFER_IF_BLOCK(IOComponentEnum::UINT, unsigned int)

Modules/Video/IO/include/itkVideoFileReader.hxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ VideoFileReader<TOutputVideoStream>::DoConvertBuffer(const void * inputData, Fra
274274
{
275275
}
276276
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::UCHAR, unsigned char)
277-
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, char)
277+
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::CHAR, signed char)
278278
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::USHORT, unsigned short)
279279
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::SHORT, short)
280280
ITK_CONVERT_BUFFER_IF_BLOCK(IOComponentEnum::UINT, unsigned int)

0 commit comments

Comments
 (0)