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 (
45  int firstScanLine, const char*& pixelData, int& pixelDataSize);
46 
48  void rawPixelDataToBuffer (
49  int scanLine, char* pixelData, int& pixelDataSize) const;
50 
52  void rawTileData (
53  int& dx,
54  int& dy,
55  int& lx,
56  int& ly,
57  const char*& pixelData,
58  int& pixelDataSize);
59 
60 private:
61  InputFile* file;
62  // for internal use - give OutputFile and TiledOutputFile access to file for copyPixels
63  friend class OutputFile;
64  friend class TiledOutputFile;
65 };
66 
68 
69 #endif /* IMFINPUTPART_H_ */
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT
Definition: ImfNamespace.h:83
class IMF_EXPORT_TYPE InputPart
Definition: ImfForward.h:54
#define IMF_EXPORT
Definition: ImfExport.h:54
GT_API const UT_StringHolder version
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER
Definition: ImfNamespace.h:80
#define IMF_EXPORT_TYPE
Definition: ImfExport.h:57