HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ImfInputPart.h
Go to the documentation of this file.
1 //
2 // SPDX-License-Identifier: BSD-3-Clause
3 // Copyright (c) Contributors to the OpenEXR Project.
4 //
5 
6 #ifndef IMFINPUTPART_H_
7 #define IMFINPUTPART_H_
8 
9 #include "ImfForward.h"
10 
12 
13 //-------------------------------------------------------------------
14 // class InputPart:
15 //
16 // Same interface as InputFile. Please refer to InputFile.
17 //-------------------------------------------------------------------
18 
20 {
21  public:
23  InputPart(MultiPartInputFile& multiPartFile, int partNumber);
24 
26  const char * fileName () const;
28  const Header & header () const;
30  int version () const;
32  void setFrameBuffer (const FrameBuffer &frameBuffer);
34  const FrameBuffer & frameBuffer () const;
36  bool isComplete () const;
38  bool isOptimizationEnabled () const;
40  void readPixels (int scanLine1, int scanLine2);
42  void readPixels (int scanLine);
44  void rawPixelData (int firstScanLine,
45  const char *&pixelData,
46  int &pixelDataSize);
47 
48 
50  void rawPixelDataToBuffer (int scanLine,
51  char *pixelData,
52  int &pixelDataSize) const;
53 
54 
56  void rawTileData (int &dx, int &dy,
57  int &lx, int &ly,
58  const char *&pixelData,
59  int &pixelDataSize);
60 
61  private:
62  InputFile* file;
63  // for internal use - give OutputFile and TiledOutputFile access to file for copyPixels
64  friend class OutputFile;
65  friend class TiledOutputFile;
66 
67 };
68 
70 
71 #endif /* IMFINPUTPART_H_ */
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT
Definition: ImfNamespace.h:80
class IMF_EXPORT_TYPE InputPart
Definition: ImfForward.h:55
#define IMF_EXPORT
Definition: ImfExport.h:54
GT_API const UT_StringHolder version
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER
Definition: ImfNamespace.h:79
#define IMF_EXPORT_TYPE
Definition: ImfExport.h:57