Elaztek Developer Hub
Blamite Game Engine - blam!  00406.12.10.23.1457.blamite
The core library for the Blamite Game Engine.
tagclass.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 #include <vector>
5 #include <Windows.h>
6 #include <Strings/components/utils/io/io.h>
7 #include "api/v1/types/tags.h"
8 
9 #ifndef BLAM
10 #define BLAM
11 #endif
12 
13 namespace Blam::Content::Tags
14 {
18  BLAM void LoadDefaultClasses();
19 
24 
32  BLAM_EXT_API BlamTagClass* GetTagClass(std::string id);
33 
39  BLAM_EXT_API std::vector<BlamTagClass*>* GetRegisteredTagClasses();
40 
47 
53  BLAM void GenerateAllPlugins(bool require_switch);
54 }
55 
61 namespace BlamTagClassOLD
62 {
69 }
ui.h
test_tag.h
tag_io.h
globals.h
Blam::Content::Tags::RegisterTagClass
BLAM void RegisterTagClass(BlamTagClass *data)
Registers a new tag class within the engine.
Definition: tagclass.cpp:78
Blam::Content::Tags
Namespace containing functions related to tag data.
Definition: bitmap.h:195
Blam::Rendering::Materials::LoadUnlitDatablockFromMaterialTag
BLAM bool LoadUnlitDatablockFromMaterialTag(Ogre::HlmsUnlitDatablock *datablock, material *material_tag)
Loads an Unlit datablock from a material tag.
Definition: materials.cpp:230
ogre_material_instance_data::tag_instance
material * tag_instance
Pointer to the tag that uses this material instance.
Definition: rendering.h:37
Blam::Logger::LogEvent
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:130
Blam::Content::Tags::GetFieldSize
BLAM int GetFieldSize(BlamTagFieldType type)
Retrieves the standard field size of a plugin field type.
Definition: fields.cpp:100
Blam::Content::Tags::LoadDefaultClasses
BLAM void LoadDefaultClasses()
Loads all built-in tag classes available to the engine.
Definition: tagclass.cpp:117
logger.h
ogre_material_info_data::hlms_type
Ogre::HlmsTypes hlms_type
The HLMS type of this material.
Definition: rendering.h:55
bitmap.h
BLAM_EXT_API
#define BLAM_EXT_API
Definition: api.h:9
BlamEngineExtension
Class representing a Blamite Engine Extension.
Definition: extensions.h:26
BlamTagData::path
char path[256]
The tag's path.
Definition: tags.h:141
cui_screen
Definition: cui_screen.h:42
Blam::Content::Tags::GetTagClass
BLAM_EXT_API BlamTagClass * GetTagClass(std::string id)
Retrieves a tag class that matches the given string.
Definition: tagclass.cpp:65
Blam::Extensions::GetExtensionList
BLAM std::vector< BlamEngineExtension * > GetExtensionList()
Retrieves the list of loaded extensions.
Definition: extensions.cpp:145
LinkCUSCComponentMaterialParameters
void LinkCUSCComponentMaterialParameters(BlamTagData *material_tag_data, cui_screen::basic_components_entry *component, std::string cusc_tag_path)
Definition: tag_postprocess.cpp:12
verify_material_for_param_linking
bool verify_material_for_param_linking(BlamTagData *material_tag_data)
Definition: tag_postprocess.cpp:68
Blam::Content::Tags::TagNeedsPostprocess
BLAM bool TagNeedsPostprocess(BlamTagData *tag_data)
Checks if a given tag requires additional post-processing.
Definition: tag_postprocess.cpp:97
ScenarioTagClass
Definition: scenario.h:77
y
font DisplayOffset y
Definition: README.txt:68
rendering.h
scenario.h
Blam::Rendering::Materials::LoadPBSDatablockFromMaterialTag
BLAM bool LoadPBSDatablockFromMaterialTag(Ogre::HlmsPbsDatablock *datablock, material *material_tag)
Loads a PBS (Physically-Based Shading) datablock from a material tag.
Definition: materials.cpp:372
Blam::UI::LoadFromCUIScreenTag
BLAM bool LoadFromCUIScreenTag(std::string tag_path, cui_screen *cusc_tag)
Creates a new UI widget from a cui_screen tag.
Definition: ui.cpp:134
Blam::Content::Tags::GetRegisteredTagClasses
BLAM_EXT_API std::vector< BlamTagClass * > * GetRegisteredTagClasses()
Retrieves the list of all registered tag classes.
Definition: tagclass.cpp:83
cui_screen.h
light.h
GlobalsTagClass
Definition: globals.h:39
Blam::Rendering::Materials::BuildDatablockFromTag
BLAM bool BuildDatablockFromTag(material *material_tag, std::string tag_path)
Creates an OGRE material datablock from a material tag.
Definition: materials.cpp:756
Blam::Rendering::Textures::BuildTextureFromTag
BLAM void BuildTextureFromTag(bitmap *bitmap_tag, std::string tag_path)
Loads a texture into OGRE from a bitmap tag.
Definition: textures.cpp:81
material.h
LightTagClass
Definition: light.h:97
ENGINE_DATA_PATH
#define ENGINE_DATA_PATH(path)
Macro to quickly access a game engine data folder.
Definition: config.h:34
BLAM
#define BLAM
Definition: tagclass.h:10
Blam::Content::Tags::TagPostprocess
BLAM void TagPostprocess(BlamTagData *tag_data)
Performs any required post-processing for a given tag.
Definition: tag_postprocess.cpp:125
Blam::Content::Tags::GetCuiScreenTag
BLAM cui_screen * GetCuiScreenTag(std::string tag_path)
Definition: cui_screen.cpp:16
material
Definition: material.h:52
Blam::Content::Tags::GetTagData
BLAM BlamTagData * GetTagData(std::string tag_path)
Retrieves information for a given tag.
Definition: tags.cpp:80
Blam::Content::Tags::GetBitmapTag
BLAM bitmap * GetBitmapTag(std::string tag_path)
Definition: bitmap.cpp:16
MaterialTagClass
Definition: material.h:197
ogre_material_instance_data::instance_datablock
Ogre::HlmsDatablock * instance_datablock
The datablock used for this material instance.
Definition: rendering.h:36
ogre_material_instance_data
Data structure used to store OGRE material instance data.
Definition: rendering.h:32
Blam::Content::Tags::GenerateAllPlugins
BLAM void GenerateAllPlugins(bool require_switch)
Instructs the engine to generate Assembly/Guerilla plugins at startup.
Definition: tagclass.cpp:88
BlamTagInstance
Definition: tags.h:219
registered_classes
std::vector< BlamTagClass * > registered_classes
List of all registered tag classes.
Definition: tagclass.cpp:63
fields.h
x
config GlyphExtraSpacing x
Definition: README.txt:30
BlamTagClassOLD
Legacy namespace for tag class data.
Definition: tagclass.h:61
BlamEngineDataFolder::Plugins
@ Plugins
Directory used to store built-in plugin files for use with the Editing Kit. Defaults to ....
Blam::Rendering::Materials::CreateDatablockInstance
BLAM ogre_material_instance_data * CreateDatablockInstance(std::string tag_path, std::string referencing_tag_path)
Creates a new datablock instance from a material tag path, and a referencing tag path.
Definition: materials.cpp:917
TestTagTagClass
Definition: test_tag.h:130
BlamTagData::CreateNewInstance
BlamTagInstance * CreateNewInstance()
Definition: BlamTagData.cpp:51
bitmap
Definition: bitmap.h:32
BlamTagData::address
void * address
The address pointing to the start of the tag's data.
Definition: tags.h:128
tagclass.h
config.h
tags.h
tags.h
BlamTagData::origin
TagOrigin origin
The origin of the tag.
Definition: tags.h:143
TagOrigin::BinaryFile
@ BinaryFile
Indicates the tag originated from a binary file.
BlamTagData
Class used to contain and access tag data.
Definition: tags.h:125
Blam::Content::Tags::LoadExtensionClasses
BLAM void LoadExtensionClasses()
Loads all tag classes that are included through engine extensions.
Definition: tagclass.cpp:128
Blam::Content::Tags::GetMaterialTag
BLAM material * GetMaterialTag(std::string tag_path)
Definition: material.cpp:16
ogre_material_instance_data::original_material
ogre_material_info_data * original_material
Pointer to the original material information.
Definition: rendering.h:34
BlamTagInstance::instance
BlamTagData * instance
Definition: tags.h:223
extensions.h
BlamTagClass
Class representing a tag class.
Definition: tags.h:188
BitmapTagClass
Definition: bitmap.h:93
BlamTagClassOLD::scenario_structure_bsp
BLAM void scenario_structure_bsp()
Legacy function made before I had any idea what I was doing.
Definition: tagclass.cpp:30
CuiScreenTagClass
Definition: cui_screen.h:95
BlamTagData::tag_class
std::string tag_class
The tag's short class name.
Definition: tags.h:142