VTK  9.6.20260212
vtkAbstractBuffer.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
13
14#ifndef vtkAbstractBuffer_h
15#define vtkAbstractBuffer_h
16
17#include "vtkCommonCoreModule.h" // For export macro
18#include "vtkObject.h"
19
20VTK_ABI_NAMESPACE_BEGIN
21
22class VTKCOMMONCORE_EXPORT vtkAbstractBuffer : public vtkObject
23{
24public:
26
30 virtual void* GetVoidBuffer() = 0;
31
35 virtual vtkIdType GetNumberOfElements() const = 0;
36
41 virtual int GetDataType() const = 0;
42
46 virtual int GetDataTypeSize() const = 0;
47
48protected:
49 vtkAbstractBuffer() = default;
50 ~vtkAbstractBuffer() override = default;
51
52private:
53 vtkAbstractBuffer(const vtkAbstractBuffer&) = delete;
54 void operator=(const vtkAbstractBuffer&) = delete;
55};
56
57VTK_ABI_NAMESPACE_END
58#endif
59// VTK-HeaderTest-Exclude: vtkAbstractBuffer.h
virtual void * GetVoidBuffer()=0
Return the buffer pointer as a void pointer.
virtual int GetDataType() const =0
Return the VTK data type identifier for the buffer's scalar type.
virtual int GetDataTypeSize() const =0
Return the size in bytes of a single element.
virtual vtkIdType GetNumberOfElements() const =0
Return the number of elements in the buffer.
vtkAbstractBuffer()=default
~vtkAbstractBuffer() override=default
int vtkIdType
Definition vtkType.h:354