Elaztek Developer Hub
Blamite Game Engine - Guerilla  00309.02.03.21.0044.blamite
The tag editor for the Blamite Game Engine.
BlamTag.cpp File Reference
#include "tags.h"
#include <fstream>
#include <Strings/components/utils/io/io.h>
#include <Strings/components/utils/converters/converters.h>
#include <Strings/components/utils/xml/xml.h>
#include <blam/version_data.h>
#include "fields/ascii/ascii.h"
#include "fields/enum/enum.h"
#include "fields/int/int.h"
#include "fields/float32/float32.h"
#include "fields/bitfield/bitfield.h"
#include "fields/block/block.h"
#include "components/logger/logger.h"

Macros

#define ENGINE_VERSION   "00309.02.03.21.0044.blamite"
 

Functions

std::vector< BlamTagField * > decompile_tag_segment (BlamTag *tag, std::vector< BlamPluginField * > fields, int base_size, std::ifstream *tag_file)
 Decompiles a compiled tag segment. More...
 
std::vector< char > build_tag_data_segment (int start_offset, int base_size, std::vector< BlamTagField * > fields)
 Compiles a list of tag fields into a binary format. More...
 

Macro Definition Documentation

◆ ENGINE_VERSION

#define ENGINE_VERSION   "00309.02.03.21.0044.blamite"

Function Documentation

◆ build_tag_data_segment()

std::vector<char> build_tag_data_segment ( int  start_offset,
int  base_size,
std::vector< BlamTagField * >  fields 
)

Compiles a list of tag fields into a binary format.

Parameters
start_offset- The start offset for the fields, used when fixing up tag block offsets.
base_size- The base size of the list of fields.
fields- The list of fields to compile.
Returns
A list of bytes representing the tag's compiled data.

◆ decompile_tag_segment()

std::vector<BlamTagField*> decompile_tag_segment ( BlamTag tag,
std::vector< BlamPluginField * >  fields,
int  base_size,
std::ifstream *  tag_file 
)

Decompiles a compiled tag segment.

This is used to decompile tag data for use within Guerilla. A "segment" in this case simply refers to either the base tag data, or a tag block's entry data.

Parameters
tag- The tag being decompiled.
fields- The list of plugin fields associated with this segment.
base_size- The size of the tag segment.
tag_file- The input file stream to read data from.
Returns
A list of decompiled tag fields.