Elaztek Developer Hub
Blamite Game Engine - blam!  00423.10.27.24.0533.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
Blam::Content::Tags::RegisterTagClass
BLAM void RegisterTagClass(BlamTagClass *data)
Registers a new tag class within the engine.
Definition: tagclass.cpp:79
Blam::Content::Tags
Namespace containing functions related to tag data.
Definition: bitmap.h:197
if
if(WIN32) set(OGRE_MEDIA_PATH "Media") elseif(APPLE) set(OGRE_MEDIA_PATH "Media") elseif(UNIX) set(OGRE_MEDIA_PATH "share/$
Definition: CMakeLists.txt:15
Blam::Rendering::Materials::LoadUnlitDatablockFromMaterialTag
BLAM bool LoadUnlitDatablockFromMaterialTag(Ogre::HlmsUnlitDatablock *datablock, material *material_tag)
Loads an Unlit datablock from a material tag.
Definition: materials.cpp:234
ogre_material_instance_data::tag_instance
material * tag_instance
Pointer to the tag that uses this material instance.
Definition: rendering.h:45
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:96
Blam::Content::Tags::LoadDefaultClasses
BLAM void LoadDefaultClasses()
Loads all built-in tag classes available to the engine.
Definition: tagclass.cpp:118
render_model
Definition: render_model.h:25
logger.h
ogre_material_info_data::hlms_type
Ogre::HlmsTypes hlms_type
The HLMS type of this material.
Definition: rendering.h:63
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:143
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:66
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:13
verify_material_for_param_linking
bool verify_material_for_param_linking(BlamTagData *material_tag_data)
Definition: tag_postprocess.cpp:69
Blam::Content::Tags::TagNeedsPostprocess
BLAM bool TagNeedsPostprocess(BlamTagData *tag_data)
Checks if a given tag requires additional post-processing.
Definition: tag_postprocess.cpp:98
ScenarioTagClass
Definition: scenario.h:105
render_model.h
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:376
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:136
Blam::Content::Tags::GetRegisteredTagClasses
BLAM_EXT_API std::vector< BlamTagClass * > * GetRegisteredTagClasses()
Retrieves the list of all registered tag classes.
Definition: tagclass.cpp:84
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:760
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
y
font DisplayOffset y
Definition: README.txt:68
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:128
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:44
ogre_material_instance_data
Data structure used to store OGRE material instance data.
Definition: rendering.h:40
Blam::Content::Tags::GenerateAllPlugins
BLAM void GenerateAllPlugins(bool require_switch)
Instructs the engine to generate Assembly/Guerilla plugins at startup.
Definition: tagclass.cpp:89
BlamTagData::Poke
void Poke()
Definition: BlamTagData.cpp:87
BlamTagInstance
Definition: tags.h:224
registered_classes
std::vector< BlamTagClass * > registered_classes
List of all registered tag classes.
Definition: tagclass.cpp:64
fields.h
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:948
globals.h
TestTagTagClass
Definition: test_tag.h:139
BlamTagData::CreateNewInstance
BlamTagInstance * CreateNewInstance()
Definition: BlamTagData.cpp:56
bitmap
Definition: bitmap.h:32
BlamTagData::address
void * address
The address pointing to the start of the tag's data.
Definition: tags.h:130
tagclass.h
config.h
tags.h
tags.h
x
config GlyphExtraSpacing x
Definition: README.txt:30
BlamTagData::origin
TagOrigin origin
The origin of the tag.
Definition: tags.h:145
TagOrigin::BinaryFile
@ BinaryFile
Indicates the tag originated from a binary file.
BlamTagData
Class used to contain and access tag data.
Definition: tags.h:124
Blam::Content::Tags::LoadExtensionClasses
BLAM void LoadExtensionClasses()
Loads all tag classes that are included through engine extensions.
Definition: tagclass.cpp:130
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:42
RenderModelTagClass
Definition: render_model.h:76
Blam::Rendering::Models::LoadModel
BLAM void LoadModel(render_model *model, std::string tag_path)
Definition: models.cpp:184
BlamTagInstance::instance
BlamTagData * instance
Definition: tags.h:228
extensions.h
BlamTagClass
Class representing a tag class.
Definition: tags.h:193
BitmapTagClass
Definition: bitmap.h:94
BlamTagClassOLD::scenario_structure_bsp
BLAM void scenario_structure_bsp()
Legacy function made before I had any idea what I was doing.
Definition: tagclass.cpp:31
CuiScreenTagClass
Definition: cui_screen.h:95
BlamTagData::tag_class
std::string tag_class
The tag's short class name.
Definition: tags.h:144
Blam::Content::Tags::GetRenderModelTag
BLAM render_model * GetRenderModelTag(std::string tag_path)
Definition: render_model.cpp:16