file_proxy.cpp
Go to the documentation of this file.
1 #include <qicore/file.hpp>
2 #include <qi/anymodule.hpp>
3 
4 namespace qi
5 {
6 class FileProxy : public File, public qi::Proxy
7 {
8 public:
9  explicit FileProxy(qi::AnyObject obj)
10  : qi::Proxy(std::move(obj))
11  {
12  }
13 
14  ~FileProxy() = default;
15 
16  Buffer read(std::streamsize countBytesToRead) override
17  {
18  return _obj.call<Buffer>("read", countBytesToRead);
19  }
20 
21  Buffer read(std::streamoff beginOffset, std::streamsize countBytesToRead) override
22  {
23  return _obj.call<Buffer>("read", beginOffset, countBytesToRead);
24  }
25 
26  bool seek(std::streamoff offsetFromBegin) override
27  {
28  return _obj.call<bool>("seek", offsetFromBegin);
29  }
30 
31  void close() override
32  {
33  return _obj.call<void>("close");
34  }
35 
36  std::streamsize size() const override
37  {
38  return _obj.call<std::streamsize>("size");
39  }
40 
41  bool isOpen() const override
42  {
43  return _obj.call<bool>("isOpen");
44  }
45 
46  bool isRemote() const override
47  {
48  return true;
49  }
50 
52  {
53  return _obj.call<ProgressNotifierPtr>("operationProgress");
54  }
55 
56  // Deprecated members
57  Buffer _read(std::streamsize countBytesToRead) override
58  {
59  return _obj.call<Buffer>("_read", countBytesToRead);
60  }
61 
62  Buffer _read(std::streamoff beginOffset, std::streamsize countBytesToRead) override
63  {
64  return _obj.call<Buffer>("_read", beginOffset, countBytesToRead);
65  }
66 
67  bool _seek(std::streamoff offsetFromBegin) override
68  {
69  return _obj.call<bool>("_seek", offsetFromBegin);
70  }
71 
72  void _close() override
73  {
74  return _obj.call<void>("_close");
75  }
76 };
77 
79 {
80  ::qi::registerProxyInterface<FileProxy, File>();
81 }
82 }
qi::ProgressNotifierPtr
qi::Object< ProgressNotifier > ProgressNotifierPtr
Pointer to a ProgressNotifier with shared/remote semantic.
Definition: file.hpp:114
qi::FileProxy::close
void close() override
Definition: file_proxy.cpp:31
qi::FileProxy::~FileProxy
~FileProxy()=default
qi::FileProxy::_read
Buffer _read(std::streamsize countBytesToRead) override
Definition: file_proxy.cpp:57
qi::FileProxy::isRemote
bool isRemote() const override
Definition: file_proxy.cpp:46
qi::FileProxy::_read
Buffer _read(std::streamoff beginOffset, std::streamsize countBytesToRead) override
Definition: file_proxy.cpp:62
qi::FileProxy::operationProgress
ProgressNotifierPtr operationProgress() const override
Definition: file_proxy.cpp:51
qi::FileProxy::_close
void _close() override
Definition: file_proxy.cpp:72
qi::FileProxy::size
std::streamsize size() const override
Definition: file_proxy.cpp:36
qi::FileProxy::seek
bool seek(std::streamoff offsetFromBegin) override
Definition: file_proxy.cpp:26
qi::FileProxy::read
Buffer read(std::streamsize countBytesToRead) override
Definition: file_proxy.cpp:16
file.hpp
qi::FileProxy::read
Buffer read(std::streamoff beginOffset, std::streamsize countBytesToRead) override
Definition: file_proxy.cpp:21
qi::File
Definition: file.hpp:127
qi::FileProxy
Definition: file_proxy.cpp:6
qi
Definition: file.hpp:21
qi::_qiregisterFileProxy
void _qiregisterFileProxy()
Definition: file_proxy.cpp:78
qi::FileProxy::FileProxy
FileProxy(qi::AnyObject obj)
Definition: file_proxy.cpp:9
qi::FileProxy::isOpen
bool isOpen() const override
Definition: file_proxy.cpp:41
qi::FileProxy::_seek
bool _seek(std::streamoff offsetFromBegin) override
Definition: file_proxy.cpp:67


naoqi_libqicore
Author(s): Aldebaran
autogenerated on Wed Sep 14 2022 02:22:41