NVIDIA Iray API Home  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 1986, 2016 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_NEURAYLIB_IREADER_H
9 #define MI_NEURAYLIB_IREADER_H
10 
12 #include <mi/neuraylib/version.h>
13 
14 namespace mi {
15 
16 namespace neuraylib {
17 
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 #ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
83 using neuraylib::IReader;
84 using neuraylib::IReader_writer_base;
85 #endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
86 
87 } // namespace mi
88 
89 #endif // MI_NEURAYLIB_IREADER_H