Elaztek Developer Hub
Blamite Game Engine - Guerilla (Library)  00411.04.21.24.0017.blamite
The tag editor for the Blamite Game Engine.
fields.h File Reference
#include <string>
#include <vector>
#include <blam/api/v1/types/tags.h>
#include <Strings/components/3rdparty/rapidxml/rapidxml.hpp>
+ Include dependency graph for fields.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  BlamPluginField
 Class representing a plugin field. More...
 
class  BlamTagField
 Class representing a tag field. More...
 

Namespaces

 Guerilla
 Namespace containing functions for Guerilla.
 
 Guerilla::Tags
 Namespace containing functions relating to tags and plugins.
 
 Guerilla::Tags::Fields
 Namespace containing functions relating to tag fields.
 

Macros

#define GUERILLA_LIB_INTERNAL
 
#define GUERILLA_LIB_API   __declspec(dllimport)
 

Enumerations

enum  BlamDatarefValueHintType {
  BlamDatarefValueHintType::ASM, BlamDatarefValueHintType::BASH, BlamDatarefValueHintType::C, BlamDatarefValueHintType::CPP,
  BlamDatarefValueHintType::CMK, BlamDatarefValueHintType::CS, BlamDatarefValueHintType::CSS, BlamDatarefValueHintType::GO,
  BlamDatarefValueHintType::HSC, BlamDatarefValueHintType::HTML, BlamDatarefValueHintType::INI, BlamDatarefValueHintType::JS,
  BlamDatarefValueHintType::JAVA, BlamDatarefValueHintType::JSON, BlamDatarefValueHintType::LUA, BlamDatarefValueHintType::MAKE,
  BlamDatarefValueHintType::PHP, BlamDatarefValueHintType::PY, BlamDatarefValueHintType::QML, BlamDatarefValueHintType::RUST,
  BlamDatarefValueHintType::SQL, BlamDatarefValueHintType::TEXT, BlamDatarefValueHintType::TS, BlamDatarefValueHintType::V,
  BlamDatarefValueHintType::VEX, BlamDatarefValueHintType::XML, BlamDatarefValueHintType::YAML, BlamDatarefValueHintType::NONE
}
 Enumerator listing all supported dataref value hint types. More...
 

Functions

GUERILLA_LIB_API int Guerilla::Tags::Fields::GetStandardFieldLength (BlamTagFieldType type)
 Retrieves the length of a tag field. More...
 
GUERILLA_LIB_API BlamTagFieldType Guerilla::Tags::Fields::DetermineFieldType (std::string node_name)
 Determines the field type from a string, used to determine the field type when parsing XML tags and plugins. More...
 
GUERILLA_LIB_API std::string Guerilla::Tags::Fields::GetFieldTypeName (BlamTagFieldType type)
 Generates a string name based on the provided tag field type. More...
 
GUERILLA_LIB_API BlamPluginFieldGuerilla::Tags::Fields::ConfigurePluginField (BlamPluginField *field, BlamTagFieldType field_type, bool *configured=nullptr)
 Configures a specialized plugin field based on a base plugin field, and the desired type. More...
 
GUERILLA_LIB_API std::string Guerilla::Tags::Fields::GetDatarefValueHintString (BlamDatarefValueHintType value_hint)
 Generates a string from a given dataref value hint type. More...
 
GUERILLA_LIB_API BlamDatarefValueHintType Guerilla::Tags::Fields::ParseDatarefValueHint (std::string value_hint_str)
 Determines a dataref value hint type from a string representation. More...
 
GUERILLA_LIB_API std::vector< BlamDatarefValueHintTypeGuerilla::Tags::Fields::GetDatarefValueHintTypeList ()
 
GUERILLA_LIB_API std::vector< BlamPluginField * > Guerilla::Tags::Fields::GetGlobalEnums (std::vector< BlamPluginField * > field_list, bool get_global_parents)
 

Macro Definition Documentation

◆ GUERILLA_LIB_API

#define GUERILLA_LIB_API   __declspec(dllimport)

◆ GUERILLA_LIB_INTERNAL

#define GUERILLA_LIB_INTERNAL

Enumeration Type Documentation

◆ BlamDatarefValueHintType

Enumerator listing all supported dataref value hint types.

Dataref Value Hints are used by the Editing Kit to identify the type of data being stored within the data reference. This can be used to provide more interactive editing capabilities, syntax highlighting, and so on.

Each enumerator value should not exceed 4 characters.

Enumerator
ASM 

Assembly Code.

BASH 

Bash Script.

C Code.

CPP 

C++ Code.

CMK 

CMake Script.

CS 

C# Code.

CSS 

CSS Stylesheet.

GO 

Go (Golang) Code.

HSC 

BlamScript/HaloScript Script.

HTML 

HTML Markup.

INI 

INI Configuration.

JS 

JavaScript Code.

JAVA 

Java Code.

JSON 

JSON Data.

LUA 

Lua Script.

MAKE 

Make Script.

PHP 

PHP Code.

PY 

Python Code.

QML 

QML Markup.

RUST 

Rust Code.

SQL 

SQL Statements.

TEXT 

Plain Text.

TS 

TypeScript Code.

V Code.

VEX 

Vex Code.

XML 

XML Markup.

YAML 

YAML Configuration.

NONE 

No value hint, no special treatment will be given to the data.