18 #ifndef __itkSCIFIOImageIO_h
19 #define __itkSCIFIOImageIO_h
21 #include "SCIFIOExport.h"
24 #include "itksys/Process.h"
25 #include "itksys/SystemTools.hxx"
94 virtual bool SupportsDimension(
unsigned long dim );
98 virtual bool CanReadFile(
const char* FileNameToRead);
101 virtual bool SetSeries(
int series);
104 virtual int GetSeriesCount();
107 virtual void ReadImageInformation();
110 virtual void Read(
void* buffer);
114 virtual bool CanWriteFile(
const char* FileNameToWrite);
117 virtual void WriteImageInformation();
120 virtual void Write(
const void* buffer);
129 void CreateJavaProcess();
130 void DestroyJavaProcess();
131 std::string FindDimensionOrder(
const ImageIORegion & region );
132 std::string WaitForNewLines(
int pipedatalength);
133 void CheckError(std::string message);
135 char **
toCArray( std::vector< std::string > & args )
137 char **argv =
new char *[args.size() + 1];
138 for(
int i = 0; i < static_cast< int >( args.size() ); i++ )
140 itkDebugMacro(
"SCIFIOImageIO::toCArray::args["<<i<<
"] = " << args[i]);
141 argv[i] = (
char*)args[i].c_str();
143 argv[args.size()] =
NULL;
199 itksysProcess_Pipe_Handle m_Pipe[2];
204 #endif // __itkSCIFIOImageIO_h
Light weight base class for most itk classes.
An ImageIORegion represents a structured region of data.
Abstract superclass defines image IO interface.
A base class for specific ImageIO file formats which support streaming.
Interface to the OME SCIFIO Java Library.
ImageIOBase::IOComponentType scifioToITKComponentType(int pixelType)
itksysProcess * m_Process
char ** toCArray(std::vector< std::string > &args)
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
int itkToSCIFIOPixelType(ImageIOBase::IOComponentType cmp)
std::vector< std::string > m_Args
MetaDataDictionary m_MetaDataDictionary
virtual SizeType GetHeaderSize() const
Returns the size of the header in the file.
Base class for most ITK classes.