DYT/Tool/OpenSceneGraph-3.6.5/include/draco/io/file_reader_interface.h
2024-12-25 07:49:36 +08:00

33 lines
916 B
C++

#ifndef DRACO_IO_FILE_READER_INTERFACE_H_
#define DRACO_IO_FILE_READER_INTERFACE_H_
#include <cstddef>
#include <cstdint>
#include <vector>
namespace draco {
class FileReaderInterface {
public:
FileReaderInterface() = default;
FileReaderInterface(const FileReaderInterface &) = delete;
FileReaderInterface &operator=(const FileReaderInterface &) = delete;
FileReaderInterface(FileReaderInterface &&) = default;
FileReaderInterface &operator=(FileReaderInterface &&) = default;
// Closes the file.
virtual ~FileReaderInterface() = default;
// Reads the entire contents of the input file into |buffer| and returns true.
virtual bool ReadFileToBuffer(std::vector<char> *buffer) = 0;
virtual bool ReadFileToBuffer(std::vector<uint8_t> *buffer) = 0;
// Returns the size of the file.
virtual size_t GetFileSize() = 0;
};
} // namespace draco
#endif // DRACO_IO_FILE_READER_INTERFACE_H_