Elaztek Developer Hub
Blamite Game Engine - blam!  00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
ascii.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 #ifdef BLAM_EXPORTS
6 #define BLAM_EXT_API __declspec(dllexport)
7 #else
8 #define BLAM_EXT_API __declspec(dllimport)
9 #endif
10 
19 {
20 public:
21  AsciiField(std::string _display_name, std::string _extra_info);
22 
23  void ShowImPropertyControl();
24 
25  std::string GetFieldXMLString(int offset);
26 };
Blam::DebugUI::Widgets::ShowHelpMarker
BLAM void ShowHelpMarker(const char *desc)
Shows a help indicator.
Definition: widgets.cpp:7
field_reference::GetInt64
int64_t GetInt64()
Definition: field_reference.cpp:61
Blam::Logger::LogEvent
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:142
BlamTagFieldType::Bitfield16
@ Bitfield16
Indicates that the field is a Bitfield16.
BlamTagFieldType::Bitfield8
@ Bitfield8
Indicates that the field is a Bitfield8.
AsciiField::GetFieldXMLString
std::string GetFieldXMLString(int offset)
Generates a string representing an XML node associated with this tag field, used for generating plugi...
Definition: ascii.cpp:26
BlamTagClass::GeneratePluginFile
void GeneratePluginFile()
Generates a plugin file from the given tag.
Definition: BlamTagClass.cpp:34
BlamTagClassField.h
AsciiField::ShowImPropertyControl
void ShowImPropertyControl()
Shows a set of ImGUI controls representing the tag field.
Definition: ascii.cpp:15
color
BlamColor color
Typedef for a color field, used in tag definitions.
Definition: tags.h:359
logger.h
field_reference::GetBoolean
bool GetBoolean()
Definition: field_reference.cpp:41
field_reference::GetVector2
vector2 GetVector2()
Definition: field_reference.cpp:106
vector3
BlamVector3 vector3
Typedef for a vector3 field, used in tag definitions.
Definition: tags.h:357
AsciiField
Class representing an ascii tag field.
Definition: ascii.h:18
BlamTagClassRevision::description
std::string description
The description of the changes made to the tag.
Definition: tags.h:117
ascii
char ascii[128]
Typedef for an ascii field, used in tag data definitions.
Definition: tags.h:353
imgui.h
BlamTagClassField::display_name
std::string display_name
The display name of the tag field.
Definition: BlamTagClassField.h:31
BlamTagClassField::GetFieldXMLString
virtual std::string GetFieldXMLString(int offset)
Generates a string representing an XML node associated with this tag field, used for generating plugi...
Definition: BlamTagClassField.cpp:32
ImGui::InputText
IMGUI_API bool InputText(const char *label, char *buf, size_t buf_size, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=NULL, void *user_data=NULL)
Definition: imgui_widgets.cpp:3068
bitfield32
Typedef for a bitfield32 field, used in tag data definitions.
Definition: tags.h:314
BlamTagFieldType::Real
@ Real
Indicates that the field is a Float32.
BlamTagFieldType::Bitfield32
@ Bitfield32
Indicates that the field is a Bitfield32.
BlamTagFieldType::Int16
@ Int16
Indicates that the field is a 16-bit integer.
vector4
BlamVector4 vector4
Typedef for a vector4 field, used in tag definitions.
Definition: tags.h:358
field_reference::referenced_field_type
BlamTagFieldType referenced_field_type
Definition: tags.h:370
BlamTagClassRevision
Structure representing a tag class revision.
Definition: tags.h:113
field_reference::IsValid
bool IsValid(BlamTagFieldType expected_type)
Definition: field_reference.cpp:5
field_reference::GetColor
color GetColor()
Definition: field_reference.cpp:101
ImGui::SameLine
IMGUI_API void SameLine(float offset_from_start_x=0.0f, float spacing=-1.0f)
Definition: imgui.cpp:7147
BlamTagClassField
Base class representing a plugin field.
Definition: BlamTagClassField.h:28
BlamTagFieldType::Int8
@ Int8
Indicates that the field is an 8-bit integer.
BlamTagFieldType
BlamTagFieldType
Enumerator listing all possible plugin field types.
Definition: tags.h:30
int8_t
signed char int8_t
Definition: stdint.h:11
BlamTagClass::fields
std::vector< BlamTagClassField * > fields
A series of tag fields that store the layout of the tag.
Definition: tags.h:138
bitfield8
Typedef for a bitfield8 field, used in tag data definitions.
Definition: tags.h:275
BlamTagFieldType::Int64
@ Int64
Indicates that the field is a 32-bit integer.
field_reference::GetBitfield8
bitfield8 GetBitfield8()
Definition: field_reference.cpp:81
field_reference::GetInt8
int8_t GetInt8()
Definition: field_reference.cpp:46
AsciiField::AsciiField
AsciiField(std::string _display_name, std::string _extra_info)
Definition: ascii.cpp:9
field_reference::GetEnum8
int8_t GetEnum8()
Definition: field_reference.cpp:66
BlamTagClass::revisions
std::vector< BlamTagClassRevision > revisions
List of all tag class revisions. Does not get written to tags, but is included in plugin files.
Definition: tags.h:137
int32_t
int int32_t
Definition: stdint.h:13
BlamTagFieldType::Ascii
@ Ascii
Indicates that the field is a string of text.
BLAM_EXT_API
#define BLAM_EXT_API
Definition: ascii.h:8
field_reference::GetEnum16
int16_t GetEnum16()
Definition: field_reference.cpp:71
BlamTagClass::ShowImPropertyEditor
void ShowImPropertyEditor()
Shows a series of ImGUI controls used to modify tag data with a simple UI.
Definition: BlamTagClass.cpp:12
BlamTagClass::class_name_short
std::string class_name_short
The short, 4-character name of the tag class.
Definition: tags.h:135
field_reference::GetReal
real GetReal()
Definition: field_reference.cpp:96
ENGINE_DATA_PATH
#define ENGINE_DATA_PATH(path)
Macro to quickly access a game engine data folder.
Definition: config.h:36
widgets.h
field_reference::GetBitfield32
bitfield32 GetBitfield32()
Definition: field_reference.cpp:91
Blam::EngineDefs::GetVersion
const BLAM char * GetVersion()
Retrieves the version of the engine in the following format:
Definition: engine_definitions.cpp:150
BlamTagFieldType::Int32
@ Int32
Indicates that the field is a 32-bit integer.
field_reference::GetVector3
vector3 GetVector3()
Definition: field_reference.cpp:111
BlamTagClass::tag_address
void * tag_address
The memory address of a tag. Used when a tag class is used in the context of a tag.
Definition: tags.h:140
field_reference::GetInt32
int32_t GetInt32()
Definition: field_reference.cpp:56
BlamTagClass::class_name_long
std::string class_name_long
The longer class name. Typically shown alongside short name for user-friendliness.
Definition: tags.h:134
BlamTagClassField::read_address
void * read_address
The address of the data the field is currently representing.
Definition: BlamTagClassField.h:36
int64_t
long long int64_t
Definition: stdint.h:14
BlamTagFieldType::Color
@ Color
Indicates that the field is a color.
real
float real
Typedef for a 'real', aka a float.
Definition: tags.h:355
BlamTagFieldType::Boolean
@ Boolean
Indicates that the field is a boolean.
engine_definitions.h
BlamTagFieldType::Enum32
@ Enum32
Indicates that the field is an Enum32.
field_reference::GetBitfield16
bitfield16 GetBitfield16()
Definition: field_reference.cpp:86
BlamTagFieldType::Vector2
@ Vector2
Indicates that the field is a vector2.
BlamTagFieldType::Enum8
@ Enum8
Indicates that the field is an Enum8.
field_reference::GetInt16
int16_t GetInt16()
Definition: field_reference.cpp:51
bitfield16
Typedef for a bitfield16 field, used in tag data definitions.
Definition: tags.h:290
BlamTagClassRevision::revision
int revision
The revision number.
Definition: tags.h:115
BlamTagClassField::read_length
int read_length
How many bytes to read from the start of the address.
Definition: BlamTagClassField.h:37
field_reference::GetEnum32
int32_t GetEnum32()
Definition: field_reference.cpp:76
constants.h
BlamTagClass::tag_size
int tag_size
The size of the tag's data. Used on loading/writing tag files.
Definition: tags.h:139
BlamEngineDataFolder::Plugins
@ Plugins
Directory used to store built-in plugin files for use with the Editing Kit. Defaults to ....
BlamTagFieldType::Vector4
@ Vector4
Indicates that the field is a vector4.
vector2
BlamVector2 vector2
Typedef for a vector2 field, used in tag definitions.
Definition: tags.h:356
config.h
tags.h
int16_t
short int16_t
Definition: stdint.h:12
BlamTagFieldType::Vector3
@ Vector3
Indicates that the field is a vector3.
BlamTagClass::SetMemoryLocation
void SetMemoryLocation(void *address)
Sets the address and size of the tag that this class should be applied to.
Definition: BlamTagClass.cpp:20
BlamTagFieldType::Enum16
@ Enum16
Indicates that the field is an Enum16.
field_reference::field_address
void * field_address
Definition: tags.h:371
field_reference::GetVector4
vector4 GetVector4()
Definition: field_reference.cpp:116
BlamTagClassField::ShowImPropertyControl
virtual void ShowImPropertyControl()
Shows a set of ImGUI controls representing the tag field.
Definition: BlamTagClassField.cpp:22
ascii.h
BlamTagClassField::extra_info
std::string extra_info
Additional information to show alongside the field.
Definition: BlamTagClassField.h:32
get_field_ref_data
data_type get_field_ref_data(void *address, BlamTagFieldType type, BlamTagFieldType expected_type, std::string display_name)
Definition: field_reference.cpp:22
BlamTagClassRevision::author
std::string author
The author of the tag revision.
Definition: tags.h:116
BlamTagClassField::visible
bool visible
Whether or not this field should be marked as visible within the editor.
Definition: BlamTagClassField.h:34