Material Definition Language API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ireader.h
Go to the documentation of this file.
1 /***************************************************************************************************
2  * Copyright 2020 NVIDIA Corporation. All rights reserved.
3  **************************************************************************************************/
6 
7 #ifndef MI_NEURAYLIB_IREADER_H
8 #define MI_NEURAYLIB_IREADER_H
9 
11 
12 namespace mi {
13 
14 namespace neuraylib {
15 
22 class IReader :
25  public base::Interface_declare<0xc03de0cf,0x5a03,0x4e8f,0xa1,0x59,0x6c,0xad,0xd6,0xf8,0xae,0x58,
26  neuraylib::IReader_writer_base>
27 {
28 public:
35  virtual Sint64 read( char* buffer, Sint64 size) = 0;
36 
47  virtual bool readline( char* buffer, Sint32 size) = 0;
48 
50 
51 
55  virtual bool supports_lookahead() const = 0;
56 
72  virtual Sint64 lookahead( Sint64 size, const char** buffer) const = 0;
73 
75 
76 };
77  // end group mi_neuray_impexp
79 
80 } // namespace neuraylib
81 
82 } // namespace mi
83 
84 #endif // MI_NEURAYLIB_IREADER_H