Files
NazaraEngine/plugins/Assimp/CustomStream.hpp
Lynix 34b7260d54 Plugins: Add Assimp plugin (WIP)
Currently load only static meshes


Former-commit-id: 61dee8f53a423d6d170bd3bfe72e71daa63e8c5b
2016-04-29 14:22:14 +02:00

31 lines
985 B
C++

// Copyright (C) 2016 Jérôme Leclercq
// This file is part of the "Nazara Engine - Assimp Plugin"
// For conditions of distribution and use, see copyright notice in Plugin.cpp
#pragma once
#ifndef NAZARA_ASSIMP_CUSTOM_STREAM_HPP
#define NAZARA_ASSIMP_CUSTOM_STREAM_HPP
#include <Nazara/Core/Stream.hpp>
#include <assimp/cfileio.h>
constexpr const char StreamPath[] = "<Nazara:Stream>";
void StreamFlush(aiFile* file);
size_t StreamRead(aiFile* file, char* buffer, size_t size, size_t count);
aiReturn StreamSeek(aiFile* file, size_t offset, aiOrigin origin);
size_t StreamSize(aiFile* file);
size_t StreamTell(aiFile* file);
size_t StreamWrite(aiFile* file, const char* buffer, size_t size, size_t count);
struct FileIOUserdata
{
Nz::Stream* originalStream;
const char* originalFilePath;
};
aiFile* StreamOpener(aiFileIO* fileIO, const char* filePath, const char* openMode);
void StreamCloser(aiFileIO* fileIO, aiFile* file);
#endif // NAZARA_ASSIMP_CUSTOM_STREAM_HPP