Elaztek Developer Hub
Switch Project...
blam!
Editing Kit
Guerilla
Sapien
Tool
Foundry
Libraries
Keystone
Strings
Forums
Discord
Doxygen
Jenkins
Guides
Gitlab
Blamite Game Engine - Guerilla
00307.01.26.21.0804.blamite
The tag editor for the Blamite Game Engine.
fields.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <string>
4
#include <vector>
5
6
#ifndef GUERILLA
7
#define GUERILLA
8
#endif
9
10
#ifdef GUERILLA_EXPORTS
11
#define GUERILLA_API __declspec(dllexport)
12
#else
13
#define GUERILLA_API __declspec(dllimport)
14
#endif
15
16
class
BlamTag
;
17
class
BlamPlugin
;
18
19
enum class
BlamTagFieldType
20
{
21
Ascii
,
22
StringId
,
23
Int8
,
24
Int16
,
25
Int32
,
26
Float32
,
27
Bitfield8
,
28
Bitfield16
,
29
Bitfield32
,
30
Enum8
,
31
Enum16
,
32
Enum32
,
33
Block
,
34
Dataref
,
35
Tagref
,
36
Comment
,
37
38
Generic
,
39
Unspecified
40
};
41
42
class
BlamTagField
;
43
44
class
GUERILLA_API
BlamPluginField
45
{
46
private
:
47
BlamTagFieldType
type =
BlamTagFieldType::Unspecified
;
48
BlamPlugin
* plugin;
49
50
public
:
51
int
offset = 0x0;
52
int
length = 0x0;
53
bool
visible =
true
;
54
std::string display_name =
""
;
55
std::string description =
""
;
56
std::string field_id =
""
;
57
58
BlamPluginField
(
BlamPlugin
* _plugin,
BlamTagFieldType
_type);
59
BlamPluginField
(
BlamPluginField
* _old_field);
60
61
BlamTagFieldType
GetType();
62
BlamPlugin
*
GetPlugin
();
63
64
virtual
BlamTagField
* GenerateTagField(
BlamTag
* tag);
65
virtual
BlamTagField
* GenerateTagField(
BlamTagField
* existing_tag_field);
66
};
67
68
class
GUERILLA_API
BlamTagField
69
{
70
private
:
71
BlamTagFieldType
type =
BlamTagFieldType::Unspecified
;
72
BlamTag
* tag =
nullptr
;
73
74
public
:
75
BlamPluginField
* plugin_field =
nullptr
;
76
std::string field_id =
""
;
77
78
BlamTagField
(
BlamTag
* _tag,
BlamTagFieldType
_type);
79
80
virtual
std::string GenerateXMLString();
81
virtual
std::vector<char> GetValueAsBytes();
82
83
BlamTagFieldType
GetType();
84
BlamTag
* GetTag();
85
86
BlamPluginField
* GetPluginField();
87
bool
HasPluginField();
88
};
89
90
namespace
Guerilla::Tags::Fields
91
{
92
GUERILLA
int
GetStandardFieldLength
(
BlamTagFieldType
type);
93
GUERILLA
BlamTagFieldType
DetermineFieldType
(std::string node_name);
94
}
BlamTagField
Definition:
fields.h:68
BlamTagFieldType::Int16
@ Int16
BlamTagFieldType::Generic
@ Generic
BlamTagFieldType::Int32
@ Int32
Guerilla::Tags::Fields
Definition:
fields.h:90
BlamTagFieldType::Enum8
@ Enum8
BlamTagFieldType::Block
@ Block
BlamTagFieldType::Ascii
@ Ascii
BlamTagFieldType::Dataref
@ Dataref
BlamTagFieldType::Enum16
@ Enum16
BlamTagFieldType::Bitfield16
@ Bitfield16
BlamTagFieldType
BlamTagFieldType
Definition:
fields.h:19
Guerilla::Tags::GetPlugin
GUERILLA_API BlamPlugin * GetPlugin(std::string class_name)
Definition:
plugins.cpp:100
BlamTagFieldType::Int8
@ Int8
BlamTagFieldType::Comment
@ Comment
BlamTagFieldType::Float32
@ Float32
BlamPluginField
Definition:
fields.h:44
BlamTag
Class representing a Tag.
Definition:
tags.h:119
BlamTagFieldType::Tagref
@ Tagref
GUERILLA
#define GUERILLA
Definition:
fields.h:7
Guerilla::Tags::Fields::DetermineFieldType
GUERILLA BlamTagFieldType DetermineFieldType(std::string node_name)
Definition:
fields.cpp:68
BlamPlugin
Class representing a Plugin.
Definition:
tags.h:37
BlamTagFieldType::Bitfield8
@ Bitfield8
GUERILLA_API
#define GUERILLA_API
Definition:
fields.h:13
Guerilla::Tags::Fields::GetStandardFieldLength
GUERILLA int GetStandardFieldLength(BlamTagFieldType type)
Definition:
fields.cpp:5
BlamTagFieldType::Unspecified
@ Unspecified
BlamTagFieldType::StringId
@ StringId
BlamTagFieldType::Bitfield32
@ Bitfield32
BlamTagFieldType::Enum32
@ Enum32
guerilla
components
tags
fields
fields.h
Generated on Tue Jan 26 2021 08:26:49 for Blamite Game Engine - Guerilla by
1.8.17