2
0

ReadData.cpp 798 B

12345678910111213141516171819202122232425262728
  1. // Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
  2. // SPDX-FileCopyrightText: 2021 Jorrit Rouwe
  3. // SPDX-License-Identifier: MIT
  4. #include <TestFramework.h>
  5. #include <Utils/ReadData.h>
  6. #include <Utils/Log.h>
  7. #include <Utils/AssetStream.h>
  8. JPH_SUPPRESS_WARNINGS_STD_BEGIN
  9. #include <fstream>
  10. JPH_SUPPRESS_WARNINGS_STD_END
  11. // Read file contents
  12. Array<uint8> ReadData(const char *inFileName)
  13. {
  14. Array<uint8> data;
  15. AssetStream asset_stream(inFileName, std::ios::in | std::ios::binary);
  16. std::istream &input = asset_stream.Get();
  17. input.seekg(0, ios_base::end);
  18. ifstream::pos_type length = input.tellg();
  19. input.seekg(0, ios_base::beg);
  20. data.resize(size_t(length));
  21. input.read((char *)&data[0], length);
  22. if (!input)
  23. FatalError("Unable to read file: %s", inFileName);
  24. return data;
  25. }