| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_NODE_H_ | 5 #ifndef LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_NODE_H_ |
| 6 #define LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_NODE_H_ | 6 #define LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_NODE_H_ |
| 7 | 7 |
| 8 #include <ppapi/c/pp_instance.h> |
| 8 #include <ppapi/c/pp_resource.h> | 9 #include <ppapi/c/pp_resource.h> |
| 9 #include "nacl_io/node.h" | 10 #include "nacl_io/node.h" |
| 10 | 11 |
| 11 namespace nacl_io { | 12 namespace nacl_io { |
| 12 | 13 |
| 13 class Html5Fs; | 14 class Html5Fs; |
| 15 class FileIoInterface; |
| 16 class FileRefInterface; |
| 17 class VarInterface; |
| 14 | 18 |
| 15 class Html5FsNode : public Node { | 19 class Html5FsNode : public Node { |
| 16 public: | 20 public: |
| 17 // Normal OS operations on a node (file), can be called by the kernel | 21 // Normal OS operations on a node (file), can be called by the kernel |
| 18 // directly so it must lock and unlock appropriately. These functions | 22 // directly so it must lock and unlock appropriately. These functions |
| 19 // must not be called by the filesystem. | 23 // must not be called by the filesystem. |
| 20 virtual Error FSync(); | 24 virtual Error FSync(); |
| 21 virtual Error GetDents(size_t offs, | 25 virtual Error GetDents(size_t offs, |
| 22 struct dirent* pdir, | 26 struct dirent* pdir, |
| 23 size_t count, | 27 size_t count, |
| (...skipping 13 matching lines...) Expand all Loading... |
| 37 virtual Error GetSize(off_t* out_size); | 41 virtual Error GetSize(off_t* out_size); |
| 38 | 42 |
| 39 protected: | 43 protected: |
| 40 Html5FsNode(Filesystem* filesystem, PP_Resource fileref); | 44 Html5FsNode(Filesystem* filesystem, PP_Resource fileref); |
| 41 | 45 |
| 42 // Init with standard open flags | 46 // Init with standard open flags |
| 43 virtual Error Init(int open_flags); | 47 virtual Error Init(int open_flags); |
| 44 virtual void Destroy(); | 48 virtual void Destroy(); |
| 45 | 49 |
| 46 private: | 50 private: |
| 51 FileIoInterface* file_io_iface_; |
| 52 FileRefInterface* file_ref_iface_; |
| 53 VarInterface* var_iface_; |
| 47 PP_Resource fileref_resource_; | 54 PP_Resource fileref_resource_; |
| 48 PP_Resource fileio_resource_; // 0 if the file is a directory. | 55 PP_Resource fileio_resource_; // 0 if the file is a directory. |
| 49 | 56 |
| 50 friend class Html5Fs; | 57 friend class Html5Fs; |
| 51 }; | 58 }; |
| 52 | 59 |
| 53 } // namespace nacl_io | 60 } // namespace nacl_io |
| 54 | 61 |
| 55 #endif // LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_NODE_H_ | 62 #endif // LIBRARIES_NACL_IO_HTML5FS_HTML5_FS_NODE_H_ |
| OLD | NEW |