| 218 | } |
| 219 | |
| 220 | virtual int32_t write(const void* _data, int32_t _size, Error* _err) override |
| 221 | { |
| 222 | BX_ASSERT(NULL != m_file, "Reader/Writer file is not open."); |
| 223 | BX_ASSERT(NULL != _err, "Reader/Writer interface calling functions must handle errors."); |
| 224 | |
| 225 | int32_t size = (int32_t)fwrite(_data, 1, _size, m_file); |
| 226 | if (size != _size) |
| 227 | { |
| 228 | BX_ERROR_SET(_err, kErrorReaderWriterWrite, "FileWriter: write failed."); |
| 229 | return size >= 0 ? size : 0; |
| 230 | } |
| 231 | |
| 232 | return size; |
| 233 | } |
| 234 | |
| 235 | private: |
| 236 | FILE* m_file; |