LeviLamina
Loading...
Searching...
No Matches
glTFExporter.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace Core { class Path; }
8namespace Json { class Value; }
9namespace glTF { struct Accessor; }
10namespace glTF { struct Buffer; }
11namespace glTF { struct BufferView; }
12namespace glTF { struct Image; }
13namespace glTF { struct Material; }
14namespace glTF { struct Mesh; }
15namespace glTF { struct Node; }
16namespace glTF { struct Sampler; }
17namespace glTF { struct Scene; }
18namespace glTF { struct Texture; }
19// clang-format on
20
21class glTFExporter {
22public:
23 // member variables
24 // NOLINTBEGIN
48 // NOLINTEND
49
50public:
51 // prevent constructor by default
52 glTFExporter& operator=(glTFExporter const&);
53 glTFExporter(glTFExporter const&);
54 glTFExporter();
55
56public:
57 // virtual functions
58 // NOLINTBEGIN
59#ifdef LL_PLAT_S
60 virtual ~glTFExporter() = default;
61#else // LL_PLAT_C
62 virtual ~glTFExporter();
63#endif
64
65 // NOLINTEND
66
67public:
68 // member functions
69 // NOLINTBEGIN
70#ifdef LL_PLAT_C
71 MCNAPI bool _hasMaterial(::std::string const& materialName);
72
73 MCNAPI void _serialize(::Json::Value& root);
74
75 MCNAPI int addAccessor(::glTF::Accessor& accessor);
76
77 MCNAPI uint64 addBinaryBuffer(::Core::Path const& filePath, uchar const* data, uint64 size);
78
79 MCNAPI int addBuffer(::glTF::Buffer& buffer);
80
81 MCNAPI int addBufferView(::glTF::BufferView& bufferView);
82
83 MCNAPI void addExtension(::std::string const& extension);
84
85 MCNAPI int addImage(::glTF::Image& image);
86
87 MCNAPI int addMaterial(::glTF::Material& material);
88
89 MCNAPI int addMesh(::glTF::Mesh& mesh);
90
91 MCNAPI int addNode(::glTF::Node& node);
92
93 MCNAPI void addNodeChild(int nodeID, int childNodeID);
94
95 MCNAPI int addSampler(::glTF::Sampler& sampler);
96
97 MCNAPI int addScene(::glTF::Scene& scene);
98
99 MCNAPI int addTexture(::glTF::Texture& texture);
100
101 MCNAPI int getMaterialID(::std::string const& materialName);
102
103 MCNAPI glTFExporter(::Core::Path const& folderPath, ::std::string const& modelName);
104
105 MCNAPI void serialize();
106#endif
107 // NOLINTEND
108
109public:
110 // constructor thunks
111 // NOLINTBEGIN
112#ifdef LL_PLAT_C
113 MCNAPI void* $ctor(::Core::Path const& folderPath, ::std::string const& modelName);
114#endif
115 // NOLINTEND
116
117public:
118 // destructor thunk
119 // NOLINTBEGIN
120#ifdef LL_PLAT_C
121 MCNAPI void $dtor();
122#endif
123 // NOLINTEND
124};
Definition Path.h:11
Definition Value.h:16
Definition buffer.h:5
Definition Accessor.h:7
Definition BufferView.h:7
Definition Buffer.h:7
Definition Image.h:7
Definition Material.h:7
Definition Mesh.h:7
Definition Node.h:7
Definition Sampler.h:7
Definition Scene.h:7
Definition Texture.h:7
Definition Alias.h:14
Definition serialize.h:11