Elaztek Developer Hub
Blamite Game Engine - Guerilla (Library)  00385.05.12.23.0209.blamite
The tag editor for the Blamite Game Engine.
enum.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <vector>
4 #include <string>
5 
6 #include "../fields.h"
7 
8 #ifdef GUERILLA_LIB_EXPORTS
9 #define GUERILLA_LIB_API __declspec(dllexport)
10 #else
11 #define GUERILLA_LIB_API __declspec(dllimport)
12 #endif
13 
18 {
19  std::string id = "";
20  std::string name = "";
21  int value = -1;
22 };
23 
32 {
33 public:
34  std::vector<BlamEnumFieldOption> options;
35 
42 
43  std::string GenerateXMLString() override;
44 };
45 
54 {
55 public:
56  std::string current_option = "";
57 
65 
66  std::string GenerateXMLString();
67  std::vector<char> GetValueAsBytes();
68 };
BlamTagField
Class representing a tag field.
Definition: fields.h:164
BlamTagField::GetType
BlamTagFieldType GetType()
Retrieves the type of this field.
Definition: BlamTagField.cpp:19
BlamEnumFieldOption::value
int value
The raw value of the option. This is what is stored within a compiled tag.
Definition: enum.h:21
BlamPluginField_Enum::options
std::vector< BlamEnumFieldOption > options
The list of options within the enum.
Definition: enum.h:34
BlamTagFieldType::Enum8
@ Enum8
Indicates that the field is an Enum8.
BlamPluginField_Enum
Class representing a plugin enum field.
Definition: enum.h:31
BlamTagField_Enum::GetValueAsBytes
std::vector< char > GetValueAsBytes()
Retrieves the field value as a list of bytes.
Definition: BlamTagField_Enum.cpp:42
BlamTagField_Enum::GenerateXMLString
std::string GenerateXMLString()
Generates a string with the field ID and value, ready to be written to an XML file.
Definition: BlamTagField_Enum.cpp:11
tags.h
BlamPluginField::GenerateXMLString
virtual std::string GenerateXMLString()
Generates a string representing this plugin field.
Definition: BlamPluginField.cpp:351
BlamTagField::GetTag
BlamTag * GetTag()
Retrieves the tag associated with this field.
Definition: BlamTagField.cpp:24
BlamTagField::field_id
std::string field_id
The ID of this field.
Definition: fields.h:175
BlamPluginField::GetType
BlamTagFieldType GetType()
Retrieves the type of this field.
Definition: BlamPluginField.cpp:44
BlamTagFieldType::Enum16
@ Enum16
Indicates that the field is an Enum16.
BlamPluginField_Enum::GenerateXMLString
std::string GenerateXMLString() override
Generates a string representing this plugin field.
Definition: BlamPluginField_Enum.cpp:8
BlamTagFieldType
BlamTagFieldType
Enumerator containing all possible tag field types.
Definition: fields.h:23
GUERILLA_LIB_API
#define GUERILLA_LIB_API
Definition: enum.h:11
BlamTagField::GenerateXMLString
virtual std::string GenerateXMLString()
Generates a string with the field ID and value, ready to be written to an XML file.
Definition: BlamTagField.cpp:9
Guerilla::Tags::Fields::GetFieldTypeName
GUERILLA_LIB_API std::string GetFieldTypeName(BlamTagFieldType type)
Generates a string name based on the provided tag field type.
Definition: fields.cpp:190
BlamPluginField::display_name
std::string display_name
The display name of the field.
Definition: fields.h:69
BlamPluginField
Class representing a plugin field.
Definition: fields.h:59
BlamTag
Class representing a Tag.
Definition: tags.h:210
BlamTagField_Enum::current_option
std::string current_option
The ID of the currently selected option.
Definition: enum.h:56
BlamPluginField::visible
bool visible
Whether or not the field is visible.
Definition: fields.h:68
BlamTagField::HasPluginField
bool HasPluginField()
Checks whether the field has plugin data available.
Definition: BlamTagField.cpp:34
BlamTagField_Enum
Class representing a tag enum field.
Definition: enum.h:53
BlamPluginField::field_id
std::string field_id
The ID of the field.
Definition: fields.h:71
BlamEnumFieldOption::name
std::string name
The display name of the option.
Definition: enum.h:20
Guerilla::Tags::Fields::GetStandardFieldLength
GUERILLA_LIB_API int GetStandardFieldLength(BlamTagFieldType type)
Retrieves the length of a tag field.
Definition: fields.cpp:7
BlamTagField::plugin_field
BlamPluginField * plugin_field
The plugin data associated with this field, if any.
Definition: fields.h:174
BlamPluginField::description
std::string description
An optional description of the field.
Definition: fields.h:70
BlamEnumFieldOption
Data structure representing an enum option.
Definition: enum.h:17
BlamPluginField_Enum::BlamPluginField_Enum
BlamPluginField_Enum(BlamPluginField *base_field)
Constructs a new block plugin field from an existing generic plugin field.
Definition: BlamPluginField_Enum.cpp:3
BlamPluginField::offset
int offset
The offset of the field data.
Definition: fields.h:66
BlamTagField_Enum::BlamTagField_Enum
BlamTagField_Enum(BlamTag *_tag, BlamTagFieldType _type)
Creates a new enum tag field.
Definition: BlamTagField_Enum.cpp:6
BlamTagField::GetValueAsBytes
virtual std::vector< char > GetValueAsBytes()
Retrieves the field value as a list of bytes.
Definition: BlamTagField.cpp:14
BlamTagFieldType::Enum32
@ Enum32
Indicates that the field is an Enum32.
enum.h