Torch
Loading...
Searching...
No Matches
SF64Preview.h
1#pragma once
2
3#include "factories/BaseFactory.h"
4
5// SF64 viewer cards: a 3D skeleton preview (limb hierarchy + display lists) and
6// a decoded-text card for messages. Other SF64 data/script types use the
7// default code-preview card (their factories opt in via CanPreviewCode).
8#ifdef BUILD_UI
9namespace SF64 {
10
11class SkeletonFactoryUI : public BaseFactoryUI {
12public:
13 float GetItemHeight(const ParseResultData& data) override;
14 void DrawUI(const ParseResultData& data) override;
15};
16
17class MessageFactoryUI : public BaseFactoryUI {
18public:
19 float GetItemHeight(const ParseResultData& data) override;
20 void DrawUI(const ParseResultData& data) override;
21};
22
23// 3D collision-mesh preview (indexed triangles + a resolved vertex array).
24class ColPolyFactoryUI : public BaseFactoryUI {
25public:
26 float GetItemHeight(const ParseResultData& data) override;
27 void DrawUI(const ParseResultData& data) override;
28};
29
30class TriangleFactoryUI : public BaseFactoryUI {
31public:
32 float GetItemHeight(const ParseResultData& data) override;
33 void DrawUI(const ParseResultData& data) override;
34};
35
36// 3D hitbox-volume preview (axis-aligned boxes from the hitbox float array).
37class HitboxFactoryUI : public BaseFactoryUI {
38public:
39 float GetItemHeight(const ParseResultData& data) override;
40 void DrawUI(const ParseResultData& data) override;
41};
42
43} // namespace SF64
44#endif