35 #ifndef vtkImageImport_h
36 #define vtkImageImport_h
38 #include "vtkIOImageModule.h"
62 void SetImportVoidPointer(
void *ptr);
73 void SetImportVoidPointer(
void *ptr,
int save);
89 vtkGetMacro(DataScalarType,
int);
91 return vtkImageScalarTypeNameMacro(this->DataScalarType); }
100 vtkGetMacro(NumberOfScalarComponents,
int);
110 vtkSetVector6Macro(DataExtent,
int);
111 vtkGetVector6Macro(DataExtent,
int);
113 {this->SetDataExtent(this->GetWholeExtent());}
121 vtkSetVector3Macro(DataSpacing,
double);
122 vtkGetVector3Macro(DataSpacing,
double);
130 vtkSetVector3Macro(DataOrigin,
double);
131 vtkGetVector3Macro(DataOrigin,
double);
140 vtkSetVector6Macro(WholeExtent,
int);
141 vtkGetVector6Macro(WholeExtent,
int);
157 int requestFromOutputPort,
165 vtkSetStringMacro(ScalarArrayName);
174 typedef void (*UpdateInformationCallbackType)(
void*);
175 typedef int (*PipelineModifiedCallbackType)(
void*);
176 typedef int* (*WholeExtentCallbackType)(
void*);
177 typedef double* (*SpacingCallbackType)(
void*);
178 typedef double* (*OriginCallbackType)(
void*);
179 typedef const char* (*ScalarTypeCallbackType)(
void*);
180 typedef int (*NumberOfComponentsCallbackType)(
void*);
181 typedef void (*PropagateUpdateExtentCallbackType)(
void*,
int*);
182 typedef void (*UpdateDataCallbackType)(
void*);
183 typedef int* (*DataExtentCallbackType)(
void*);
184 typedef void* (*BufferPointerCallbackType)(
void*);
193 vtkSetMacro(UpdateInformationCallback, UpdateInformationCallbackType);
194 vtkGetMacro(UpdateInformationCallback, UpdateInformationCallbackType);
204 vtkSetMacro(PipelineModifiedCallback, PipelineModifiedCallbackType);
205 vtkGetMacro(PipelineModifiedCallback, PipelineModifiedCallbackType);
215 vtkSetMacro(WholeExtentCallback, WholeExtentCallbackType);
216 vtkGetMacro(WholeExtentCallback, WholeExtentCallbackType);
226 vtkGetMacro(SpacingCallback, SpacingCallbackType);
236 vtkGetMacro(OriginCallback, OriginCallbackType);
245 vtkSetMacro(ScalarTypeCallback, ScalarTypeCallbackType);
246 vtkGetMacro(ScalarTypeCallback, ScalarTypeCallbackType);
255 vtkSetMacro(NumberOfComponentsCallback, NumberOfComponentsCallbackType);
256 vtkGetMacro(NumberOfComponentsCallback, NumberOfComponentsCallbackType);
267 vtkSetMacro(PropagateUpdateExtentCallback,PropagateUpdateExtentCallbackType);
268 vtkGetMacro(PropagateUpdateExtentCallback,PropagateUpdateExtentCallbackType);
277 vtkSetMacro(UpdateDataCallback, UpdateDataCallbackType);
278 vtkGetMacro(UpdateDataCallback, UpdateDataCallbackType);
289 vtkSetMacro(DataExtentCallback, DataExtentCallbackType);
290 vtkGetMacro(DataExtentCallback, DataExtentCallbackType);
300 vtkSetMacro(BufferPointerCallback, BufferPointerCallbackType);
301 vtkGetMacro(BufferPointerCallback, BufferPointerCallbackType);
310 vtkGetMacro(CallbackUserData,
void*);
317 int InvokePipelineModifiedCallbacks();
318 void InvokeUpdateInformationCallbacks();
319 void InvokeExecuteInformationCallbacks();
320 void InvokeExecuteDataCallbacks();
321 void LegacyCheckWholeExtent();
340 double DataSpacing[3];
341 double DataOrigin[3];
void SetDataScalarTypeToDouble()
Set/Get the data type of pixels in the imported data.
void SetDataScalarTypeToShort()
Set/Get the data type of pixels in the imported data.
const char * GetDataScalarTypeAsString()
Set/Get the data type of pixels in the imported data.
void * GetImportVoidPointer()
Set the pointer from which the image data is imported.
#define VTK_UNSIGNED_SHORT
WholeExtentCallbackType WholeExtentCallback
virtual int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime)
A special version of ProcessRequest meant specifically for the pipeline modified time request...
virtual void ExecuteDataWithInformation(vtkDataObject *output, vtkInformation *outInfo)
This is a convenience method that is implemented in many subclasses instead of RequestData.
BufferPointerCallbackType BufferPointerCallback
void SetDataScalarTypeToFloat()
Set/Get the data type of pixels in the imported data.
vtkTypeUInt64 vtkMTimeType
void SetDataExtentToWholeExtent()
Get/Set the extent of the data buffer.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Subclasses can reimplement this method to translate the update extent requests from each output port ...
void SetDataScalarTypeToInt()
Set/Get the data type of pixels in the imported data.
Import data from a C array.
UpdateDataCallbackType UpdateDataCallback
a simple class to control print indentation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Subclasses can reimplement this method to collect information from their inputs and set information f...
void SetDataScalarTypeToUnsignedChar()
Set/Get the data type of pixels in the imported data.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
void SetDataScalarTypeToUnsignedShort()
Set/Get the data type of pixels in the imported data.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void save(Archiver &ar, const vtkUnicodeString &str, const unsigned int vtkNotUsed(version))
PropagateUpdateExtentCallbackType PropagateUpdateExtentCallback
NumberOfComponentsCallbackType NumberOfComponentsCallback
#define VTK_UNSIGNED_CHAR
ScalarTypeCallbackType ScalarTypeCallback
Generic algorithm superclass for image algs.
static vtkAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int NumberOfScalarComponents
UpdateInformationCallbackType UpdateInformationCallback
OriginCallbackType OriginCallback
general representation of visualization data
PipelineModifiedCallbackType PipelineModifiedCallback
SpacingCallbackType SpacingCallback
DataExtentCallbackType DataExtentCallback