API

template<typename T, typename Crtp>
class ice_engine::AbstractEngineResourceManager : public ice_engine::BaseEngineResourceManager
#include <AbstractEngineResourceManager.hpp>

Public Functions

AbstractEngineResourceManager(const AbstractEngineResourceManager&) = delete
AbstractEngineResourceManager &operator=(const AbstractEngineResourceManager&) = delete
AbstractEngineResourceManager(AbstractEngineResourceManager&&) = default
AbstractEngineResourceManager &operator=(AbstractEngineResourceManager&&) noexcept = default
template<typename ...Args>
inline const T &create(const std::string &name, const Args&... args)
inline void destroy(const std::string &name)
inline void destroy(const T &resource)
inline void destroyAll()
inline bool exists(const std::string &name) const
inline const T &get(const std::string &name) const

Protected Functions

AbstractEngineResourceManager() = default
virtual ~AbstractEngineResourceManager() = default

Protected Attributes

std::unordered_map<std::string, T> map_
mutable std::recursive_mutex mutex_
class AgentHandle : public ice_engine::handles::Handle<AgentHandle>
#include <AgentHandle.hpp>
struct ice_engine::pathfinding::AgentParams
#include <AgentParams.hpp>

Public Members

float radius = 0.0f
float height = 0.1f

Agent height. [Limit: > 0].

float maxAcceleration = 0.0f
float maxSpeed = 0.0f
float collisionQueryRange = 0.1f

Defines how close a collision element must be before it is considered for steering behaviors. [Limits: > 0].

float pathOptimizationRange = 0.1f

The path visibility optimization range. [Limit: > 0].

float separationWeight = 0.0f
class ice_engine::scripting::angel_script::AngelscriptCPreProcessor : public ice_engine::CPreProcessor
#include <AngelscriptCPreProcessor.hpp>

Public Functions

AngelscriptCPreProcessor(fs::IFileSystem *fileSystem, logger::ILogger *logger, const std::unordered_map<std::string, std::string> &includeOverrides = {})
std::string process(std::string source, const std::unordered_map<std::string, std::string> &defineMap = {}, const bool autoIncludeGuard = false, const bool preserveLineNumbers = false)
std::vector<std::pair<std::string, std::string>> getProcessedFileSources() const
template<typename ContextT>
inline void opened_include_file(ContextT const &ctx, std::string const &relname, std::string const &filename, bool is_system_include)
template<typename ContextT>
inline void returning_from_include_file(ContextT const &ctx)
template<typename ContextT>
inline bool found_include_directive(ContextT const &ctx, std::string const &filename, bool include_next)
template<typename ContextT, typename TokenT>
inline void skipped_token(ContextT const &ctx, TokenT const &token)

Private Members

std::shared_ptr<std::stack<std::pair<std::string, std::shared_ptr<std::stringstream>>>> currentIncludeFileStack_
std::shared_ptr<std::shared_ptr<std::stringstream>> currentIncludeFileOutputStringStream_
std::shared_ptr<std::vector<std::pair<std::string, std::string>>> processedFileSources_
class ice_engine::scripting::angel_script::AngelscriptDebugger : public CDebugger, public ice_engine::scripting::IScriptingEngineDebugger
#include <AngelscriptDebugger.hpp>

Public Functions

inline AngelscriptDebugger(logger::ILogger *logger)
inline void prepare(asIScriptContext *context)
inline virtual void addBreakPoint(const std::string &file, const uint32 line) override
inline virtual void performAction(const scripting::DebugAction action) override
inline virtual std::string filename() const override

Returns the name of the file that the debugger is currently in.

If we aren’t currently debugging anything, returns an empty string.

Returns

inline virtual std::string functionName() const override

Returns the name of the function that the debugger is currently in.

If we aren’t currently debugging anything, returns an empty string.

Returns

inline virtual int32 line() const override

Returns the line in the file that the debugger is currently on.

If we aren’t currently debugging anything, returns -1.

Returns

inline virtual std::string stacktrace() override
inline virtual std::string variables() override
inline virtual void Output(const std::string &str) override
inline virtual std::string ToString(void *value, asUINT typeId, int expandMembers, asIScriptEngine *engine) override
inline virtual void registerToStringCallback(const std::string &obj, const std::function<std::string(void*)> &function) override
inline virtual void addDebugEventListener(IDebugEventListener *listener) override
inline virtual void removeDebugEventListener(const IDebugEventListener *listener) override
inline virtual bool enabled() const override
inline virtual void setEnabled(const bool enabled) override
inline virtual bool running() const override
inline virtual void setRunning(const bool running) override
inline virtual void TakeCommands(asIScriptContext *ctx) override

Private Functions

inline void lineCallback(asIScriptContext *context)

Private Members

logger::ILogger *logger_
bool enabled_ = false
bool running_ = false
bool keepContext_ = false
asIScriptContext *context_ = nullptr
asUINT nestCount_ = 0
std::mutex mutex_
std::stringstream buffer_
std::unordered_map<std::string, std::function<std::string(void*)>> registeredToStringCallbacks_
std::vector<IDebugEventListener*> debugEventListeners_
struct ice_engine::graphics::model::AnimatedBoneNode
#include <AnimatedBoneNode.hpp>

Public Functions

inline AnimatedBoneNode()
inline AnimatedBoneNode(std::string name, std::vector<float64> positionTimes, std::vector<float64> rotationTimes, std::vector<float64> scalingTimes, std::vector<glm::vec3> positions, std::vector<glm::quat> rotations, std::vector<glm::vec3> scalings)

Public Members

std::string name
std::vector<float64> positionTimes
std::vector<float64> rotationTimes
std::vector<float64> scalingTimes
std::vector<glm::vec3> positions
std::vector<glm::quat> rotations
std::vector<glm::vec3> scalings
struct ice_engine::AnimatedBoneNode
#include <Animation.hpp>

Public Functions

AnimatedBoneNode() = default
inline AnimatedBoneNode(std::string name, std::vector<KeyFrame<glm::vec3>> positionKeyFrames, std::vector<KeyFrame<glm::quat>> rotationKeyFrames, std::vector<KeyFrame<glm::vec3>> scalingKeyFrames)

Public Members

std::string name
std::vector<KeyFrame<glm::vec3>> positionKeyFrames
std::vector<KeyFrame<glm::quat>> rotationKeyFrames
std::vector<KeyFrame<glm::vec3>> scalingKeyFrames
class ice_engine::Animation
#include <Animation.hpp>

Public Functions

Animation() = default
inline Animation(std::string name, std::chrono::duration<float32> duration, float32 ticksPerSecond, std::unordered_map<std::string, AnimatedBoneNode> animatedBoneNodes)
inline Animation(const std::string &name, const std::string &filename, const aiAnimation *animation, logger::ILogger *logger, fs::IFileSystem *fileSystem)
~Animation() = default
inline const std::string &name() const
inline std::chrono::duration<float32> duration() const
inline float32 ticksPerSecond() const
inline const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes() const

Private Functions

void import(const std::string &name, const std::string &filename, const aiAnimation *animation, logger::ILogger *logger, fs::IFileSystem *fileSystem)

Private Members

std::string name_
std::chrono::duration<float32> duration_ = std::chrono::duration<float32>(0.0f)
float32 ticksPerSecond_ = 0.0f
std::unordered_map<std::string, AnimatedBoneNode> animatedBoneNodes_
struct ice_engine::graphics::model::Animation
#include <Animation.hpp>

Public Functions

Animation() = default
inline Animation(std::string name, float64 duration, float64 ticksPerSecond, std::unordered_map<std::string, AnimatedBoneNode> animatedBoneNodes)

Public Members

std::string name
float64 duration
float64 ticksPerSecond
std::unordered_map<std::string, AnimatedBoneNode> animatedBoneNodes
struct ice_engine::ecs::AnimationComponent
#include <AnimationComponent.hpp>

Public Functions

AnimationComponent() = default
inline AnimationComponent(AnimationHandle animationHandle)
inline AnimationComponent(AnimationHandle animationHandle, uint32 startFrame, uint32 endFrame)

Public Members

AnimationHandle animationHandle
graphics::BonesHandle bonesHandle
std::chrono::duration<float32> runningTime = std::chrono::duration<float32>(0.0f)
float32 speed = 1.0f
uint32 startFrame = 0
uint32 endFrame = 0
std::vector<glm::mat4> transformations

Public Static Functions

static inline uint8 id()
class AnimationHandle : public ice_engine::handles::Handle<AnimationHandle>
#include <AnimationHandle.hpp>
struct ice_engine::graphics::model::AnimationSet
#include <AnimationSet.hpp>

Public Members

std::string name
BoneNode rootBoneNode
std::unordered_map<std::string, Animation> animations
glm::mat4 globalInverseTransformation = glm::mat4(1.0f)
class ice_engine::Audio : public ice_engine::audio::IAudio
#include <Audio.hpp>

Public Functions

inline Audio(const std::vector<uint8> &data)

Will load the provided audio data into a proper audio.

Parameters

data – The audio data to load.

inline Audio(std::istream &inputStream)

Will load the provided audio data into a proper audio.

Parameters

inputStream – Stream from which we will load our audio data.

~Audio() override = default
inline virtual const std::vector<uint8> &data() const override
inline virtual uint32 length() const override
inline virtual uint32 frequency() const override
inline virtual uint8 channels() const override
inline virtual uint16 bitsPerSample() const override
inline virtual int32 format() const override

Private Functions

void importAudio(const std::vector<uint8> &data)

Private Members

uint32 length_ = 0
std::vector<uint8> buffer_
int frequency_ = 0
uint8 channels_ = 0
uint16 bitsPerSample_ = 0
int32 format_ = Format::FORMAT_UNKNOWN
class ice_engine::AudioEngineBindingDelegate
#include <AudioEngineBindingDelegate.hpp>

Public Functions

AudioEngineBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, audio::IAudioEngine *audioEngine)
~AudioEngineBindingDelegate() = default
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
audio::IAudioEngine *audioEngine_
class ice_engine::audio::AudioFactory
#include <AudioFactory.hpp>

Public Static Functions

static std::unique_ptr<IAudioEngine> createAudioEngine(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)

Private Functions

AudioFactory()
AudioFactory(const AudioFactory &other)
virtual ~AudioFactory()
class AudioSceneHandle : public ice_engine::handles::Handle<AudioSceneHandle>
#include <AudioSceneHandle.hpp>
class ice_engine::BaseEngineResourceManager
#include <BaseEngineResourceManager.hpp>

Subclassed by ice_engine::AbstractEngineResourceManager< graphics::MeshHandle, EngineResourceManager< graphics::MeshHandle > >, ice_engine::AbstractEngineResourceManager< graphics::TextureHandle, EngineResourceManager< graphics::TextureHandle > >, ice_engine::AbstractEngineResourceManager< graphics::VertexShaderHandle, EngineResourceManager< graphics::VertexShaderHandle > >, ice_engine::AbstractEngineResourceManager< T, EngineResourceManager< T > >, ice_engine::AbstractEngineResourceManager< T, Crtp >

Public Functions

virtual ~BaseEngineResourceManager() = default
BaseEngineResourceManager(const BaseEngineResourceManager&) = delete
BaseEngineResourceManager &operator=(const BaseEngineResourceManager&) = delete
BaseEngineResourceManager(BaseEngineResourceManager&&) = default
BaseEngineResourceManager &operator=(BaseEngineResourceManager&&) noexcept = default

Protected Functions

BaseEngineResourceManager() = default
struct BaseException : public virtual exception, public virtual std::exception
#include <Exception.hpp>

Subclassed by ice_engine::Exception

class BaseHandle
#include <Handle.hpp>

Subclassed by ice_engine::handles::Handle< AgentHandle >, ice_engine::handles::Handle< AnimationHandle >, ice_engine::handles::Handle< AudioSceneHandle >, ice_engine::handles::Handle< BonesHandle >, ice_engine::handles::Handle< CameraHandle >, ice_engine::handles::Handle< ClientHandle >, ice_engine::handles::Handle< CollisionShapeHandle >, ice_engine::handles::Handle< CrowdHandle >, ice_engine::handles::Handle< ExecutionContextHandle >, ice_engine::handles::Handle< FragmentShaderHandle >, ice_engine::handles::Handle< ListenerHandle >, ice_engine::handles::Handle< MaterialHandle >, ice_engine::handles::Handle< MeshHandle >, ice_engine::handles::Handle< ModelHandle >, ice_engine::handles::Handle< ModuleHandle >, ice_engine::handles::Handle< NavigationMeshHandle >, ice_engine::handles::Handle< ObstacleHandle >, ice_engine::handles::Handle< PathfindingSceneHandle >, ice_engine::handles::Handle< PhysicsSceneHandle >, ice_engine::handles::Handle< PointLightHandle >, ice_engine::handles::Handle< PolygonMeshHandle >, ice_engine::handles::Handle< RemoteConnectionHandle >, ice_engine::handles::Handle< RenderableHandle >, ice_engine::handles::Handle< RenderSceneHandle >, ice_engine::handles::Handle< ScriptHandle >, ice_engine::handles::Handle< ServerHandle >, ice_engine::handles::Handle< ShaderHandle >, ice_engine::handles::Handle< ShaderProgramHandle >, ice_engine::handles::Handle< SkeletonHandle >, ice_engine::handles::Handle< SkyboxHandle >, ice_engine::handles::Handle< SkyboxRenderableHandle >, ice_engine::handles::Handle< SoundHandle >, ice_engine::handles::Handle< SoundSourceHandle >, ice_engine::handles::Handle< TerrainHandle >, ice_engine::handles::Handle< TerrainRenderableHandle >, ice_engine::handles::Handle< TessellationControlShaderHandle >, ice_engine::handles::Handle< TessellationEvaluationShaderHandle >, ice_engine::handles::Handle< TextureHandle >, ice_engine::handles::Handle< VertexShaderHandle >, ice_engine::handles::Handle< T >

class BasePointerHandle
#include <PointerHandle.hpp>

Subclassed by ice_engine::handles::PointerHandle< T >, ice_engine::handles::PointerHandle< GhostObjectHandle >, ice_engine::handles::PointerHandle< RigidBodyObjectHandle >, ice_engine::handles::PointerHandle< ScriptFunctionHandle >, ice_engine::handles::PointerHandle< ScriptObjectFunctionHandle >, ice_engine::handles::PointerHandle< ScriptObjectHandle >

class ice_engine::BaseResourceManager
#include <BaseResourceManager.hpp>

Subclassed by ice_engine::ResourceManager< T >

Public Functions

virtual ~BaseResourceManager() = default
BaseResourceManager(const BaseResourceManager&) = delete
BaseResourceManager &operator=(const BaseResourceManager&) = delete
BaseResourceManager(BaseResourceManager&&) = default
BaseResourceManager &operator=(BaseResourceManager&&) noexcept = default

Protected Functions

BaseResourceManager() = default
class ice_engine::BindingDelegate
#include <BindingDelegate.hpp>

Public Functions

BindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, graphics::IGraphicsEngine *graphicsEngine, audio::IAudioEngine *audioEngine, networking::INetworkingEngine *networkingEngine, physics::IPhysicsEngine *physicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine)
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
graphics::IGraphicsEngine *graphicsEngine_
audio::IAudioEngine *audioEngine_
networking::INetworkingEngine *networkingEngine_
physics::IPhysicsEngine *physicsEngine_
pathfinding::IPathfindingEngine *pathfindingEngine_
struct ice_engine::graphics::model::Bone
#include <Bone.hpp>

Public Members

std::string name
glm::mat4 boneOffset = glm::mat4(1.0f)
struct ice_engine::Bone
#include <Mesh.hpp>

Public Members

std::string name
glm::mat4 inverseModelSpacePoseTransform = glm::mat4(1.0f)

Describes the model space transformation from the original pose position back to the origin.

struct ice_engine::graphics::model::BoneData
#include <BoneData.hpp>

Public Members

std::string name
std::unordered_map<std::string, uint32> boneIndexMap
std::vector<Bone> boneTransform
struct ice_engine::BoneData
#include <Mesh.hpp>

Public Members

std::string name
std::unordered_map<std::string, uint32> boneIndexMap
std::vector<Bone> boneTransform
struct ice_engine::graphics::model::BoneNode
#include <BoneNode.hpp>

Public Members

std::string name
glm::mat4 transformation = glm::mat4(1.0f)
std::vector<BoneNode> children
struct ice_engine::BoneNode
#include <Skeleton.hpp>

Public Members

std::string name
glm::mat4 transformation = glm::mat4(1.0f)
std::vector<BoneNode> children
class BonesHandle : public ice_engine::handles::Handle<BonesHandle>
#include <BonesHandle.hpp>
struct CDebugger::BreakPoint
#include <debugger.h>

Public Functions

inline BreakPoint(std::string f, int n, bool _func)

Public Members

std::string name
int lineNbr
bool func
bool needsAdjusting
class ice_engine::Camera
#include <Camera.hpp>

Public Functions

Camera()
virtual ~Camera()
bool isActive()
void moveForward()
void moveBack()
void moveLeft()
void moveRight()
void rotate(const float32 &degrees, const glm::vec3 &axis)
void tick(float32 time)

Private Functions

void initialize()
class CameraHandle : public ice_engine::handles::Handle<CameraHandle>
#include <CameraHandle.hpp>
class CDebugger
#include <debugger.h>

Subclassed by ice_engine::scripting::angel_script::AngelscriptDebugger

Public Types

typedef std::string (*ToStringCallback)(void *obj, int expandMembersLevel, CDebugger *dbg)

Public Functions

CDebugger()
virtual ~CDebugger()
virtual void RegisterToStringCallback(const asITypeInfo *ti, ToStringCallback callback)
virtual void TakeCommands(asIScriptContext *ctx)
virtual void Output(const std::string &str)
virtual void LineCallback(asIScriptContext *ctx)
virtual void PrintHelp()
virtual void AddFileBreakPoint(const std::string &file, int lineNbr)
virtual void AddFuncBreakPoint(const std::string &func)
virtual void ListBreakPoints()
virtual void ListLocalVariables(asIScriptContext *ctx)
virtual void ListGlobalVariables(asIScriptContext *ctx)
virtual void ListMemberProperties(asIScriptContext *ctx)
virtual void ListStatistics(asIScriptContext *ctx)
virtual void PrintCallstack(asIScriptContext *ctx)
virtual void PrintValue(const std::string &expr, asIScriptContext *ctx)
virtual bool InterpretCommand(const std::string &cmd, asIScriptContext *ctx)
virtual bool CheckBreakPoint(asIScriptContext *ctx)
virtual std::string ToString(void *value, asUINT typeId, int expandMembersLevel, asIScriptEngine *engine)
virtual void SetEngine(asIScriptEngine *engine)
virtual asIScriptEngine *GetEngine()

Protected Types

enum DebugAction

Values:

enumerator CONTINUE
enumerator STEP_INTO
enumerator STEP_OVER
enumerator STEP_OUT

Protected Attributes

DebugAction m_action
asUINT m_lastCommandAtStackLevel
asIScriptFunction *m_lastFunction
std::vector<BreakPoint> m_breakPoints
asIScriptEngine *m_engine
std::map<const asITypeInfo*, ToStringCallback> m_toStringCallbacks
struct ice_engine::ecs::ChildrenComponent
#include <ChildrenComponent.hpp>

Public Functions

ChildrenComponent() = default
inline ChildrenComponent(std::vector<Entity> children)

Public Members

std::vector<Entity> children

Public Static Functions

static inline uint8 id()
class CScriptDictionary::CIterator
#include <scriptdictionary.h>

Public Functions

void operator++()
void operator++(int)
CIterator &operator*()
bool operator==(const CIterator &other) const
bool operator!=(const CIterator &other) const
const dictKey_t &GetKey() const
int GetTypeId() const
bool GetValue(asINT64 &value) const
bool GetValue(double &value) const
bool GetValue(void *value, int typeId) const
const void *GetAddressOfValue() const

Protected Functions

CIterator()
CIterator(const CScriptDictionary &dict, dictMap_t::const_iterator it)
inline CIterator &operator=(const CIterator&)

Protected Attributes

dictMap_t::const_iterator m_it
const CScriptDictionary &m_dict

Friends

friend class CScriptDictionary
class ClientHandle : public ice_engine::handles::Handle<ClientHandle>
#include <ClientHandle.hpp>
class CollisionShapeHandle : public ice_engine::handles::Handle<CollisionShapeHandle>
#include <CollisionShapeHandle.hpp>
class ice_engine::graphics::Color
#include <Color.hpp>

Public Functions

Color() = default
inline Color(const uint32 color)
inline Color(const uint8 r, const uint8 g, const uint8 b, const uint8 a)
inline void setColor(const uint32 color)
inline void setColor(const uint8 r, const uint8 g, const uint8 b, const uint8 a)
inline uint32 color() const

Private Members

uint32 color_ = 0
struct ConnectEvent : public ice_engine::networking::GenericEvent
#include <Event.hpp>
class ice_engine::Constants
#include <Constants.hpp>

Public Static Attributes

static const std::string GAME_NAME = std::string("Dark Horizon")
static const std::string GAME_VERSION = std::string("0.0.1 Pre-Alpha")
static const std::string MODELS_DIRECTORY
template<typename T>
struct Constructor
#include <aswrappedcall.h>
template<typename T>
struct gw::Constructor<T()>
#include <aswrappedcall.h>

Public Static Functions

static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0>
struct gw::Constructor<T(A0)>
#include <aswrappedcall.h>

Public Static Functions

static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1>
struct gw::Constructor<T(A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2>
struct gw::Constructor<T(A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2, typename A3>
struct gw::Constructor<T(A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
class ice_engine::CPreProcessor : public default_preprocessing_hooks
#include <CPreProcessor.hpp>

This class is a generic pre processor for C like code.

Subclassed by ice_engine::scripting::angel_script::AngelscriptCPreProcessor

Public Functions

CPreProcessor(fs::IFileSystem *fileSystem, logger::ILogger *logger, const std::unordered_map<std::string, std::string> &includeOverrides = {})
std::string process(std::string source, const std::unordered_map<std::string, std::string> &defineMap = {}, const bool autoIncludeGuard = false, const bool preserveLineNumbers = false)

Processess the source code.

Parameters

defineMap – this is an optional map that can contain any extra/special #defines that have been defined.

template<typename ContextT, typename ContainerT>
bool found_unknown_directive(ContextT const &ctx, ContainerT const &line, ContainerT &pending)
template<typename ContextT, typename ContainerT>
bool emit_line_directive(ContextT const &ctx, ContainerT &pending, typename ContextT::token_type const &act_token)
template<typename ContextT>
bool locate_include_file(ContextT &ctx, std::string &file_path, bool is_system, char const *current_name, std::string &dir_path, std::string &native_name)
template<typename ContextT>
void opened_include_file(ContextT const &ctx, std::string const &relname, std::string const &filename, bool is_system_include)
template<typename ContextT>
void returning_from_include_file(ContextT const &ctx)
template<typename ContextT>
bool found_include_directive(ContextT const &ctx, std::string const &filename, bool include_next)
template<typename ContextT, typename TokenT>
void skipped_token(ContextT const &ctx, TokenT const &token)
template<typename ContextT, typename TokenT>
TokenT const &generated_token(ContextT const &ctx, TokenT const &token)
template<typename ContextT, typename TokenT, typename ContainerT>
bool evaluated_conditional_expression(ContextT const &ctx, TokenT const &directive, ContainerT const &expression, bool expression_value)
template<typename ContextT, typename TokenT>
bool found_directive(ContextT const &ctx, TokenT const &directive)

Protected Functions

bool locateIncludeFile(const std::string &currentDirectory, std::string &filePath, bool isSystem, char const *currentName, std::string &dirPath, std::string &nativeName)
std::string toCanonicalPath(const std::string &currentDirectory, const std::string &filename)

Protected Attributes

bool preserveLineNumbers_ = false
bool autoIncludeGuard_ = false
uint32 conditionalDepth_ = 0
uint32 conditionalAllowNewlineDepth_ = 0
bool inDefine_ = false
uint32 numIncludes_ = 0
std::unordered_map<std::string, bool> includedFiles_
std::unordered_map<std::string, std::string> includeOverrides_
fs::IFileSystem *fileSystem_
logger::ILogger *logger_
std::shared_ptr<std::stringstream> outputStringStream_

Protected Static Attributes

static std::unordered_map<std::string, std::string> staticIncludeOverrides_
static fs::IFileSystem *staticFileSystem_ = nullptr
static logger::ILogger *staticLogger_ = nullptr
struct ice_engine::pathfinding::CrowdConfig
#include <CrowdConfig.hpp>

Public Members

int maxAgents = 1000
float maxAgentRadius = 0.6f
class CrowdHandle : public ice_engine::handles::Handle<CrowdHandle>
#include <CrowdHandle.hpp>
class CScriptArray
#include <scriptarray.h>

Public Functions

void AddRef() const
void Release() const
asITypeInfo *GetArrayObjectType() const
int GetArrayTypeId() const
int GetElementTypeId() const
asUINT GetSize() const
bool IsEmpty() const
void Reserve(asUINT maxElements)
void Resize(asUINT numElements)
void *At(asUINT index)
const void *At(asUINT index) const
void SetValue(asUINT index, void *value)
CScriptArray &operator=(const CScriptArray&)
bool operator==(const CScriptArray&) const
void InsertAt(asUINT index, void *value)
void InsertAt(asUINT index, const CScriptArray &arr)
void InsertLast(void *value)
void RemoveAt(asUINT index)
void RemoveLast()
void RemoveRange(asUINT start, asUINT count)
void SortAsc()
void SortDesc()
void SortAsc(asUINT startAt, asUINT count)
void SortDesc(asUINT startAt, asUINT count)
void Sort(asUINT startAt, asUINT count, bool asc)
void Sort(asIScriptFunction *less, asUINT startAt, asUINT count)
void Reverse()
int Find(void *value) const
int Find(asUINT startAt, void *value) const
int FindByRef(void *ref) const
int FindByRef(asUINT startAt, void *ref) const
void *GetBuffer()
int GetRefCount()
void SetFlag()
bool GetFlag()
void EnumReferences(asIScriptEngine *engine)
void ReleaseAllHandles(asIScriptEngine *engine)

Public Static Functions

static void SetMemoryFunctions(asALLOCFUNC_t allocFunc, asFREEFUNC_t freeFunc)
static CScriptArray *Create(asITypeInfo *ot)
static CScriptArray *Create(asITypeInfo *ot, asUINT length)
static CScriptArray *Create(asITypeInfo *ot, asUINT length, void *defaultValue)
static CScriptArray *Create(asITypeInfo *ot, void *listBuffer)

Protected Functions

CScriptArray(asITypeInfo *ot, void *initBuf)
CScriptArray(asUINT length, asITypeInfo *ot)
CScriptArray(asUINT length, void *defVal, asITypeInfo *ot)
CScriptArray(const CScriptArray &other)
virtual ~CScriptArray()
bool Less(const void *a, const void *b, bool asc)
void *GetArrayItemPointer(int index)
void *GetDataPointer(void *buffer)
void Copy(void *dst, void *src)
void Precache()
bool CheckMaxSize(asUINT numElements)
void Resize(int delta, asUINT at)
void CreateBuffer(SArrayBuffer **buf, asUINT numElements)
void DeleteBuffer(SArrayBuffer *buf)
void CopyBuffer(SArrayBuffer *dst, SArrayBuffer *src)
void Construct(SArrayBuffer *buf, asUINT start, asUINT end)
void Destruct(SArrayBuffer *buf, asUINT start, asUINT end)
bool Equals(const void *a, const void *b, asIScriptContext *ctx, SArrayCache *cache) const

Protected Attributes

mutable int refCount
mutable bool gcFlag
asITypeInfo *objType
SArrayBuffer *buffer
int elementSize
int subTypeId
class CScriptBuilder
#include <scriptbuilder.h>

Public Functions

CScriptBuilder()
int StartNewModule(asIScriptEngine *engine, const char *moduleName)
int AddSectionFromFile(const char *filename)
int AddSectionFromMemory(const char *sectionName, const char *scriptCode, unsigned int scriptLength = 0, int lineOffset = 0)
int BuildModule()
asIScriptEngine *GetEngine()
asIScriptModule *GetModule()
void SetIncludeCallback(INCLUDECALLBACK_t callback, void *userParam)
void SetPragmaCallback(PRAGMACALLBACK_t callback, void *userParam)
void DefineWord(const char *word)
unsigned int GetSectionCount() const
std::string GetSectionName(unsigned int idx) const
std::vector<std::string> GetMetadataForType(int typeId)
std::vector<std::string> GetMetadataForFunc(asIScriptFunction *func)
std::vector<std::string> GetMetadataForVar(int varIdx)
std::vector<std::string> GetMetadataForTypeProperty(int typeId, int varIdx)
std::vector<std::string> GetMetadataForTypeMethod(int typeId, asIScriptFunction *method)

Protected Types

enum METADATATYPE

Values:

enumerator MDT_TYPE
enumerator MDT_FUNC
enumerator MDT_VAR
enumerator MDT_VIRTPROP
enumerator MDT_FUNC_OR_VAR

Protected Functions

void ClearAll()
int Build()
int ProcessScriptSection(const char *script, unsigned int length, const char *sectionname, int lineOffset)
int LoadScriptSection(const char *filename)
bool IncludeIfNotAlreadyIncluded(const char *filename)
int SkipStatement(int pos)
int ExcludeCode(int start)
void OverwriteCode(int start, int len)
int ExtractMetadata(int pos, std::vector<std::string> &outMetadata)
int ExtractDeclaration(int pos, std::string &outName, std::string &outDeclaration, int &outType)

Protected Attributes

asIScriptEngine *engine
asIScriptModule *module
std::string modifiedScript
INCLUDECALLBACK_t includeCallback
void *includeParam
PRAGMACALLBACK_t pragmaCallback
void *pragmaParam
std::vector<SMetadataDecl> foundDeclarations
std::string currentClass
std::string currentNamespace
std::map<int, std::vector<std::string>> typeMetadataMap
std::map<int, std::vector<std::string>> funcMetadataMap
std::map<int, std::vector<std::string>> varMetadataMap
std::map<int, SClassMetadata> classMetadataMap
std::set<std::string> includedScripts
std::set<std::string> definedWords
class CScriptDictionary
#include <scriptdictionary.h>

Public Functions

void AddRef() const
void Release() const
CScriptDictionary &operator=(const CScriptDictionary &other)
void Set(const dictKey_t &key, void *value, int typeId)
void Set(const dictKey_t &key, const asINT64 &value)
void Set(const dictKey_t &key, const double &value)
bool Get(const dictKey_t &key, void *value, int typeId) const
bool Get(const dictKey_t &key, asINT64 &value) const
bool Get(const dictKey_t &key, double &value) const
CScriptDictValue *operator[](const dictKey_t &key)
const CScriptDictValue *operator[](const dictKey_t &key) const
int GetTypeId(const dictKey_t &key) const
bool Exists(const dictKey_t &key) const
bool IsEmpty() const
asUINT GetSize() const
bool Delete(const dictKey_t &key)
void DeleteAll()
CScriptArray *GetKeys() const
CIterator begin() const
CIterator end() const
CIterator find(const dictKey_t &key) const
int GetRefCount()
void SetGCFlag()
bool GetGCFlag()
void EnumReferences(asIScriptEngine *engine)
void ReleaseAllReferences(asIScriptEngine *engine)

Public Static Functions

static CScriptDictionary *Create(asIScriptEngine *engine)
static CScriptDictionary *Create(asBYTE *buffer)

Protected Functions

CScriptDictionary(asIScriptEngine *engine)
CScriptDictionary(asBYTE *buffer)
virtual ~CScriptDictionary()
void Init(asIScriptEngine *engine)

Protected Attributes

asIScriptEngine *engine
mutable int refCount
mutable bool gcFlag
dictMap_t dict
class CScriptDictValue
#include <scriptdictionary.h>

Public Functions

CScriptDictValue()
CScriptDictValue(asIScriptEngine *engine, void *value, int typeId)
~CScriptDictValue()
void Set(asIScriptEngine *engine, void *value, int typeId)
void Set(asIScriptEngine *engine, const asINT64 &value)
void Set(asIScriptEngine *engine, const double &value)
void Set(asIScriptEngine *engine, CScriptDictValue &value)
bool Get(asIScriptEngine *engine, void *value, int typeId) const
bool Get(asIScriptEngine *engine, asINT64 &value) const
bool Get(asIScriptEngine *engine, double &value) const
const void *GetAddressOfValue() const
int GetTypeId() const
void FreeValue(asIScriptEngine *engine)
void EnumReferences(asIScriptEngine *engine)

Public Members

asINT64 m_valueInt
double m_valueFlt
void *m_valueObj

Protected Attributes

union CScriptDictValue::[anonymous] [anonymous]
int m_typeId

Friends

friend class CScriptDictionary
class CScriptHandle
#include <scripthandle.h>

Public Functions

CScriptHandle()
CScriptHandle(const CScriptHandle &other)
CScriptHandle(void *ref, asITypeInfo *type)
~CScriptHandle()
CScriptHandle &operator=(const CScriptHandle &other)
void Set(void *ref, asITypeInfo *type)
bool operator==(const CScriptHandle &o) const
bool operator!=(const CScriptHandle &o) const
bool Equals(void *ref, int typeId) const
void Cast(void **outRef, int typeId)
asITypeInfo *GetType() const
int GetTypeId() const
void *GetRef()
void EnumReferences(asIScriptEngine *engine)
void ReleaseReferences(asIScriptEngine *engine)

Protected Functions

void ReleaseHandle()
void AddRefHandle()
CScriptHandle(void *ref, int typeId)
CScriptHandle &Assign(void *ref, int typeId)

Protected Attributes

void *m_ref
asITypeInfo *m_type

Friends

friend friend void Construct (CScriptHandle *self, void *ref, int typeId)
friend friend void RegisterScriptHandle_Native (asIScriptEngine *engine)
friend friend void CScriptHandle_AssignVar_Generic (asIScriptGeneric *gen)
class CStdStringFactory : public asIStringFactory

Public Functions

inline CStdStringFactory()
inline ~CStdStringFactory()
inline const void *GetStringConstant(const char *data, asUINT length)
inline int ReleaseStringConstant(const void *str)
inline int GetRawStringData(const void *str, char *data, asUINT *length) const

Public Members

map_t stringCache
class CStdStringFactoryCleaner

Public Functions

inline ~CStdStringFactoryCleaner()
struct ice_engine::scripting::DebugEvent
#include <IScriptingEngineDebugger.hpp>

Public Members

uint32 type
class ice_engine::DebugRenderer : public ice_engine::IDebugRenderer
#include <DebugRenderer.hpp>

Public Functions

inline DebugRenderer(graphics::IGraphicsEngine *graphicsEngine)
~DebugRenderer() override = default
inline virtual void pushLine(const glm::vec3 &from, const glm::vec3 &to, const glm::vec3 &color) override
inline virtual void pushLines(const std::vector<std::tuple<glm::vec3, glm::vec3, glm::vec3>> &lineData) override
inline virtual void render() override

Private Members

graphics::IGraphicsEngine *graphicsEngine_ = nullptr
std::vector<std::tuple<glm::vec3, glm::vec3, glm::vec3>> lineData_
struct ice_engine::ecs::DirtyComponent
#include <DirtyComponent.hpp>

Public Functions

DirtyComponent() = default
inline DirtyComponent(uint16 dirty)

Public Members

uint16 dirty = 0
struct DisconnectEvent : public ice_engine::networking::GenericEvent
#include <Event.hpp>
class ice_engine::DisplacementMap : public ice_engine::graphics::IDisplacementMap
#include <DisplacementMap.hpp>

Public Functions

~DisplacementMap() override = default
struct ice_engine::graphics::DisplacementMap
#include <IGraphicsEngine.hpp>

Public Functions

DisplacementMap() = default
inline DisplacementMap(IImage *displacementMap)

Public Members

IImage *displacementMap = nullptr
template<bool All = false>
class ice_engine::ecs::EcsView
#include <EntityComponentSystem.hpp>

Public Functions

inline EcsView(Scene *scene, entityx::EntityManager::BaseView<All> baseView)
~EcsView() = default
inline Iterator begin()
inline Iterator end()
inline const Iterator begin() const
inline const Iterator end() const

Private Members

Scene *scene_
entityx::EntityManager::BaseView<All> baseView_
template<typename T>
class ice_engine::EngineResourceManager : public ice_engine::AbstractEngineResourceManager<T, EngineResourceManager<T>>
#include <EngineResourceManager.hpp>

Public Functions

EngineResourceManager(const EngineResourceManager&) = delete
EngineResourceManager &operator=(const EngineResourceManager&) = delete
EngineResourceManager(EngineResourceManager&&) = default
EngineResourceManager &operator=(EngineResourceManager&&) noexcept = default

Protected Functions

EngineResourceManager() = default
virtual ~EngineResourceManager() = default
template<>
class ice_engine::EngineResourceManager<graphics::MeshHandle> : public ice_engine::AbstractEngineResourceManager<graphics::MeshHandle, EngineResourceManager<graphics::MeshHandle>>, private ice_engine::GraphicsEngineResourceManager<graphics::MeshHandle>
#include <EngineResourceManager.MeshHandle.hpp>

Public Functions

~EngineResourceManager() override = default

Protected Functions

template<typename ...Args>
inline graphics::MeshHandle _create(const Args&... args)

Friends

friend class AbstractEngineResourceManager< graphics::MeshHandle, EngineResourceManager< graphics::MeshHandle > >
template<>
class ice_engine::EngineResourceManager<graphics::TextureHandle> : public ice_engine::AbstractEngineResourceManager<graphics::TextureHandle, EngineResourceManager<graphics::TextureHandle>>, private ice_engine::GraphicsEngineResourceManager<graphics::TextureHandle>
#include <EngineResourceManager.TextureHandle.hpp>

Public Functions

~EngineResourceManager() override = default

Protected Functions

template<typename ...Args>
inline graphics::TextureHandle _create(const Args&... args)

Friends

friend class AbstractEngineResourceManager< graphics::TextureHandle, EngineResourceManager< graphics::TextureHandle > >
template<>
class ice_engine::EngineResourceManager<graphics::VertexShaderHandle> : public ice_engine::AbstractEngineResourceManager<graphics::VertexShaderHandle, EngineResourceManager<graphics::VertexShaderHandle>>, private ice_engine::GraphicsEngineResourceManager<graphics::VertexShaderHandle>
#include <EngineResourceManager.VertexShaderHandle.hpp>

Public Functions

~EngineResourceManager() override = default

Protected Functions

template<typename ...Args>
inline graphics::VertexShaderHandle _create(const Args&... args)

Friends

friend class AbstractEngineResourceManager< graphics::VertexShaderHandle, EngineResourceManager< graphics::VertexShaderHandle > >
struct ice_engine::EngineStatistics
#include <EngineStatistics.hpp>

Public Members

float32 fps
std::chrono::duration<float32> renderTime
class ice_engine::ecs::Entity
#include <Entity.hpp>

Public Functions

Entity() = default
inline Entity(entityx::Entity::Id id)
inline Entity(Scene *scene, entityx::Entity entity)
Entity(const Entity &other) = default
Entity &operator=(const Entity &other) = default
inline operator bool() const
inline bool operator==(const Entity &other) const
inline bool operator!=(const Entity &other) const
inline bool operator<(const Entity &other) const
inline bool valid() const
inline void invalidate()
inline Scene *scene() const
inline entityx::Entity::Id id() const
template<typename C>
std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ParentComponent>>::value, entityx::ComponentHandle<C>>::type assign(const ParentComponent &parentComponent)
template<typename C, typename ...Args>
inline std::enable_if<!std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GraphicsComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<AnimationComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PointLightComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GraphicsTerrainComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GraphicsSkyboxComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<RigidBodyObjectComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GhostObjectComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PathfindingCrowdComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PathfindingAgentComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PathfindingObstacleComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ParentComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ChildrenComponent>>::value && !std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ParentBoneAttachmentComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ParentComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ChildrenComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<ParentBoneAttachmentComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GraphicsComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<AnimationComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PointLightComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GraphicsTerrainComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GraphicsSkyboxComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<RigidBodyObjectComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<GhostObjectComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PathfindingCrowdComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PathfindingAgentComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C, typename ...Args>
inline std::enable_if<std::is_same<entityx::ComponentHandle<C>, entityx::ComponentHandle<PathfindingObstacleComponent>>::value, entityx::ComponentHandle<C>>::type assign(Args&&... args)
template<typename C>
inline entityx::ComponentHandle<C> assignFromCopy(const C &component)
template<typename C, typename ...Args>
inline entityx::ComponentHandle<C> replace(Args&&... args)
template<typename C>
inline void remove()
template<typename C, typename = typename std::enable_if<!std::is_const<C>::value>::type>
inline entityx::ComponentHandle<C> component()
template<typename C, typename = typename std::enable_if<std::is_const<C>::value>::type>
inline const entityx::ComponentHandle<C, const entityx::EntityManager> component() const
template<typename ...Components>
inline std::tuple<entityx::ComponentHandle<Components>...> components()
template<typename ...Components>
inline std::tuple<entityx::ComponentHandle<const Components, const entityx::EntityManager>...> components() const
template<typename C>
inline bool hasComponent() const
template<typename A, typename ...Args>
inline void unpack(entityx::ComponentHandle<A> &a, entityx::ComponentHandle<Args>&... args)
inline void destroy()
template<>
entityx::ComponentHandle<ChildrenComponent> assign()
template<>
entityx::ComponentHandle<ParentComponent> assign(Entity &&entity)
template<>
entityx::ComponentHandle<ParentComponent> assign(Entity &&entity)
template<>
entityx::ComponentHandle<ParentComponent> assign(Entity &entity)
template<>
entityx::ComponentHandle<ParentComponent> assign(const Entity &entity)
template<>
entityx::ComponentHandle<ParentComponent> assign(ParentComponent &&parentComponent)
template<>
entityx::ComponentHandle<ParentComponent> assign(ParentComponent &&parentComponent)
template<>
entityx::ComponentHandle<ParentComponent> assign(ParentComponent &parentComponent)
template<>
entityx::ComponentHandle<ParentComponent> assign(const ParentComponent &parentComponent)
template<>
entityx::ComponentHandle<ParentComponent> assign()
template<>
entityx::ComponentHandle<ChildrenComponent> assign(ChildrenComponent &&childrenComponent)
template<>
entityx::ComponentHandle<ChildrenComponent> assign(ChildrenComponent &&childrenComponent)
template<>
entityx::ComponentHandle<ChildrenComponent> assign(ChildrenComponent &childrenComponent)
template<>
entityx::ComponentHandle<ChildrenComponent> assign(const ChildrenComponent &childrenComponent)
template<>
entityx::ComponentHandle<ChildrenComponent> assign()
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign(ParentBoneAttachmentComponent &&parentBoneAttachmentComponent)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign(ParentBoneAttachmentComponent &&parentBoneAttachmentComponent)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign(const ParentBoneAttachmentComponent &parentBoneAttachmentComponent)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign()

Private Functions

entityx::ComponentHandle<ParentBoneAttachmentComponent> assignParentBoneAttachmentComponent(std::string boneName, glm::ivec4 boneIds, glm::vec4 boneWeights)

Private Members

entityx::Entity entity_
SceneDelegate sceneDelegate_
Scene *scene_ = nullptr

Friends

inline friend friend std::ostream & operator<< (std::ostream &os, const Entity &other)
class ice_engine::EntityBindingDelegate
#include <EntityBindingDelegate.hpp>

Public Functions

EntityBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine)
~EntityBindingDelegate() = default
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
class ice_engine::ecs::EntityComponentSystem
#include <EntityComponentSystem.hpp>

Public Functions

inline explicit EntityComponentSystem(Scene *scene)
inline EcsView<true> entities()
inline const EcsView<true> entities() const
~EntityComponentSystem() = default
template<class T, typename Receiver>
inline void subscribe(Receiver &receiver)
inline Entity create()
inline void destroy(Entity entity)
inline bool valid(entityx::Entity::Id id) const
inline entityx::Entity::Id createId(uint32 index) const
inline Entity get(entityx::Entity::Id id)
template<typename C, typename = typename std::enable_if<!std::is_const<C>::value>::type>
inline entityx::ComponentHandle<C> component(entityx::Entity::Id id)
template<typename C, typename = typename std::enable_if<std::is_const<C>::value>::type>
inline const entityx::ComponentHandle<C, const entityx::EntityManager> component(entityx::Entity::Id id) const
template<typename C>
inline bool hasComponent(entityx::Entity::Id id) const
template<typename C, typename ...Args>
inline entityx::ComponentHandle<C> assign(entityx::Entity::Id id, Args&&... args)
template<typename ...C>
inline EcsView<false> entitiesWithComponents()
template<typename ...C>
inline const EcsView<false> entitiesWithComponents() const
template<typename C>
inline void remove(entityx::Entity::Id id)
inline size_t numEntities() const

Private Functions

inline entityx::EntityManager::ComponentMask generateEntityMask(const ice_engine::ecs::Entity &entity) const
template<class Archive, class C>
inline void saveComponent(Archive &ar, const ice_engine::ecs::Entity &entity, const unsigned int version) const
template<class Archive>
inline void saveEntity(Archive &ar, const ice_engine::ecs::Entity &entity, const unsigned int version) const
template<class Archive>
inline void saveEntities(Archive &ar, const unsigned int version) const
template<class Archive, class C>
inline void loadComponent(Archive &ar, ice_engine::ecs::Entity &entity, const unsigned int version)
template<class Archive>
inline void loadEntity(Archive &ar, ice_engine::ecs::Entity &entity, const entityx::EntityManager::ComponentMask mask, const unsigned int version)
template<class Archive>
inline void loadEntities(Archive &ar, const ice_engine::uint32 numEntities, const unsigned int version)
template<class Archive>
inline void serialize(Archive &ar, const unsigned int version)
template<class Archive>
inline void save(Archive &ar, const unsigned int version) const
template<class Archive>
inline void load(Archive &ar, const unsigned int version)

Private Members

Scene *scene_
entityx::EventManager events_
entityx::EntityManager entities_
entityx::SystemManager systems_

Friends

friend class boost::serialization::access
class ice_engine::EntityComponentSystemEventListener : public entityx::Receiver<EntityComponentSystemEventListener>
#include <EntityComponentSystemEventListener.hpp>

Public Functions

EntityComponentSystemEventListener(Scene &scene, ecs::EntityComponentSystem &entityComponentSystem)
void receive(const entityx::EntityCreatedEvent &event)
void receive(const entityx::EntityDestroyedEvent &event)
void receive(const entityx::ComponentAddedEvent<ecs::GraphicsComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::GraphicsComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::AnimationComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::RigidBodyObjectComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::GhostObjectComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::PathfindingCrowdComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::PathfindingAgentComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::PathfindingObstacleComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::ParentComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::ChildrenComponent> &event)
void receive(const entityx::ComponentRemovedEvent<ecs::ParentBoneAttachmentComponent> &event)

Private Members

Scene &scene_
ecs::EntityComponentSystem &entityComponentSystem_
union ice_engine::graphics::Event
#include <Event.hpp>
struct ice_engine::Exception : public virtual ice_engine::BaseException
#include <Exception.hpp>

Subclassed by ice_engine::FileNotFoundException, ice_engine::graphics::GraphicsException, ice_engine::InvalidArgumentException, ice_engine::InvalidOperationException, ice_engine::RuntimeException

Public Functions

Exception(const std::string &error = std::string())
Exception(const std::exception &e)
inline const char *what() const noexcept

Protected Attributes

std::string message
class ExecutionContextHandle : public ice_engine::handles::Handle<ExecutionContextHandle>
#include <ExecutionContextHandle.hpp>
class FastNoise
#include <FastNoise.h>

Public Types

enum NoiseType

Values:

enumerator Value
enumerator ValueFractal
enumerator Perlin
enumerator PerlinFractal
enumerator Simplex
enumerator SimplexFractal
enumerator Cellular
enumerator WhiteNoise
enumerator Cubic
enumerator CubicFractal
enum Interp

Values:

enumerator Linear
enumerator Hermite
enumerator Quintic
enum FractalType

Values:

enumerator FBM
enumerator Billow
enumerator RigidMulti
enum CellularDistanceFunction

Values:

enumerator Euclidean
enumerator Manhattan
enumerator Natural
enum CellularReturnType

Values:

enumerator CellValue
enumerator NoiseLookup
enumerator Distance
enumerator Distance2
enumerator Distance2Add
enumerator Distance2Sub
enumerator Distance2Mul
enumerator Distance2Div

Public Functions

inline explicit FastNoise(int seed = 1337)
void SetSeed(int seed)
inline int GetSeed() const
inline void SetFrequency(FN_DECIMAL frequency)
inline FN_DECIMAL GetFrequency() const
inline void SetInterp(Interp interp)
inline Interp GetInterp() const
inline void SetNoiseType(NoiseType noiseType)
inline NoiseType GetNoiseType() const
inline void SetFractalOctaves(int octaves)
inline int GetFractalOctaves() const
inline void SetFractalLacunarity(FN_DECIMAL lacunarity)
inline FN_DECIMAL GetFractalLacunarity() const
inline void SetFractalGain(FN_DECIMAL gain)
inline FN_DECIMAL GetFractalGain() const
inline void SetFractalType(FractalType fractalType)
inline FractalType GetFractalType() const
inline void SetCellularDistanceFunction(CellularDistanceFunction cellularDistanceFunction)
inline CellularDistanceFunction GetCellularDistanceFunction() const
inline void SetCellularReturnType(CellularReturnType cellularReturnType)
inline CellularReturnType GetCellularReturnType() const
inline void SetCellularNoiseLookup(FastNoise *noise)
inline FastNoise *GetCellularNoiseLookup() const
void SetCellularDistance2Indices(int cellularDistanceIndex0, int cellularDistanceIndex1)
void GetCellularDistance2Indices(int &cellularDistanceIndex0, int &cellularDistanceIndex1) const
inline void SetCellularJitter(FN_DECIMAL cellularJitter)
inline FN_DECIMAL GetCellularJitter() const
inline void SetGradientPerturbAmp(FN_DECIMAL gradientPerturbAmp)
inline FN_DECIMAL GetGradientPerturbAmp() const
FN_DECIMAL GetValue(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetValueFractal(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetPerlin(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetPerlinFractal(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetSimplex(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetSimplexFractal(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetCellular(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetWhiteNoise(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetWhiteNoiseInt(int x, int y) const
FN_DECIMAL GetCubic(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetCubicFractal(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL GetNoise(FN_DECIMAL x, FN_DECIMAL y) const
void GradientPerturb(FN_DECIMAL &x, FN_DECIMAL &y) const
void GradientPerturbFractal(FN_DECIMAL &x, FN_DECIMAL &y) const
FN_DECIMAL GetValue(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetValueFractal(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetPerlin(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetPerlinFractal(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetSimplex(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetSimplexFractal(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetCellular(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetWhiteNoise(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetWhiteNoiseInt(int x, int y, int z) const
FN_DECIMAL GetCubic(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetCubicFractal(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL GetNoise(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
void GradientPerturb(FN_DECIMAL &x, FN_DECIMAL &y, FN_DECIMAL &z) const
void GradientPerturbFractal(FN_DECIMAL &x, FN_DECIMAL &y, FN_DECIMAL &z) const
FN_DECIMAL GetSimplex(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z, FN_DECIMAL w) const
FN_DECIMAL GetWhiteNoise(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z, FN_DECIMAL w) const
FN_DECIMAL GetWhiteNoiseInt(int x, int y, int z, int w) const

Private Functions

void CalculateFractalBounding()
FN_DECIMAL SingleValueFractalFBM(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleValueFractalBillow(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleValueFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleValue(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SinglePerlinFractalFBM(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SinglePerlinFractalBillow(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SinglePerlinFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SinglePerlin(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleSimplexFractalFBM(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleSimplexFractalBillow(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleSimplexFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleSimplexFractalBlend(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleSimplex(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleCubicFractalFBM(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleCubicFractalBillow(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleCubicFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleCubic(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleCellular(FN_DECIMAL x, FN_DECIMAL y) const
FN_DECIMAL SingleCellular2Edge(FN_DECIMAL x, FN_DECIMAL y) const
void SingleGradientPerturb(unsigned char offset, FN_DECIMAL warpAmp, FN_DECIMAL frequency, FN_DECIMAL &x, FN_DECIMAL &y) const
FN_DECIMAL SingleValueFractalFBM(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleValueFractalBillow(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleValueFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleValue(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SinglePerlinFractalFBM(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SinglePerlinFractalBillow(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SinglePerlinFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SinglePerlin(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleSimplexFractalFBM(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleSimplexFractalBillow(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleSimplexFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleSimplex(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleCubicFractalFBM(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleCubicFractalBillow(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleCubicFractalRigidMulti(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleCubic(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleCellular(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
FN_DECIMAL SingleCellular2Edge(FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z) const
void SingleGradientPerturb(unsigned char offset, FN_DECIMAL warpAmp, FN_DECIMAL frequency, FN_DECIMAL &x, FN_DECIMAL &y, FN_DECIMAL &z) const
FN_DECIMAL SingleSimplex(unsigned char offset, FN_DECIMAL x, FN_DECIMAL y, FN_DECIMAL z, FN_DECIMAL w) const
inline unsigned char Index2D_12(unsigned char offset, int x, int y) const
inline unsigned char Index3D_12(unsigned char offset, int x, int y, int z) const
inline unsigned char Index4D_32(unsigned char offset, int x, int y, int z, int w) const
inline unsigned char Index2D_256(unsigned char offset, int x, int y) const
inline unsigned char Index3D_256(unsigned char offset, int x, int y, int z) const
inline unsigned char Index4D_256(unsigned char offset, int x, int y, int z, int w) const
inline FN_DECIMAL ValCoord2DFast(unsigned char offset, int x, int y) const
inline FN_DECIMAL ValCoord3DFast(unsigned char offset, int x, int y, int z) const
inline FN_DECIMAL GradCoord2D(unsigned char offset, int x, int y, FN_DECIMAL xd, FN_DECIMAL yd) const
inline FN_DECIMAL GradCoord3D(unsigned char offset, int x, int y, int z, FN_DECIMAL xd, FN_DECIMAL yd, FN_DECIMAL zd) const
inline FN_DECIMAL GradCoord4D(unsigned char offset, int x, int y, int z, int w, FN_DECIMAL xd, FN_DECIMAL yd, FN_DECIMAL zd, FN_DECIMAL wd) const

Private Members

unsigned char m_perm[512]
unsigned char m_perm12[512]
int m_seed = 1337
FN_DECIMAL m_frequency = FN_DECIMAL(0.01)
Interp m_interp = Quintic
NoiseType m_noiseType = Simplex
int m_octaves = 3
FN_DECIMAL m_lacunarity = FN_DECIMAL(2)
FN_DECIMAL m_gain = FN_DECIMAL(0.5)
FractalType m_fractalType = FBM
FN_DECIMAL m_fractalBounding
CellularDistanceFunction m_cellularDistanceFunction = Euclidean
CellularReturnType m_cellularReturnType = CellValue
FastNoise *m_cellularNoiseLookup = nullptr
int m_cellularDistanceIndex0 = 0
int m_cellularDistanceIndex1 = 1
FN_DECIMAL m_cellularJitter = FN_DECIMAL(0.45)
FN_DECIMAL m_gradientPerturbAmp = FN_DECIMAL(1)
class ice_engine::fs::File : public ice_engine::fs::IFile
#include <File.hpp>

Public Functions

File(const std::string &file, int32 flags)
~File() override
virtual bool isOpen() const override
virtual uint64 size() const override
virtual bool eof() const override
virtual std::string path() const override
virtual void close() override
virtual void write(const char *data) override
virtual void write(const std::string &data) override
virtual std::string read(const uint32 length = 256) override
virtual std::string readAll() override
virtual std::istream &getInputStream() override
virtual std::ostream &getOutputStream() override

Private Members

std::string file_
int32 flags_
std::vector<char> buffer_
std::ifstream inputFileStream_
std::ofstream outputFileStream_

Private Static Attributes

static constexpr uint32 DEFAULT_BUFFER_SIZE = 1024
struct FileNotFoundException : public virtual ice_engine::Exception
#include <FileNotFoundException.hpp>
class ice_engine::fs::FileSystem : public ice_engine::fs::IFileSystem
#include <FileSystem.hpp>

Public Functions

FileSystem(const std::vector<std::string> &baseDirectories = std::vector<std::string>())
void mountBaseDirectory(const std::string &baseDir)

Mounts a base directory that will be used when looking for files.

You may call this method multiple times to mount several base directories.

Note that once you mount a directory, any file that is looked for that does not have its base path within a mounted directory will fail to find the file.

Parameters

baseDir

void unmountBaseDirectory(const std::string &baseDir)
void mountFile(const std::string &path, const std::string &mountPoint)

Mounts a file that can be accessed by it’s mount point.

You may call this method multiple times to mount several files.

Parameters

baseDir

void unmountFile(const std::string &mountPoint)
virtual bool exists(const std::string &file) const override
virtual bool isDirectory(const std::string &file) const override
virtual std::vector<std::string> list(const std::string &directoryName) const override
virtual void deleteFile(const std::string &file) const override
virtual void makeDirectory(const std::string &directoryName) const override
virtual std::string getBasePath(const std::string &filename) const override
virtual std::string getDirectorySeperator() const override
virtual std::string getTempDirectory() const override
virtual std::string getFilename(const std::string &filename) const override
virtual std::string getFilenameWithoutExtension(const std::string &filename) const override
virtual std::string getCanonicalPath(const std::string &filename) const override
virtual std::string readAll(const std::string &file, const bool isBinary = false) const override
virtual std::unique_ptr<IFile> open(const std::string &file, int32 flags) const override
virtual std::string generateTempFilename() const override

Private Functions

boost::filesystem::path findPath(const std::string &file) const

Private Members

std::vector<std::string> mountedDirectories_
std::unordered_map<std::string, std::string> mountedFiles_
class ice_engine::extras::FpsCamera
#include <FpsCamera.hpp>

Public Functions

FpsCamera()
virtual ~FpsCamera()
bool isActive()
void moveForward()
void moveBack()
void moveLeft()
void moveRight()
void rotate(const float32 &degrees, const glm::vec3 &axis)
void tick(float32 time)

Private Functions

void initialize()

Private Members

float32 speed_
class FragmentShaderHandle : public ice_engine::handles::Handle<FragmentShaderHandle>
#include <FragmentShaderHandle.hpp>
template<typename T, typename V>
class ice_engine::FutureRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void DefaultDestructor(T *memory)
static inline T &assignmentOperator(const T &other, T *v)
static inline V get(T *v)
static inline bool valid(T *v)
static inline void wait(T *v)
static inline std::future_status wait_for(const std::chrono::seconds &s, T *v)
class ice_engine::GameEngine : public ice_engine::graphics::IEventListener, public ice_engine::networking::IEventListener, public ice_engine::scripting::IDebugEventListener
#include <GameEngine.hpp>

Public Functions

GameEngine(std::unique_ptr<utilities::Properties> properties, std::unique_ptr<fs::IFileSystem> fileSystem, std::unique_ptr<ice_engine::IPluginManager> pluginManager, std::unique_ptr<ice_engine::logger::ILogger> logger)
GameEngine(std::unique_ptr<utilities::Properties> properties, std::unique_ptr<fs::IFileSystem> fileSystem, std::unique_ptr<ice_engine::logger::ILogger> logger, std::unique_ptr<ice_engine::IPluginManager> pluginManager, std::unique_ptr<graphics::IGraphicsEngineFactory> graphicsEngineFactory, std::unique_ptr<ITerrainFactory> terrainFactory)
virtual ~GameEngine()
void run()
const EngineStatistics &getEngineStatistics() const
void setIGameInstance(void *object)
void setBootstrapScript(const std::string &filename)
audio::IAudioEngine *audioEngine() const
graphics::IGraphicsEngine *graphicsEngine() const
physics::IPhysicsEngine *physicsEngine() const
scripting::IScriptingEngine *scriptingEngine() const
IDebugRenderer *debugRenderer() const
pathfinding::IPathfindingEngine *pathfindingEngine() const
IThreadPool *backgroundThreadPool() const
IThreadPool *foregroundThreadPool() const
IOpenGlLoader *openGlLoader() const
inline IOpenGlLoader *foregroundGraphicsThreadPool() const
logger::ILogger *logger() const
fs::IFileSystem *fileSystem() const
inline ResourceCache &resourceCache()
inline ResourceHandleCache &resourceHandleCache()
template<typename T>
inline ResourceManager<T> &resourceManager()
template<typename T>
inline EngineResourceManager<T> &engineResourceManager()
graphics::gui::IGui *createGui(const std::string &name)
void destroyGui(const graphics::gui::IGui *gui)
void setCallback(graphics::gui::IButton *button, void *object)
void setOnChangeCallback(graphics::gui::ITextField *textField, void *object)
void setOnChangeCallback(graphics::gui::ITextArea *textArea, void *object)
void setCallback(graphics::gui::IMenuItem *menuItem, void *object)
void setCallback(graphics::gui::IComboBox *comboBox, void *object)
void setCallback(graphics::gui::ITreeView *treeView, void *object)
Audio *loadAudio(const std::string &name, const std::string &filename)
std::shared_future<Audio*> loadAudioAsync(const std::string &name, const std::string &filename)
inline IImage *createImage(const std::string &name, const std::vector<byte> &data, const uint32 width, const uint32 height, const IImage::Format format)
IImage *loadImage(const std::string &name, const std::string &filename)
std::shared_future<IImage*> loadImageAsync(const std::string &name, const std::string &filename)
Model *loadModel(const std::string &name, const std::string &filename)
std::shared_future<Model*> loadModelAsync(const std::string &name, const std::string &filename)
Model *importModel(const std::string &name, const std::string &filename)
std::shared_future<Model*> importModelAsync(const std::string &name, const std::string &filename)
void unloadAudio(const std::string &name)
void unloadImage(const std::string &name)
void unloadModel(const std::string &name)
Audio *getAudio(const std::string &name) const
IImage *getImage(const std::string &name) const
Model *getModel(const std::string &name) const
ModelHandle loadStaticModel(const Model *model)
std::shared_future<ModelHandle> loadStaticModelAsync(const Model *model)
graphics::RenderableHandle createRenderable(const graphics::RenderSceneHandle &renderSceneHandle, const ModelHandle &modelHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f))
graphics::RenderableHandle createRenderable(const graphics::RenderSceneHandle &renderSceneHandle, const graphics::MeshHandle &meshHandle, const graphics::TextureHandle &textureHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f))
graphics::VertexShaderHandle createVertexShader(const std::string &name, const std::string &filename)
std::shared_future<graphics::VertexShaderHandle> createVertexShaderAsync(const std::string &name, const std::string &filename)
graphics::VertexShaderHandle createVertexShaderFromSource(const std::string &name, const std::string &data)
std::shared_future<graphics::VertexShaderHandle> createVertexShaderFromSourceAsync(const std::string &name, const std::string &data)
graphics::FragmentShaderHandle createFragmentShader(const std::string &name, const std::string &filename)
std::shared_future<graphics::FragmentShaderHandle> createFragmentShaderAsync(const std::string &name, const std::string &filename)
graphics::FragmentShaderHandle createFragmentShaderFromSource(const std::string &name, const std::string &data)
std::shared_future<graphics::FragmentShaderHandle> createFragmentShaderFromSourceAsync(const std::string &name, const std::string &data)
graphics::VertexShaderHandle getVertexShader(const std::string &name) const
graphics::FragmentShaderHandle getFragmentShader(const std::string &name) const
void destroyShader(const std::string &name)
void destroyShader(const graphics::VertexShaderHandle &shaderHandle)
void destroyShader(const graphics::FragmentShaderHandle &shaderHandle)
graphics::ShaderProgramHandle createShaderProgram(const std::string &name, const graphics::VertexShaderHandle &vertexShaderHandle, const graphics::FragmentShaderHandle &fragmentShaderHandle)
std::shared_future<graphics::ShaderProgramHandle> createShaderProgramAsync(const std::string &name, const graphics::VertexShaderHandle &vertexShaderHandle, const graphics::FragmentShaderHandle &fragmentShaderHandle)
graphics::ShaderProgramHandle getShaderProgram(const std::string &name) const
void destroyShaderProgram(const std::string &name)
void destroyShaderProgram(const graphics::ShaderProgramHandle &shaderProgramHandle)
Scene *createScene(const std::string &name, const std::vector<std::string> &scriptData = {}, const std::string &initializationFunctionName = "")
Scene *createScene(const std::string &name, const scripting::ModuleHandle, const std::string &initializationFunctionName = "")
void destroyScene(const std::string &name)
void destroyScene(const Scene *scene)
Scene *getScene(const std::string &name) const
std::vector<Scene*> getAllScenes() const
inline void addPreSerializeCallback(std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)> callback)
inline void addPostSerializeCallback(std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)> callback)
inline void addPreDeserializeCallback(std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const unsigned int)> callback)
inline void addPostDeserializeCallback(std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const std::unordered_map<physics::CollisionShapeHandle, physics::CollisionShapeHandle>&, const std::unordered_map<ModelHandle, ModelHandle>&, const std::unordered_map<graphics::MeshHandle, graphics::MeshHandle>&, const std::unordered_map<graphics::TextureHandle, graphics::TextureHandle>&, const std::unordered_map<SkeletonHandle, SkeletonHandle>&, const std::unordered_map<AnimationHandle, AnimationHandle>&, const std::unordered_map<graphics::TerrainHandle, graphics::TerrainHandle>&, const std::unordered_map<std::string, pathfinding::PolygonMeshHandle>&, const std::unordered_map<pathfinding::NavigationMeshHandle, pathfinding::NavigationMeshHandle>&, const std::unordered_map<scripting::ScriptObjectHandle, std::string>&, const std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle>&, const unsigned int)> callback)
void testSerialize()
void addWindowEventListener(IWindowEventListener *windowEventListener)
void addKeyboardEventListener(IKeyboardEventListener *keyboardEventListener)
void addTextInputEventListener(ITextInputEventListener *textInputEventListener)
void addMouseMotionEventListener(IMouseMotionEventListener *mouseMotionEventListener)
void addMouseButtonEventListener(IMouseButtonEventListener *mouseButtonEventListener)
void addMouseWheelEventListener(IMouseWheelEventListener *mouseWheelEventListener)
void removeWindowEventListener(IWindowEventListener *windowEventListener)
void removeKeyboardEventListener(IKeyboardEventListener *keyboardEventListener)
void removeTextInputEventListener(ITextInputEventListener *textInputEventListener)
void removeMouseMotionEventListener(IMouseMotionEventListener *mouseMotionEventListener)
void removeMouseButtonEventListener(IMouseButtonEventListener *mouseButtonEventListener)
void removeMouseWheelEventListener(IMouseWheelEventListener *mouseWheelEventListener)
void addWindowEventListener(void *windowEventListener)
void addKeyboardEventListener(void *keyboardEventListener)
void addTextInputEventListener(void *textInputEventListener)
void addMouseMotionEventListener(void *mouseMotionEventListener)
void addMouseButtonEventListener(void *mouseButtonEventListener)
void addMouseWheelEventListener(void *mouseWheelEventListener)
void removeWindowEventListener(void *windowEventListener)
void removeKeyboardEventListener(void *keyboardEventListener)
void removeTextInputEventListener(void *textInputEventListener)
void removeMouseMotionEventListener(void *mouseMotionEventListener)
void removeMouseButtonEventListener(void *mouseButtonEventListener)
void removeMouseWheelEventListener(void *mouseWheelEventListener)
void addConnectEventListener(IConnectEventListener *connectEventListener)
void addDisconnectEventListener(IDisconnectEventListener *disconnectEventListener)
void addMessageEventListener(IMessageEventListener *messageEventListener)
void removeConnectEventListener(IConnectEventListener *connectEventListener)
void removeDisconnectEventListener(IDisconnectEventListener *disconnectEventListener)
void removeMessageEventListener(IMessageEventListener *messageEventListener)
void addConnectEventListener(void *connectEventListener)
void addDisconnectEventListener(void *disconnectEventListener)
void addMessageEventListener(void *messageEventListener)
void removeConnectEventListener(void *connectEventListener)
void removeDisconnectEventListener(void *disconnectEventListener)
void removeMessageEventListener(void *messageEventListener)
void addScriptingEngineDebugHandler(IScriptingEngineDebugHandler *handler)
void removeScriptingEngineDebugHandler(const IScriptingEngineDebugHandler *handler)
void addScriptingEngineDebugHandler(void *object)
void removeScriptingEngineDebugHandler(const void *object)
std::shared_future<void> postWorkToBackgroundThreadPool(void *object)
std::shared_future<void> postWorkToForegroundThreadPool(void *object)
std::shared_future<void> postWorkToOpenGlWorker(void *object)
virtual bool processEvent(const graphics::Event &event) override
virtual bool processEvent(const networking::ConnectEvent &event) override
virtual bool processEvent(const networking::DisconnectEvent &event) override
virtual bool processEvent(const networking::MessageEvent &event) override
inline physics::CollisionShapeHandle createStaticBoxShape(const std::string &name, const glm::vec3 &dimensions)
template<typename ...Args>
inline physics::CollisionShapeHandle createStaticBoxShape(const std::string &name, const Args... args)
inline physics::CollisionShapeHandle createStaticSphereShape(const std::string &name, const float32 radius)
template<typename ...Args>
inline physics::CollisionShapeHandle createStaticSphereShape(const std::string &name, const Args... args)
inline physics::CollisionShapeHandle createStaticPlaneShape(const std::string &name, const glm::vec3 &planeNormal, const float32 planeConstant)
template<typename ...Args>
inline physics::CollisionShapeHandle createStaticPlaneShape(const std::string &name, const Args... args)
template<typename ...Args>
inline physics::CollisionShapeHandle createStaticTerrainShape(const std::string &name, const Args... args)
inline physics::CollisionShapeHandle createStaticTerrainShape(const std::string &name, const Heightfield &heightfield)
inline void destroyStaticShape(const std::string &name)
inline void destroyAllStaticShapes()
inline physics::CollisionShapeHandle getStaticShape(const std::string &name) const
inline ModelHandle createStaticModel(const std::string &name, const Model &model)
inline void destroyStaticModel(const std::string &name)
inline void destroyAllStaticModels()
inline ModelHandle getStaticModel(const std::string &name) const
inline SkeletonHandle createSkeleton(const std::string &name, const Skeleton &skeleton)
void animateSkeleton(std::vector<glm::mat4> &transformations, const std::chrono::duration<float32> runningTime, const graphics::MeshHandle &meshHandle, const AnimationHandle &animationHandle, const SkeletonHandle &skeletonHandle)
void animateSkeleton(std::vector<glm::mat4> &transformations, const std::chrono::duration<float32> runningTime, const uint32 startFrame, const uint32 endFrame, const graphics::MeshHandle &meshHandle, const AnimationHandle &animationHandle, const SkeletonHandle &skeletonHandle)
inline void destroySkeleton(const std::string &name)
inline void destroyAllSkeletons()
inline SkeletonHandle getSkeleton(const std::string &name) const
inline void createSkeleton(const graphics::MeshHandle &meshHandle, const graphics::ISkeleton &skeleton)
inline AnimationHandle createAnimation(const std::string &name, const Animation &animation)
inline void destroyAnimation(const std::string &name)
inline void destroyAllAnimations()
inline AnimationHandle getAnimation(const std::string &name) const
inline graphics::MeshHandle createStaticMesh(const std::string &name, const Mesh &mesh)
inline void destroyStaticMesh(const std::string &name)
inline void destroyAllStaticMeshes()
inline graphics::MeshHandle getStaticMesh(const std::string &name) const
inline uint32 getBoneId(const graphics::MeshHandle meshHandle, const std::string &name) const
inline graphics::TextureHandle createTexture(const std::string &name, const Texture &texture)
inline void destroyTexture(const std::string &name)
inline void destroyAllTextures()
inline graphics::TextureHandle getTexture(const std::string &name) const
inline graphics::TerrainHandle createStaticTerrain(const std::string &name, const HeightMap &heightMap, const SplatMap &splatMap, const DisplacementMap &displacementMap)
inline void destroyStaticTerrain(const std::string &name)
inline void destroyAllStaticTerrains()
inline graphics::TerrainHandle getStaticTerrain(const std::string &name) const
inline graphics::SkyboxHandle createStaticSkybox(const std::string &name, const IImage &back, const IImage &down, const IImage &front, const IImage &left, const IImage &right, const IImage &up)
inline void destroyStaticSkybox(const std::string &name)
inline void destroyAllStaticSkyboxes()
inline graphics::SkyboxHandle getStaticSkybox(const std::string &name) const
inline audio::SoundHandle createSound(const std::string &name, const Audio &audio)
inline void destroySound(const std::string &name)
inline void destroyAllSound()
inline audio::SoundHandle getSound(const std::string &name) const
template<typename ...Args>
inline pathfinding::PolygonMeshHandle createPolygonMesh(const std::string &name, const Args... args)
inline pathfinding::PolygonMeshHandle createPolygonMesh(const std::string &name, const PathfindingTerrain &pathfindingTerrain, const pathfinding::PolygonMeshConfig &polygonMeshConfig)
inline void destroyPolygonMesh(const std::string &name)
inline pathfinding::PolygonMeshHandle getPolygonMesh(const std::string &name) const
inline pathfinding::NavigationMeshHandle createNavigationMesh(const std::string &name, const pathfinding::PolygonMeshHandle &polygonMeshHandle, const pathfinding::NavigationMeshConfig &navigationMeshConfig)
template<typename ...Args>
inline pathfinding::NavigationMeshHandle createNavigationMesh(const std::string &name, const Args... args)
inline void destroyNavigationMesh(const std::string &name)
inline pathfinding::NavigationMeshHandle getNavigationMesh(const std::string &name) const

Private Functions

void tick(const float32 delta)
void render()
void initialize()
void destroy()
void exit()
void handleEvents()
void internalDestroyGui(const graphics::gui::IGui *gui)
void test()
void initializeLoggingSubSystem()
void initializeFileSystemSubSystem()
void initializePhysicsSubSystem()
void initializePathfindingSubSystem()
void initializeGraphicsSubSystem()
void initializeAudioSubSystem()
void initializeNetworkingSubSystem()
void initializeInputSubSystem()
void initializeScriptingSubSystem()
void initializeThreadingSubSystem()
void initializeTerrainSubSystem()
void initializeDataStoreSubSystem()
void initializeEntitySubSystem()
void initializeModuleSubSystem()
void initializeResourceManagers()
void initializeEngineResourceManagers()
void internalInitializeScene(std::unique_ptr<Scene> &scene)
virtual void processEvent(const scripting::DebugEvent &event) override
scripting::ExecutionContextHandle acquireTemporaryExecutionContext()
void releaseTemporaryExecutionContext(const scripting::ExecutionContextHandle &executionContextHandle)

Private Members

std::unique_ptr<utilities::Properties> properties_
std::unique_ptr<logger::ILogger> logger_
std::unique_ptr<fs::IFileSystem> fileSystem_
std::unique_ptr<ice_engine::IPluginManager> pluginManager_
std::vector<std::unique_ptr<IScriptingEngineBinding>> scriptingEngineBindings_
std::vector<std::unique_ptr<IModule>> modules_
std::unique_ptr<graphics::IGraphicsEngineFactory> graphicsEngineFactory_
std::unique_ptr<graphics::IGraphicsEngine> graphicsEngine_
std::vector<std::unique_ptr<graphics::gui::IGui>> guis_
std::mutex guisCreatedMutex_
std::vector<std::unique_ptr<graphics::gui::IGui>> guisCreated_
std::mutex guisDeletedMutex_
std::vector<const graphics::gui::IGui*> guisDeleted_
std::unique_ptr<ITerrainFactory> terrainFactory_
std::unique_ptr<IDebugRenderer> debugRenderer_
std::unique_ptr<audio::IAudioEngineFactory> audioEngineFactory_
std::unique_ptr<audio::IAudioEngine> audioEngine_
std::unique_ptr<networking::INetworkingEngineFactory> networkingEngineFactory_
std::unique_ptr<networking::INetworkingEngine> networkingEngine_
std::unique_ptr<physics::IPhysicsEngineFactory> physicsEngineFactory_
std::unique_ptr<physics::IPhysicsEngine> physicsEngine_
std::unique_ptr<pathfinding::IPathfindingEngineFactory> pathfindingEngineFactory_
std::unique_ptr<pathfinding::IPathfindingEngine> pathfindingEngine_
std::unique_ptr<scripting::IScriptingEngine> scriptingEngine_
std::vector<IWindowEventListener*> windowEventListeners_
std::vector<IKeyboardEventListener*> keyboardEventListeners_
std::vector<ITextInputEventListener*> textInputEventListeners_
std::vector<IMouseMotionEventListener*> mouseMotionEventListeners_
std::vector<IMouseButtonEventListener*> mouseButtonEventListeners_
std::vector<IMouseWheelEventListener*> mouseWheelEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptWindowEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptKeyboardEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptTextInputEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptMouseMotionEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptMouseButtonEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptMouseWheelEventListeners_
std::vector<IConnectEventListener*> connectEventListeners_
std::vector<IDisconnectEventListener*> disconnectEventListeners_
std::vector<IMessageEventListener*> messageEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptConnectEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptDisconnectEventListeners_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptMessageEventListeners_
std::vector<IScriptingEngineDebugHandler*> scriptingEngineDebugHandlers_
std::vector<std::pair<scripting::ScriptObjectHandle, scripting::ScriptObjectFunctionHandle>> scriptScriptingEngineDebugHandlers_
std::unordered_map<graphics::MeshHandle, Mesh> meshes_
handles::HandleVector<Skeleton, SkeletonHandle> skeletons_
handles::HandleVector<Animation, AnimationHandle> animations_
std::vector<std::unique_ptr<Scene>> scenes_
std::unordered_map<std::string, graphics::VertexShaderHandle> vertexShaderHandles_
std::unordered_map<std::string, graphics::FragmentShaderHandle> fragmentShaderHandles_
std::unordered_map<std::string, graphics::ShaderProgramHandle> shaderProgramHandles_
scripting::ModuleHandle bootstrapModuleHandle_
scripting::ScriptObjectHandle scriptObjectHandle_
ResourceCache resourceCache_
ResourceHandleCache resourceHandleCache_
std::map<std::type_index, std::unique_ptr<BaseResourceManager>> resourceManagers_
std::map<std::type_index, std::unique_ptr<BaseEngineResourceManager>> engineResourceManagers_
bool running_
EngineStatistics engineStatistics_
std::string bootstrapScriptName_
std::mutex temporaryExecutionContextMutex_
std::queue<scripting::ExecutionContextHandle> temporaryExecutionContexts_
scripting::ExecutionContextHandle debuggerExecutionContext_
std::vector<std::pair<graphics::MeshHandle, graphics::TextureHandle>> staticModels_
std::vector<graphics::TerrainHandle> staticTerrain_
std::vector<std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)>> preSerializeCallbacks_
std::vector<std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)>> postSerializeCallbacks_
std::vector<std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const unsigned int)>> preDeserializeCallbacks_
std::vector<std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const std::unordered_map<physics::CollisionShapeHandle, physics::CollisionShapeHandle>&, const std::unordered_map<ModelHandle, ModelHandle>&, const std::unordered_map<graphics::MeshHandle, graphics::MeshHandle>&, const std::unordered_map<graphics::TextureHandle, graphics::TextureHandle>&, const std::unordered_map<SkeletonHandle, SkeletonHandle>&, const std::unordered_map<AnimationHandle, AnimationHandle>&, const std::unordered_map<graphics::TerrainHandle, graphics::TerrainHandle>&, const std::unordered_map<std::string, pathfinding::PolygonMeshHandle>&, const std::unordered_map<pathfinding::NavigationMeshHandle, pathfinding::NavigationMeshHandle>&, const std::unordered_map<scripting::ScriptObjectHandle, std::string>&, const std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle>&, const unsigned int)>> postDeserializeCallbacks_
std::unique_ptr<ThreadPool> backgroundThreadPool_
std::unique_ptr<ThreadPool> foregroundThreadPool_
std::unique_ptr<OpenGlLoader> openGlLoader_
std::unique_ptr<OpenGlLoader> forgroundGraphicsThreadPool_

Private Static Attributes

static float32 rotationX
static float32 rotationY
static int32 mousePosX
static int32 mousePosY
class ice_engine::GameFactory
#include <GameFactory.hpp>

Public Static Functions

static std::unique_ptr<GameEngine> createGameEngine(std::unique_ptr<utilities::Properties> properties, std::unique_ptr<fs::IFileSystem> fileSystem, std::unique_ptr<ice_engine::IPluginManager> pluginManager, std::unique_ptr<ice_engine::logger::ILogger> logger)

Private Functions

GameFactory()
GameFactory(const GameFactory &other)
virtual ~GameFactory()
struct ice_engine::networking::GenericEvent
#include <Event.hpp>

Subclassed by ice_engine::networking::ConnectEvent, ice_engine::networking::DisconnectEvent, ice_engine::networking::MessageEvent

Public Members

uint32 type
uint32 timestamp
ServerHandle serverHandle
ClientHandle clientHandle
RemoteConnectionHandle remoteConnectionHandle
struct ice_engine::graphics::GenericEvent
#include <Event.hpp>

Public Members

uint32 type
struct ice_engine::ecs::GhostObjectComponent
#include <GhostObjectComponent.hpp>

Public Functions

GhostObjectComponent() = default
inline GhostObjectComponent(physics::CollisionShapeHandle collisionShapeHandle)
inline GhostObjectComponent(physics::CollisionShapeHandle collisionShapeHandle, physics::GhostObjectHandle ghostObjectHandle)

Public Members

physics::CollisionShapeHandle collisionShapeHandle
physics::GhostObjectHandle ghostObjectHandle

Public Static Functions

static inline uint8 id()
class ice_engine::physics::GhostObjectHandle : public ice_engine::handles::PointerHandle<GhostObjectHandle>
#include <GhostObjectHandle.hpp>

Public Static Attributes

static const GhostObjectHandle INVALID
struct ice_engine::ecs::GraphicsComponent
#include <GraphicsComponent.hpp>

Public Functions

GraphicsComponent() = default
inline GraphicsComponent(graphics::MeshHandle meshHandle)
inline GraphicsComponent(graphics::MeshHandle meshHandle, graphics::TextureHandle textureHandle)
inline GraphicsComponent(graphics::MeshHandle meshHandle, graphics::TextureHandle textureHandle, glm::vec3 scale)
inline GraphicsComponent(graphics::MeshHandle meshHandle, graphics::TextureHandle textureHandle, glm::vec3 scale, graphics::RenderableHandle renderableHandle)

Public Members

graphics::MeshHandle meshHandle
graphics::TextureHandle textureHandle
glm::vec3 scale = glm::vec3(1.0f, 1.0f, 1.0f)
graphics::RenderableHandle renderableHandle

Public Static Functions

static inline uint8 id()
class ice_engine::GraphicsEngineBindingDelegate
#include <GraphicsEngineBindingDelegate.hpp>

Public Functions

GraphicsEngineBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, graphics::IGraphicsEngine *graphicsEngine)
~GraphicsEngineBindingDelegate() = default
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
graphics::IGraphicsEngine *graphicsEngine_
template<typename T>
class ice_engine::GraphicsEngineResourceManager
#include <GraphicsEngineResourceManager.hpp>

Public Functions

inline explicit GraphicsEngineResourceManager(graphics::IGraphicsEngine *graphicsEngine)
GraphicsEngineResourceManager(const GraphicsEngineResourceManager&) = delete
GraphicsEngineResourceManager &operator=(const GraphicsEngineResourceManager&) = delete
GraphicsEngineResourceManager(GraphicsEngineResourceManager&&) = default
GraphicsEngineResourceManager &operator=(GraphicsEngineResourceManager&&) noexcept = default

Protected Functions

virtual ~GraphicsEngineResourceManager() = default
inline void _checkHandleValidity(const T &resource)
inline void _destroy(const T &resource)

Protected Attributes

graphics::IGraphicsEngine *graphicsEngine_
struct GraphicsException : public virtual ice_engine::Exception
#include <GraphicsException.hpp>
class ice_engine::graphics::GraphicsFactory
#include <GraphicsFactory.hpp>

Public Static Functions

static std::unique_ptr<IGraphicsEngine> createGraphicsEngine(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)

Private Functions

GraphicsFactory()
GraphicsFactory(const GraphicsFactory &other)
virtual ~GraphicsFactory()
struct ice_engine::ecs::GraphicsSkyboxComponent
#include <GraphicsSkyboxComponent.hpp>

Public Functions

GraphicsSkyboxComponent() = default
inline GraphicsSkyboxComponent(graphics::SkyboxHandle skyboxHandle)
inline GraphicsSkyboxComponent(graphics::SkyboxHandle skyboxHandle, graphics::SkyboxRenderableHandle skyboxRenderableHandle)

Public Members

graphics::SkyboxHandle skyboxHandle
graphics::SkyboxRenderableHandle skyboxRenderableHandle

Public Static Functions

static inline uint8 id()
struct ice_engine::ecs::GraphicsTerrainComponent
#include <GraphicsTerrainComponent.hpp>

Public Functions

GraphicsTerrainComponent() = default
inline GraphicsTerrainComponent(graphics::TerrainHandle terrainHandle)
inline GraphicsTerrainComponent(graphics::TerrainHandle terrainHandle, graphics::TerrainRenderableHandle terrainRenderableHandle)

Public Members

graphics::TerrainHandle terrainHandle
graphics::TerrainRenderableHandle terrainRenderableHandle

Public Static Functions

static inline uint8 id()
template<typename T>
class ice_engine::handles::Handle : private ice_engine::handles::BaseHandle
#include <Handle.hpp>

Subclassed by ice_engine::graphics::MeshHandle

Public Functions

Handle() = default
inline Handle(const Handle &other)
inline Handle(Handle &&other) noexcept
inline explicit Handle(uint64 id)
inline Handle(uint32 index, uint32 version)
inline uint64 id() const
inline uint32 index() const
inline uint32 version() const
inline void invalidate()
inline bool valid() const
inline explicit operator bool() const
Handle &operator=(const Handle &other) = default
Handle &operator=(Handle &&other) noexcept = default
inline bool operator==(const T &other) const
inline bool operator!=(const T &other) const
inline bool operator<(const T &other) const
inline bool operator>(const T &other) const
inline bool operator<=(const T &other) const
inline bool operator>=(const T &other) const

Public Static Attributes

static constexpr uint64 INVALID = 0

Protected Functions

~Handle() = default

Private Members

uint64 id_ = INVALID

Friends

inline friend friend std::ostream & operator<< (std::ostream &os, const T &other)
template<typename T, typename HandleType>
struct ice_engine::handles::HandleData
#include <HandleVector.hpp>

Public Members

HandleType handle
T *pointer
template<typename T>
class ice_engine::HandleRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void InitConstructor(T *memory, const uint64 id)
static inline void CopyConstructor(T *memory, const T &other)
static inline void DefaultDestructor(T *memory)
template<typename T, typename HandleType>
class ice_engine::handles::HandleVector
#include <HandleVector.hpp>

Public Types

typedef HandleVectorIterator<T, HandleType> iterator
typedef HandleVectorConstIterator<T, HandleType> const_iterator
typedef ptrdiff_t difference_type
typedef size_t size_type
typedef T value_type
typedef T *pointer
typedef T &reference

Public Functions

HandleVector() = default
template<typename ...Args>
inline HandleType create(Args&&... args)
inline void destroy(const HandleType &handle)
inline bool valid(const HandleType &handle) const
inline HandleType handle(const uint64 id) const
inline HandleType handle(const uint32 index) const
inline size_t size() const
inline void clear()
inline T *get(const HandleType &handle) const
inline T &operator[](const HandleType &handle) const
inline T &operator[](const uint32 index) const
inline iterator begin()
inline iterator end()
inline const_iterator begin() const
inline const_iterator end() const
inline const_iterator cbegin() const
inline const_iterator cend() const

Private Functions

inline size_t findIndexOfFirstValidHandle() const
inline bool valid(const uint32 index) const
inline T *get(const uint32 index) const

Private Members

memory::MemoryPool<T> memoryPool_
std::vector<HandleData<T, HandleType>> handleData_
std::vector<uint32> freeList_
uint32 currentVersion_ = 1

Friends

friend class HandleVectorIterator< T, HandleType >
friend class HandleVectorConstIterator< T, HandleType >
template<typename T, typename HandleType>
class ice_engine::handles::HandleVectorConstIterator
#include <HandleVector.hpp>

Public Functions

inline HandleVectorConstIterator(const HandleVector<T, HandleType> &handleManager, size_t index)
inline bool operator==(HandleVectorConstIterator other) const
inline bool operator!=(HandleVectorConstIterator other) const
inline const T &operator*() const
inline const T *operator->() const
inline HandleVectorConstIterator<T, HandleType> &operator++()
inline HandleVectorConstIterator<T, HandleType> operator++(int)
inline HandleType handle() const

Private Members

const HandleVector<T, HandleType> &handleManager_
size_t index_ = 0
template<typename T, typename HandleType>
class ice_engine::handles::HandleVectorIterator
#include <HandleVector.hpp>

Public Functions

inline HandleVectorIterator(HandleVector<T, HandleType> &handleManager, size_t index)
inline HandleVectorIterator(const HandleVectorIterator &other)
inline HandleVectorIterator(HandleVectorIterator &&other)
inline bool operator==(HandleVectorIterator other) const
inline bool operator!=(HandleVectorIterator other) const
inline T &operator*() const
inline T *operator->() const
inline HandleVectorIterator<T, HandleType> &operator++()
inline HandleVectorIterator<T, HandleType> operator++(int)
inline HandleType handle() const

Private Members

HandleVector<T, HandleType> &handleManager_
size_t index_ = 0
template<>
struct std::hash<ice_engine::AnimationHandle>
#include <AnimationHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::AnimationHandle &k) const noexcept
template<>
struct std::hash<ice_engine::graphics::MeshHandle>
#include <MeshHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::graphics::MeshHandle &k) const noexcept
template<>
struct std::hash<ice_engine::graphics::SkyboxHandle>
#include <SkyboxHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::graphics::SkyboxHandle &k) const noexcept
template<>
struct std::hash<ice_engine::graphics::TerrainHandle>
#include <TerrainHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::graphics::TerrainHandle &k) const noexcept
template<>
struct std::hash<ice_engine::graphics::TextureHandle>
#include <TextureHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::graphics::TextureHandle &k) const noexcept
template<>
struct std::hash<ice_engine::ModelHandle>
#include <ModelHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::ModelHandle &k) const noexcept
template<>
struct std::hash<ice_engine::networking::ClientHandle>
#include <ClientHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::networking::ClientHandle &k) const noexcept
template<>
struct std::hash<ice_engine::networking::RemoteConnectionHandle>
#include <RemoteConnectionHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::networking::RemoteConnectionHandle &k) const noexcept
template<>
struct std::hash<ice_engine::networking::ServerHandle>
#include <ServerHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::networking::ServerHandle &k) const noexcept
template<>
struct std::hash<ice_engine::pathfinding::AgentHandle>
#include <AgentHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::pathfinding::AgentHandle &k) const noexcept
template<>
struct std::hash<ice_engine::pathfinding::CrowdHandle>
#include <CrowdHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::pathfinding::CrowdHandle &k) const noexcept
template<>
struct std::hash<ice_engine::pathfinding::NavigationMeshHandle>
#include <NavigationMeshHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::pathfinding::NavigationMeshHandle &k) const noexcept
template<>
struct std::hash<ice_engine::pathfinding::ObstacleHandle>
#include <ObstacleHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::pathfinding::ObstacleHandle &k) const noexcept
template<>
struct std::hash<ice_engine::pathfinding::PathfindingSceneHandle>
#include <PathfindingSceneHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::pathfinding::PathfindingSceneHandle &k) const noexcept
template<>
struct std::hash<ice_engine::pathfinding::PolygonMeshHandle>
#include <PolygonMeshHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::pathfinding::PolygonMeshHandle &k) const noexcept
template<>
struct std::hash<ice_engine::physics::CollisionShapeHandle>
#include <CollisionShapeHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::physics::CollisionShapeHandle &k) const noexcept
template<>
struct std::hash<ice_engine::physics::GhostObjectHandle>
#include <GhostObjectHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::physics::GhostObjectHandle &k) const noexcept
template<>
struct std::hash<ice_engine::physics::PhysicsSceneHandle>
#include <PhysicsSceneHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::physics::PhysicsSceneHandle &k) const noexcept
template<>
struct std::hash<ice_engine::physics::RigidBodyObjectHandle>
#include <RigidBodyObjectHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::physics::RigidBodyObjectHandle &k) const noexcept
template<>
struct std::hash<ice_engine::scripting::ExecutionContextHandle>
#include <ExecutionContextHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::scripting::ExecutionContextHandle &k) const noexcept
template<>
struct std::hash<ice_engine::scripting::ModuleHandle>
#include <ModuleHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::scripting::ModuleHandle &k) const noexcept
template<>
struct std::hash<ice_engine::scripting::ScriptFunctionHandle>
#include <ScriptFunctionHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::scripting::ScriptFunctionHandle &k) const noexcept
template<>
struct std::hash<ice_engine::scripting::ScriptHandle>
#include <ScriptHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::scripting::ScriptHandle &k) const noexcept
template<>
struct std::hash<ice_engine::scripting::ScriptObjectFunctionHandle>
#include <ScriptObjectFunctionHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::scripting::ScriptObjectFunctionHandle &k) const noexcept
template<>
struct std::hash<ice_engine::scripting::ScriptObjectHandle>
#include <ScriptObjectHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::scripting::ScriptObjectHandle &k) const noexcept
template<>
struct std::hash<ice_engine::SkeletonHandle>
#include <SkeletonHandle.hpp>

Public Functions

inline std::size_t operator()(const ice_engine::SkeletonHandle &k) const noexcept
class ice_engine::Heightfield : public ice_engine::physics::IHeightfield
#include <Heightfield.hpp>

Public Functions

Heightfield() = default
inline Heightfield(const IImage &image)
virtual ~Heightfield() override = default
inline virtual const std::vector<byte> &data() const override
inline virtual uint32 width() const override
inline virtual uint32 length() const override
inline virtual uint32 height() const override

Private Functions

inline void generateHeightfield(const IImage &image)

Private Members

std::vector<byte> data_
uint32 width_ = 0
uint32 length_ = 0
uint32 height_ = 0
class ice_engine::HeightMap : public ice_engine::graphics::IHeightMap
#include <HeightMap.hpp>

Public Functions

HeightMap() = default
inline HeightMap(const std::vector<byte> &data, const uint32 width, const uint32 height)
inline HeightMap(const IImage &image)
inline HeightMap(const HeightMap &other)
~HeightMap() override = default
inline HeightMap &operator=(const HeightMap &other)
inline byte height(uint32 x, uint32 z) const
inline IImage *image()
inline virtual const graphics::IImage *image() const override

Private Functions

inline IImage::Format parseFormat(const int32 format) const
inline float32 height(const std::vector<byte> &data, const uint32 width, const uint32 height, uint32 x, uint32 z)
inline byte textureCoordinateToRgb(const float32 value)
inline glm::vec3 calculateNormal(const std::vector<byte> &data, const uint32 width, const uint32 height, const uint32 x, const uint32 z)
inline void calculateNormals(std::vector<byte> &data, const uint32 width, const uint32 height)
inline std::unique_ptr<Image> generateFormattedHeightmap(const IImage &image)
inline std::unique_ptr<Image> generateFormattedHeightmap(const std::vector<byte> &imageData, const uint32 width, const uint32 height, const int32 format = IImage::Format::FORMAT_RGB)

Private Members

std::unique_ptr<IImage> image_
class ice_engine::pathfinding::IAgentMotionChangeListener
#include <IAgentMotionChangeListener.hpp>

Subclassed by ice_engine::IceEnginePathfindingAgentMotionChangeListener

Public Functions

inline virtual ~IAgentMotionChangeListener()
virtual void update(const glm::vec3 &position) = 0
class ice_engine::pathfinding::IAgentStateChangeListener
#include <IAgentStateChangeListener.hpp>

Subclassed by ice_engine::IceEnginePathfindingAgentStateChangeListener

Public Functions

inline virtual ~IAgentStateChangeListener()
virtual void update(const AgentState &agentState) = 0
class ice_engine::audio::IAudio
#include <IAudio.hpp>

Subclassed by ice_engine::Audio

Public Types

enum Format

Values:

enumerator FORMAT_UNKNOWN
enumerator FORMAT_AUDIO_S8
enumerator FORMAT_AUDIO_U8
enumerator FORMAT_AUDIO_S16LSB
enumerator FORMAT_AUDIO_S16MSB
enumerator FORMAT_AUDIO_S16SYS
enumerator FORMAT_AUDIO_S16
enumerator FORMAT_AUDIO_U16LSB
enumerator FORMAT_AUDIO_U16MSB
enumerator FORMAT_AUDIO_U16SYS
enumerator FORMAT_AUDIO_U16
enumerator FORMAT_AUDIO_S32LSB
enumerator FORMAT_AUDIO_S32MSB
enumerator FORMAT_AUDIO_S32SYS
enumerator FORMAT_AUDIO_S32
enumerator FORMAT_AUDIO_F32LSB
enumerator FORMAT_AUDIO_F32MSB
enumerator FORMAT_AUDIO_F32SYS
enumerator FORMAT_AUDIO_F32

Public Functions

virtual ~IAudio() = default
virtual const std::vector<uint8> &data() const = 0
virtual uint32 length() const = 0
virtual uint32 frequency() const = 0
virtual uint8 channels() const = 0
virtual uint16 bitsPerSample() const = 0
virtual int32 format() const = 0
class ice_engine::audio::IAudioEngine
#include <IAudioEngine.hpp>

Public Functions

virtual ~IAudioEngine() = default
virtual AudioSceneHandle createAudioScene() = 0
virtual void destroyAudioScene(const AudioSceneHandle &audioSceneHandle) = 0
virtual void tick(const AudioSceneHandle audioSceneHandle, const float32 delta) = 0
virtual void beginRender() = 0
virtual void render(const AudioSceneHandle &audioSceneHandle) = 0
virtual void endRender() = 0
virtual SoundSourceHandle play(const AudioSceneHandle &audioSceneHandle, const SoundHandle &soundHandle, const glm::vec3 &position) = 0
virtual void stop(const AudioSceneHandle &audioSceneHandle, const SoundSourceHandle &soundSourceHandle) = 0
virtual void stopAll(const AudioSceneHandle &audioSceneHandle) = 0
virtual SoundHandle createSound(const IAudio &audio) = 0
virtual void destroy(const SoundHandle soundHandle) = 0
virtual ListenerHandle createListener(const AudioSceneHandle &audioSceneHandle, const glm::vec3 &position) = 0
virtual void setPosition(const AudioSceneHandle &audioSceneHandle, const SoundSourceHandle &soundSourceHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void setPosition(const AudioSceneHandle &audioSceneHandle, const SoundSourceHandle &soundSourceHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const AudioSceneHandle &audioSceneHandle, const SoundSourceHandle &soundSourceHandle) const = 0
virtual void setPosition(const AudioSceneHandle &audioSceneHandle, const ListenerHandle &listenerHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void setPosition(const AudioSceneHandle &audioSceneHandle, const ListenerHandle &listenerHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const AudioSceneHandle &audioSceneHandle, const ListenerHandle &listenerHandle) const = 0
class ice_engine::audio::IAudioEngineFactory
#include <IAudioEngineFactory.hpp>

Public Functions

inline virtual ~IAudioEngineFactory()
virtual std::unique_ptr<IAudioEngine> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger) = 0
class ice_engine::IAudioPlugin : public virtual ice_engine::IPlugin
#include <IAudioPlugin.hpp>

Public Functions

inline virtual ~IAudioPlugin()
virtual std::unique_ptr<audio::IAudioEngineFactory> createFactory() const = 0
class ice_engine::graphics::gui::IButton : public virtual ice_engine::graphics::gui::IComponent
#include <IButton.hpp>

Public Functions

virtual ~IButton() = default
virtual void setLabel(const std::string &label) = 0
virtual const std::string &label() const = 0
virtual void setCallback(std::function<void()> &callback) = 0
class ice_engine::IceEngineMotionChangeListener : public ice_engine::physics::IMotionChangeListener
#include <IceEngineMotionChangeListener.hpp>

Public Functions

IceEngineMotionChangeListener(ecs::Entity entity, Scene *scene)
virtual ~IceEngineMotionChangeListener()
virtual void update(const glm::vec3 &position, const glm::quat &orientation) override

Private Members

ecs::Entity entity_
Scene *scene_
class ice_engine::IceEnginePathfindingAgentMotionChangeListener : public ice_engine::pathfinding::IAgentMotionChangeListener
#include <IceEnginePathfindingAgentMotionChangeListener.hpp>

Public Functions

IceEnginePathfindingAgentMotionChangeListener(ecs::Entity entity, Scene *scene)
virtual ~IceEnginePathfindingAgentMotionChangeListener()
virtual void update(const glm::vec3 &position) override

Private Members

ecs::Entity entity_
Scene *scene_
class ice_engine::IceEnginePathfindingAgentStateChangeListener : public ice_engine::pathfinding::IAgentStateChangeListener
#include <IceEnginePathfindingAgentStateChangeListener.hpp>

Public Functions

IceEnginePathfindingAgentStateChangeListener(ecs::Entity entity)
virtual ~IceEnginePathfindingAgentStateChangeListener()
virtual void update(const pathfinding::AgentState &agentState) override

Private Members

ecs::Entity entity_
class ice_engine::IceEnginePathfindingMovementRequestStateChangeListener : public ice_engine::pathfinding::IMovementRequestStateChangeListener
#include <IceEnginePathfindingMovementRequestStateChangeListener.hpp>

Public Functions

IceEnginePathfindingMovementRequestStateChangeListener(ecs::Entity entity)
virtual ~IceEnginePathfindingMovementRequestStateChangeListener()
virtual void update(const pathfinding::MovementRequestState &movementRequestState) override

Private Members

ecs::Entity entity_
class ice_engine::graphics::gui::IComboBox : public virtual ice_engine::graphics::gui::IComponent
#include <IComboBox.hpp>

Public Functions

virtual ~IComboBox() = default
virtual IComboBoxItem *createItem(const std::string &label) = 0
virtual IComboBoxItem *getItem(const std::string &label) const = 0
virtual void destroy(const IComboBoxItem *comboBoxItem) = 0
virtual void select(IComboBoxItem *comboBoxItem) = 0
virtual void unselect(const IComboBoxItem *comboBoxItem) = 0
virtual bool selected(const IComboBoxItem *comboBoxItem) const = 0
virtual void setCallback(std::function<void(IComboBoxItem*)> &callback) = 0
class ice_engine::graphics::gui::IComboBoxItem
#include <IComboBoxItem.hpp>

Public Functions

virtual ~IComboBoxItem() = default
virtual void setLabel(const std::string &label) = 0
virtual const std::string &label() const = 0
class ice_engine::graphics::gui::IComponent
#include <IComponent.hpp>

Subclassed by ice_engine::graphics::gui::IButton, ice_engine::graphics::gui::IComboBox, ice_engine::graphics::gui::ILabel, ice_engine::graphics::gui::IMainMenuBar, ice_engine::graphics::gui::IMenu, ice_engine::graphics::gui::IMenuBar, ice_engine::graphics::gui::IMenuItem, ice_engine::graphics::gui::IPopupModal, ice_engine::graphics::gui::IRectangle, ice_engine::graphics::gui::ITextArea, ice_engine::graphics::gui::ITextField, ice_engine::graphics::gui::ITreeNode, ice_engine::graphics::gui::ITreeView, ice_engine::graphics::gui::IWindow

Public Functions

virtual ~IComponent() = default
virtual void render() = 0
virtual void tick(const float32 delta) = 0
virtual bool visible() const = 0
virtual void setVisible(const bool visible) = 0
virtual bool disabled() const = 0
virtual void setDisabled(const bool disabled) = 0
virtual void setStyle(const Style &style) = 0
virtual const Style &style() const = 0
virtual void setPosition(const uint32 x, const uint32 y) = 0
virtual glm::ivec2 position() const = 0
virtual void setDimensions(const uint32 with, const uint32 height) = 0
virtual glm::ivec2 dimensions() const = 0
virtual void addComponent(IComponent *component) = 0
virtual void removeComponent(IComponent *component) = 0
virtual void removeAllComponents() = 0
class ice_engine::IConnectEventListener
#include <IConnectEventListener.hpp>

Public Functions

inline virtual ~IConnectEventListener()
virtual bool processEvent(const networking::ConnectEvent &event) = 0
template<typename T>
struct gw::Id
#include <aswrappedcall.h>

Public Functions

template<T fn_ptr> inline AS_NAMESPACE_QUALIFIER asSFuncPtr f (void)
template<T fn_ptr> inline AS_NAMESPACE_QUALIFIER asSFuncPtr of (void)
template<T fn_ptr> inline AS_NAMESPACE_QUALIFIER asSFuncPtr ol (void)
class ice_engine::scripting::IDebugEventListener
#include <IScriptingEngineDebugger.hpp>

Subclassed by ice_engine::GameEngine

Public Functions

virtual ~IDebugEventListener() = default
virtual void processEvent(const DebugEvent &event) = 0
class ice_engine::IDebugRenderer : public virtual ice_engine::physics::IPhysicsDebugRenderer, public virtual ice_engine::pathfinding::IPathfindingDebugRenderer
#include <IDebugRenderer.hpp>

Subclassed by ice_engine::DebugRenderer

Public Functions

~IDebugRenderer() override = default
virtual void pushLine(const glm::vec3 &from, const glm::vec3 &to, const glm::vec3 &color) = 0
virtual void pushLines(const std::vector<std::tuple<glm::vec3, glm::vec3, glm::vec3>> &lineData) = 0
virtual void render() = 0
class ice_engine::IDisconnectEventListener
#include <IDisconnectEventListener.hpp>

Public Functions

inline virtual ~IDisconnectEventListener()
virtual bool processEvent(const networking::DisconnectEvent &event) = 0
class ice_engine::graphics::IDisplacementMap
#include <IDisplacementMap.hpp>

Subclassed by ice_engine::DisplacementMap

Public Functions

inline virtual ~IDisplacementMap()
class ice_engine::networking::IEventListener
#include <IEventListener.hpp>

Subclassed by ice_engine::GameEngine

Public Functions

inline virtual ~IEventListener()
virtual bool processEvent(const ConnectEvent &event) = 0
virtual bool processEvent(const DisconnectEvent &event) = 0
virtual bool processEvent(const MessageEvent &event) = 0
class ice_engine::graphics::IEventListener
#include <IEventListener.hpp>

Subclassed by ice_engine::GameEngine

Public Functions

inline virtual ~IEventListener()
virtual bool processEvent(const Event &event) = 0
class ice_engine::fs::IFile
#include <IFile.hpp>

Subclassed by ice_engine::fs::File

Public Functions

virtual ~IFile() = default
virtual bool isOpen() const = 0
virtual uint64 size() const = 0
virtual bool eof() const = 0
virtual std::string path() const = 0
virtual void close() = 0
virtual void write(const char *data) = 0
virtual void write(const std::string &data) = 0
virtual std::string read(const uint32 length = 256) = 0
virtual std::string readAll() = 0
virtual std::istream &getInputStream() = 0
virtual std::ostream &getOutputStream() = 0
class ice_engine::IFileSerializable
#include <IFileSerializable.hpp>

Public Functions

inline virtual ~IFileSerializable()
virtual void serialize(const std::string &filename) = 0
virtual void deserialize(const std::string &filename) = 0
virtual void serialize(std::ofstream &stream) = 0
virtual void deserialize(std::ifstream &stream) = 0
class ice_engine::fs::IFileSystem
#include <IFileSystem.hpp>

Subclassed by ice_engine::fs::FileSystem

Public Functions

virtual ~IFileSystem() = default
virtual bool exists(const std::string &file) const = 0
virtual bool isDirectory(const std::string &file) const = 0
virtual std::vector<std::string> list(const std::string &directoryName) const = 0
virtual void deleteFile(const std::string &file) const = 0
virtual void makeDirectory(const std::string &directoryName) const = 0
virtual std::string getBasePath(const std::string &filename) const = 0
virtual std::string getDirectorySeperator() const = 0
virtual std::string getTempDirectory() const = 0
virtual std::string getFilename(const std::string &filename) const = 0
virtual std::string getFilenameWithoutExtension(const std::string &filename) const = 0
virtual std::string getCanonicalPath(const std::string &filename) const = 0
virtual std::string readAll(const std::string &file, const bool isBinary = false) const = 0
virtual std::unique_ptr<IFile> open(const std::string &file, int32 flags) const = 0
virtual std::string generateTempFilename() const = 0
class ice_engine::graphics::gui::IGenericComponentContainer
#include <IGenericComponentContainer.hpp>

Subclassed by ice_engine::graphics::gui::IPopupModal, ice_engine::graphics::gui::IWindow

Public Functions

virtual ~IGenericComponentContainer() = default
virtual ILabel *createLabel(const std::string label = std::string()) = 0
virtual ILabel *createLabel(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string label = std::string()) = 0
virtual IButton *createButton(const std::string label = std::string()) = 0
virtual IButton *createButton(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string label = std::string()) = 0
virtual ITextField *createTextField(const std::string text = std::string()) = 0
virtual ITextField *createTextField(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string text = std::string()) = 0
virtual ITextArea *createTextArea(const std::string text = std::string()) = 0
virtual ITextArea *createTextArea(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string text = std::string()) = 0
virtual ITreeView *createTreeView() = 0
virtual IComboBox *createComboBox() = 0
virtual void add(std::unique_ptr<IComponent> component) = 0
virtual void destroy(const ILabel *label) = 0
virtual void destroy(const IButton *button) = 0
virtual void destroy(const ITextField *textField) = 0
virtual void destroy(const ITextArea *textArea) = 0
virtual void destroy(const ITreeView *treeView) = 0
virtual void destroy(const IComboBox *comboBox) = 0
virtual std::unique_ptr<IComponent> remove(const IComponent *component) = 0
class ice_engine::graphics::IGraphicsEngine
#include <IGraphicsEngine.hpp>

Public Functions

virtual ~IGraphicsEngine() = default
virtual void setViewport(const uint32 width, const uint32 height) = 0
virtual glm::uvec2 getViewport() const = 0
virtual glm::mat4 getModelMatrix() const = 0
virtual glm::mat4 getViewMatrix() const = 0
virtual glm::mat4 getProjectionMatrix() const = 0
virtual void beginRender() = 0
virtual void render(const RenderSceneHandle &renderSceneHandle) = 0
virtual void renderLine(const glm::vec3 &from, const glm::vec3 &to, const glm::vec3 &color) = 0
virtual void renderLines(const std::vector<std::tuple<glm::vec3, glm::vec3, glm::vec3>> &lineData) = 0
virtual void endRender() = 0
virtual RenderSceneHandle createRenderScene() = 0
virtual bool valid(const RenderSceneHandle &renderSceneHandle) const = 0
virtual void destroy(const RenderSceneHandle &renderSceneHandle) = 0
virtual CameraHandle createCamera(const glm::vec3 &position, const glm::vec3 &lookAt = glm::vec3(0.0f, 0.0f, 0.0f)) = 0
virtual bool valid(const CameraHandle &cameraHandle) const = 0
virtual void destroy(const CameraHandle &cameraHandle) = 0
virtual PointLightHandle createPointLight(const RenderSceneHandle &renderSceneHandle, const glm::vec3 &position) = 0
virtual bool valid(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle) const = 0
virtual void destroy(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle) = 0
virtual MeshHandle createStaticMesh(const IMesh &mesh) = 0
virtual MeshHandle createDynamicMesh(const IMesh &mesh) = 0
virtual bool valid(const MeshHandle &meshHandle) const = 0
virtual void destroy(const MeshHandle &meshHandle) = 0
virtual SkeletonHandle createSkeleton(const MeshHandle &meshHandle, const ISkeleton &skeleton) = 0
virtual bool valid(const SkeletonHandle &skeletonHandle) const = 0
virtual void destroy(const SkeletonHandle &skeletonHandle) = 0
virtual BonesHandle createBones(const uint32 maxNumberOfBones) = 0
virtual bool valid(const BonesHandle &bonesHandle) const = 0
virtual void destroy(const BonesHandle &bonesHandle) = 0
virtual void attach(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const BonesHandle &bonesHandle) = 0
virtual void detach(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const BonesHandle &bonesHandle) = 0
virtual void attachBoneAttachment(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const BonesHandle &bonesHandle, const glm::ivec4 &boneIds, const glm::vec4 &boneWeights) = 0
virtual void detachBoneAttachment(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle) = 0
virtual TextureHandle createTexture2d(const ITexture &texture) = 0
virtual bool valid(const TextureHandle &textureHandle) const = 0
virtual void destroy(const TextureHandle &textureHandle) = 0
virtual MaterialHandle createMaterial(const IPbrMaterial &pbrMaterial) = 0
virtual bool valid(const MaterialHandle &materialHandle) const = 0
virtual void destroy(const MaterialHandle &materialHandle) = 0
virtual TerrainHandle createStaticTerrain(const IHeightMap &heightMap, const ISplatMap &splatMap, const IDisplacementMap &displacementMap) = 0
virtual bool valid(const TerrainHandle &terrainHandle) const = 0
virtual void destroy(const TerrainHandle &terrainHandle) = 0
virtual SkyboxHandle createStaticSkybox(const IImage &back, const IImage &down, const IImage &front, const IImage &left, const IImage &right, const IImage &up) = 0
virtual bool valid(const SkyboxHandle &skyboxHandle) const = 0
virtual void destroy(const SkyboxHandle &skyboxHandle) = 0
virtual VertexShaderHandle createVertexShader(const std::string &data) = 0
virtual FragmentShaderHandle createFragmentShader(const std::string &data) = 0
virtual TessellationControlShaderHandle createTessellationControlShader(const std::string &data) = 0
virtual TessellationEvaluationShaderHandle createTessellationEvaluationShader(const std::string &data) = 0
virtual bool valid(const VertexShaderHandle &shaderHandle) const = 0
virtual bool valid(const FragmentShaderHandle &shaderHandle) const = 0
virtual bool valid(const TessellationControlShaderHandle &shaderHandle) const = 0
virtual bool valid(const TessellationEvaluationShaderHandle &shaderHandle) const = 0
virtual void destroy(const VertexShaderHandle &shaderHandle) = 0
virtual void destroy(const FragmentShaderHandle &shaderHandle) = 0
virtual void destroy(const TessellationControlShaderHandle &shaderHandle) = 0
virtual void destroy(const TessellationEvaluationShaderHandle &shaderHandle) = 0
virtual ShaderProgramHandle createShaderProgram(const VertexShaderHandle &vertexShaderHandle, const FragmentShaderHandle &fragmentShaderHandle) = 0
virtual ShaderProgramHandle createShaderProgram(const VertexShaderHandle &vertexShaderHandle, const TessellationControlShaderHandle &tessellationControlShaderHandle, const TessellationEvaluationShaderHandle &tessellationEvaluationShaderHandle, const FragmentShaderHandle &fragmentShaderHandle) = 0
virtual bool valid(const ShaderProgramHandle &shaderProgramHandle) const = 0
virtual void destroy(const ShaderProgramHandle &shaderProgramHandle) = 0
virtual RenderableHandle createRenderable(const RenderSceneHandle &renderSceneHandle, const MeshHandle &meshHandle, const TextureHandle &textureHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f), const ShaderProgramHandle &shaderProgramHandle = ShaderProgramHandle()) = 0
virtual RenderableHandle createRenderable(const RenderSceneHandle &renderSceneHandle, const MeshHandle &meshHandle, const MaterialHandle &materialHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f)) = 0
virtual bool valid(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle) const = 0
virtual void destroy(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle) = 0
virtual TerrainRenderableHandle createTerrainRenderable(const RenderSceneHandle &renderSceneHandle, const TerrainHandle &terrainHandle) = 0
virtual bool valid(const RenderSceneHandle &renderSceneHandle, const TerrainRenderableHandle &terrainRenderableHandle) const = 0
virtual void destroy(const RenderSceneHandle &renderSceneHandle, const TerrainRenderableHandle &terrainRenderableHandle) = 0
virtual SkyboxRenderableHandle createSkyboxRenderable(const RenderSceneHandle &renderSceneHandle, const SkyboxHandle &skyboxHandle) = 0
virtual bool valid(const RenderSceneHandle &renderSceneHandle, const SkyboxRenderableHandle &skyboxRenderableHandle) const = 0
virtual void destroy(const RenderSceneHandle &renderSceneHandle, const SkyboxRenderableHandle &skyboxRenderableHandle) = 0
virtual void rotate(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const glm::quat &quaternion, const TransformSpace &relativeTo = TransformSpace::TS_LOCAL) = 0
virtual void rotate(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const float32 degrees, const glm::vec3 &axis, const TransformSpace &relativeTo = TransformSpace::TS_LOCAL) = 0
virtual void rotate(const CameraHandle &cameraHandle, const glm::quat &quaternion, const TransformSpace &relativeTo = TransformSpace::TS_LOCAL) = 0
virtual void rotate(const CameraHandle &cameraHandle, const float32 degrees, const glm::vec3 &axis, const TransformSpace &relativeTo = TransformSpace::TS_LOCAL) = 0
virtual void rotation(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const glm::quat &quaternion) = 0
virtual void rotation(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const float32 degrees, const glm::vec3 &axis) = 0
virtual glm::quat rotation(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle) const = 0
virtual void rotation(const CameraHandle &cameraHandle, const glm::quat &quaternion) = 0
virtual void rotation(const CameraHandle &cameraHandle, const float32 degrees, const glm::vec3 &axis) = 0
virtual glm::quat rotation(const CameraHandle &cameraHandle) const = 0
virtual void translate(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void translate(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const glm::vec3 &trans) = 0
virtual void translate(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void translate(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle, const glm::vec3 &trans) = 0
virtual void translate(const CameraHandle &cameraHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void translate(const CameraHandle &cameraHandle, const glm::vec3 &trans) = 0
virtual void scale(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void scale(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const glm::vec3 &scale) = 0
virtual void scale(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const float32 scale) = 0
virtual glm::vec3 scale(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle) const = 0
virtual void position(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void position(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle) const = 0
virtual void position(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void position(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const RenderSceneHandle &renderSceneHandle, const PointLightHandle &pointLightHandle) const = 0
virtual void position(const CameraHandle &cameraHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void position(const CameraHandle &cameraHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const CameraHandle &cameraHandle) const = 0
virtual void lookAt(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const glm::vec3 &lookAt) = 0
virtual void lookAt(const CameraHandle &cameraHandle, const glm::vec3 &lookAt) = 0
virtual void assign(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const SkeletonHandle &skeletonHandle) = 0
virtual void update(const RenderSceneHandle &renderSceneHandle, const RenderableHandle &renderableHandle, const BonesHandle &bonesHandle, const std::vector<glm::mat4> &transformations) = 0
virtual void setMouseRelativeMode(const bool enabled) = 0
virtual void setWindowGrab(const bool enabled) = 0
virtual bool cursorVisible() const = 0
virtual void setCursorVisible(const bool visible) = 0
virtual void processEvents() = 0
virtual void addEventListener(IEventListener *eventListener) = 0
virtual void removeEventListener(IEventListener *eventListener) = 0
class ice_engine::graphics::IGraphicsEngineFactory
#include <IGraphicsEngineFactory.hpp>

Public Functions

virtual ~IGraphicsEngineFactory() = default
virtual std::unique_ptr<IGraphicsEngine> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger) = 0
class ice_engine::IGraphicsPlugin : public virtual ice_engine::IPlugin
#include <IGraphicsPlugin.hpp>

Public Functions

virtual ~IGraphicsPlugin() = default
virtual std::unique_ptr<graphics::IGraphicsEngineFactory> createFactory() const = 0
class ice_engine::graphics::gui::IGui
#include <IGui.hpp>

Public Functions

virtual ~IGui() = default
virtual void setViewport(const uint32 width, const uint32 height) = 0
virtual void render() = 0
virtual void tick(const float32 delta) = 0
virtual bool visible() const = 0
virtual void setVisible(const bool visible) = 0
virtual void setStyle(const Style &style) = 0
virtual const Style &style() const = 0
virtual IWindow *createWindow(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string title = std::string()) = 0
virtual IWindow *createWindow(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const uint32 flags, const std::string title = std::string()) = 0
virtual IMainMenuBar *createMainMenuBar() = 0
virtual void destroyMainMenuBar() = 0
virtual IPopupModal *createPopupModal(const std::string &title) = 0
virtual void destroy(const IWindow *window) = 0
virtual void destroy(const IPopupModal *popupModal) = 0
virtual bool processEvent(const graphics::WindowEvent &event) = 0
virtual bool processEvent(const graphics::KeyboardEvent &event) = 0
virtual bool processEvent(const graphics::TextInputEvent &event) = 0
virtual bool processEvent(const graphics::MouseButtonEvent &event) = 0
virtual bool processEvent(const graphics::MouseMotionEvent &event) = 0
virtual bool processEvent(const graphics::MouseWheelEvent &event) = 0
class ice_engine::graphics::gui::IGuiFactory
#include <IGuiFactory.hpp>

Public Functions

virtual ~IGuiFactory() = default
virtual std::unique_ptr<IGui> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger, IGraphicsEngine *graphicsEngine) = 0
class ice_engine::IGuiPlugin : public ice_engine::IPlugin
#include <IGuiPlugin.hpp>

Public Functions

virtual ~IGuiPlugin() = default
virtual std::unique_ptr<graphics::gui::IGuiFactory> createFactory() const = 0
class ice_engine::physics::IHeightfield
#include <IHeightfield.hpp>

Subclassed by ice_engine::Heightfield

Public Functions

virtual ~IHeightfield() = default
virtual const std::vector<byte> &data() const = 0
virtual uint32 width() const = 0
virtual uint32 length() const = 0
virtual uint32 height() const = 0
class ice_engine::graphics::IHeightMap
#include <IHeightMap.hpp>

Subclassed by ice_engine::HeightMap

Public Functions

virtual ~IHeightMap() = default
virtual const IImage *image() const = 0
class ice_engine::IImage : public ice_engine::graphics::IImage, public ice_engine::physics::IImage
#include <IImage.hpp>

Subclassed by ice_engine::Image

Public Types

enum Format

Values:

enumerator FORMAT_UNKNOWN
enumerator FORMAT_RGB
enumerator FORMAT_RGBA

Public Functions

virtual ~IImage() override = default
virtual const std::vector<byte> &data() const override = 0
virtual uint32 width() const override = 0
virtual uint32 height() const override = 0
virtual int32 format() const override = 0
class ice_engine::pathfinding::IImage
#include <IImage.hpp>

Public Types

enum Format

Values:

enumerator FORMAT_UNKNOWN
enumerator FORMAT_RGB
enumerator FORMAT_RGBA

Public Functions

inline virtual ~IImage()
virtual const std::vector<byte> &data() const = 0
virtual uint32 width() const = 0
virtual uint32 height() const = 0
virtual Format format() const = 0
class ice_engine::physics::IImage
#include <IImage.hpp>

Subclassed by ice_engine::IImage

Public Types

enum Format

Values:

enumerator FORMAT_UNKNOWN
enumerator FORMAT_RGB
enumerator FORMAT_RGBA

Public Functions

inline virtual ~IImage()
virtual const std::vector<byte> &data() const = 0
virtual uint32 width() const = 0
virtual uint32 height() const = 0
virtual int32 format() const = 0
class ice_engine::graphics::IImage
#include <IImage.hpp>

Subclassed by ice_engine::IImage

Public Types

enum Format

Values:

enumerator FORMAT_UNKNOWN
enumerator FORMAT_RGB
enumerator FORMAT_RGBA

Public Functions

virtual ~IImage() = default
virtual const std::vector<byte> &data() const = 0
virtual uint32 width() const = 0
virtual uint32 height() const = 0
virtual int32 format() const = 0
class ice_engine::IKeyboardEventListener
#include <IKeyboardEventListener.hpp>

Public Functions

virtual ~IKeyboardEventListener() = default
virtual bool processEvent(const graphics::KeyboardEvent &event) = 0
class ice_engine::graphics::gui::ILabel : public virtual ice_engine::graphics::gui::IComponent
#include <ILabel.hpp>

Public Functions

virtual ~ILabel() = default
virtual void setLabel(const std::string &label) = 0
virtual const std::string &label() const = 0
class ice_engine::logger::ILogger
#include <ILogger.hpp>

Subclassed by ice_engine::logger::Logger

Public Functions

virtual ~ILogger() = default
virtual void info(const std::string &message) = 0
virtual void debug(const std::string &message) = 0
virtual void trace(const std::string &message) = 0
virtual void warn(const std::string &message) = 0
virtual void error(const std::string &message) = 0
virtual void fatal(const std::string &message) = 0
virtual void info(const std::wstring &message) = 0
virtual void debug(const std::wstring &message) = 0
virtual void trace(const std::wstring &message) = 0
virtual void warn(const std::wstring &message) = 0
virtual void error(const std::wstring &message) = 0
virtual void fatal(const std::wstring &message) = 0
class ice_engine::Image : public ice_engine::IImage
#include <Image.hpp>

Public Functions

Image() = default
inline Image(std::vector<byte> data, int width, int height, IImage::Format format)

Will load the provided image data into a proper image.

Parameters
  • data – The image data to load.

  • hasAlpha – Whether the image has an alpha channel or not.

inline Image(fs::IFile &file, bool hasAlpha = true)

Will load the provided image data into a proper image.

Parameters
  • file – The file to load.

  • hasAlpha – Whether the image has an alpha channel or not.

inline Image(std::istream &inputStream, bool hasAlpha = true)

Will load the provided image data into a proper image.

Parameters
  • inputStream – Stream from which we will load our image data.

  • hasAlpha – Whether the image has an alpha channel or not.

inline Image(const Image &image)
~Image() override = default
inline virtual const std::vector<byte> &data() const override
inline virtual uint32 width() const override
inline virtual uint32 height() const override
inline virtual int32 format() const override

Private Functions

void importImage(const std::vector<byte> &data, bool hasAlpha = true)

Private Members

std::vector<byte> data_
int width_ = 0
int height_ = 0
IImage::Format format_ = IImage::Format::FORMAT_UNKNOWN
class ice_engine::graphics::gui::IMainMenuBar : public virtual ice_engine::graphics::gui::IComponent
#include <IMainMenuBar.hpp>

Public Functions

virtual ~IMainMenuBar() = default
virtual IMenu *createMenu(const std::string &label) = 0
virtual IMenu *getMenu(const std::string &label) const = 0
class ice_engine::graphics::gui::IMenu : public virtual ice_engine::graphics::gui::IComponent
#include <IMenu.hpp>

Public Functions

virtual ~IMenu() = default
virtual void setLabel(const std::string &label) = 0
virtual const std::string &label() const = 0
virtual IMenu *createMenu(const std::string &label) = 0
virtual IMenu *getMenu(const std::string &label) const = 0
virtual void createSeparator() = 0
virtual IMenuItem *createMenuItem(const std::string &label) = 0
class ice_engine::graphics::gui::IMenuBar : public virtual ice_engine::graphics::gui::IComponent
#include <IMenuBar.hpp>

Public Functions

virtual ~IMenuBar() = default
virtual IMenu *createMenu(const std::string &label) = 0
virtual IMenu *getMenu(const std::string &label) const = 0
class ice_engine::graphics::gui::IMenuItem : public virtual ice_engine::graphics::gui::IComponent
#include <IMenuItem.hpp>

Public Functions

virtual ~IMenuItem() = default
virtual void setLabel(const std::string &label) = 0
virtual const std::string &label() const = 0
virtual void setCallback(std::function<void()> &callback) = 0
virtual IMenuItem *createMenuItem(const std::string &label) = 0
class ice_engine::graphics::IMesh
#include <IMesh.hpp>

Subclassed by ice_engine::Mesh

Public Functions

virtual ~IMesh() = default
virtual const std::string &name() const = 0
virtual const std::vector<glm::vec3> &vertices() const = 0
virtual const std::vector<uint32> &indices() const = 0
virtual const std::vector<glm::vec4> &colors() const = 0
virtual const std::vector<glm::vec3> &normals() const = 0
virtual const std::vector<glm::vec2> &textureCoordinates() const = 0
class ice_engine::IMessageEventListener
#include <IMessageEventListener.hpp>

Public Functions

inline virtual ~IMessageEventListener()
virtual bool processEvent(const networking::MessageEvent &event) = 0
class ice_engine::IModule
#include <IModule.hpp>

Public Functions

inline virtual ~IModule()
virtual void tick(const float32 delta) = 0
class ice_engine::IModuleFactory
#include <IModuleFactory.hpp>

Public Functions

inline virtual ~IModuleFactory()
virtual std::unique_ptr<IModule> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger, graphics::IGraphicsEngine *graphicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine, scripting::IScriptingEngine *scriptingEngine, audio::IAudioEngine *audioEngine, networking::INetworkingEngine *networkingEngine) = 0
class ice_engine::IModulePlugin : public ice_engine::IPlugin
#include <IModulePlugin.hpp>

Public Functions

inline virtual ~IModulePlugin()
virtual std::unique_ptr<IModuleFactory> createFactory() const = 0
class ice_engine::physics::IMotionChangeListener
#include <IMotionChangeListener.hpp>

Subclassed by ice_engine::IceEngineMotionChangeListener

Public Functions

inline virtual ~IMotionChangeListener()
virtual void update(const glm::vec3 &position, const glm::quat &orientation) = 0
class ice_engine::IMouseButtonEventListener
#include <IMouseButtonEventListener.hpp>

Public Functions

inline virtual ~IMouseButtonEventListener()
virtual bool processEvent(const graphics::MouseButtonEvent &event) = 0
class ice_engine::IMouseMotionEventListener
#include <IMouseMotionEventListener.hpp>

Public Functions

inline virtual ~IMouseMotionEventListener()
virtual bool processEvent(const graphics::MouseMotionEvent &event) = 0
class ice_engine::IMouseWheelEventListener
#include <IMouseWheelEventListener.hpp>

Public Functions

inline virtual ~IMouseWheelEventListener()
virtual bool processEvent(const graphics::MouseWheelEvent &event) = 0
class ice_engine::pathfinding::IMovementRequestStateChangeListener
#include <IMovementRequestStateChangeListener.hpp>

Subclassed by ice_engine::IceEnginePathfindingMovementRequestStateChangeListener

Public Functions

inline virtual ~IMovementRequestStateChangeListener()
virtual void update(const MovementRequestState &movementRequestState) = 0
class ice_engine::networking::INetworkingEngine
#include <INetworkingEngine.hpp>

Public Functions

inline virtual ~INetworkingEngine()
virtual ServerHandle createServer() = 0
virtual ClientHandle createClient() = 0
virtual void destroyServer(const ServerHandle &serverHandle) = 0
virtual void destroyClient(const ClientHandle &clientHandle) = 0
virtual void tick(const float32 delta) = 0
virtual void send(const ServerHandle &serverHandle, const std::vector<uint8> &data) = 0
virtual void send(const ServerHandle &serverHandle, const RemoteConnectionHandle &remoteConnectionHandle, const std::vector<uint8> &data) = 0
virtual void send(const ClientHandle &clientHandle, const std::vector<uint8> &data) = 0
virtual void processEvents() = 0
virtual void addEventListener(IEventListener *eventListener) = 0
virtual void removeEventListener(IEventListener *eventListener) = 0
class ice_engine::networking::INetworkingEngineFactory
#include <INetworkingEngineFactory.hpp>

Public Functions

inline virtual ~INetworkingEngineFactory()
virtual std::unique_ptr<INetworkingEngine> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger) = 0
class ice_engine::INetworkingPlugin : public virtual ice_engine::IPlugin
#include <INetworkingPlugin.hpp>

Public Functions

inline virtual ~INetworkingPlugin()
virtual std::unique_ptr<networking::INetworkingEngineFactory> createFactory() const = 0
template<typename IterContextT>
class ice_engine::CPreProcessor::inner
#include <CPreProcessor.hpp>

Inner class to do the loading of a file.

Public Static Functions

template<typename PositionT>
static inline void init_iterators(IterContextT &iter_ctx, PositionT const &act_pos, wave::language_support language)

Private Members

std::string instring
struct InvalidArgumentException : public virtual ice_engine::Exception
#include <InvalidArgumentException.hpp>
struct InvalidOperationException : public virtual ice_engine::Exception
#include <InvalidOperationException.hpp>
class ice_engine::IOpenGlLoader
#include <IOpenGlLoader.hpp>

Subclassed by ice_engine::OpenGlLoader

Public Functions

inline virtual ~IOpenGlLoader()
virtual std::future<void> postWork(const std::function<void()> &work) = 0
virtual std::future<void> postWork(std::function<void()> &&work) = 0
virtual void waitAll() = 0
virtual uint32 getWorkQueueCount() const = 0
virtual void tick() = 0
virtual void block() = 0
virtual void unblock() = 0
class ice_engine::pathfinding::IPathfindingDebugRenderer
#include <IPathfindingDebugRenderer.hpp>

Subclassed by ice_engine::IDebugRenderer

Public Functions

virtual ~IPathfindingDebugRenderer() = default
virtual void pushLine(const glm::vec3 &from, const glm::vec3 &to, const glm::vec3 &color) = 0
virtual void pushLines(const std::vector<std::tuple<glm::vec3, glm::vec3, glm::vec3>> &lineData) = 0
class ice_engine::pathfinding::IPathfindingEngine
#include <IPathfindingEngine.hpp>

Public Functions

virtual ~IPathfindingEngine() = default
virtual void tick(const PathfindingSceneHandle &pathfindingSceneHandle, const float32 delta) = 0
virtual void renderDebug(const PathfindingSceneHandle &pathfindingSceneHandle) = 0
virtual PathfindingSceneHandle createPathfindingScene() = 0
virtual void destroyPathfindingScene(const PathfindingSceneHandle &pathfindingSceneHandle) = 0
virtual void setPathfindingDebugRenderer(IPathfindingDebugRenderer *pathfindingDebugRenderer) = 0
virtual void setDebugRendering(const PathfindingSceneHandle &pathfindingSceneHandle, const bool enabled) = 0
virtual PolygonMeshHandle createPolygonMesh(const ITerrain *terrain, const PolygonMeshConfig &polygonMeshConfig = PolygonMeshConfig()) = 0
virtual void destroy(const PolygonMeshHandle &polygonMeshHandle) = 0
virtual ObstacleHandle createObstacle(const PolygonMeshHandle &polygonMeshHandle, const glm::vec3 &position, const float32 radius, const float32 height) = 0
virtual void destroy(const PolygonMeshHandle &polygonMeshHandle, const ObstacleHandle &obstacleHandle) = 0
virtual NavigationMeshHandle createNavigationMesh(const PolygonMeshHandle &polygonMeshHandle, const NavigationMeshConfig &navigationMeshConfig = NavigationMeshConfig()) = 0
virtual void destroy(const NavigationMeshHandle &navigationMeshHandle) = 0
virtual CrowdHandle createCrowd(const PathfindingSceneHandle &pathfindingSceneHandle, const NavigationMeshHandle &navigationMeshHandle, const CrowdConfig &crowdConfig) = 0
virtual void destroy(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle) = 0
virtual AgentHandle createAgent(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const glm::vec3 &position, const AgentParams &agentParams = AgentParams(), std::unique_ptr<IAgentMotionChangeListener> agentMotionChangeListener = nullptr, std::unique_ptr<IAgentStateChangeListener> agentStateChangeListener = nullptr, std::unique_ptr<IMovementRequestStateChangeListener> movementRequestStateChangeListener = nullptr, const boost::any &userData = UserData()) = 0
virtual void destroy(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle) = 0
virtual void requestMoveTarget(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle, const glm::vec3 &position) = 0
virtual void resetMoveTarget(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle) = 0
virtual void requestMoveVelocity(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle, const glm::vec3 &velocity) = 0
virtual void setMotionChangeListener(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle, std::unique_ptr<IAgentMotionChangeListener> agentMotionChangeListener) = 0
virtual void setStateChangeListener(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle, std::unique_ptr<IAgentStateChangeListener> agentStateChangeListener) = 0
virtual void setMovementRequestChangeListener(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle, std::unique_ptr<IMovementRequestStateChangeListener> movementRequestStateChangeListener) = 0
virtual void setUserData(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle, const boost::any &userData) = 0
virtual boost::any &getUserData(const PathfindingSceneHandle &pathfindingSceneHandle, const CrowdHandle &crowdHandle, const AgentHandle &agentHandle) const = 0
class ice_engine::pathfinding::IPathfindingEngineFactory
#include <IPathfindingEngineFactory.hpp>

Public Functions

inline virtual ~IPathfindingEngineFactory()
virtual std::unique_ptr<IPathfindingEngine> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger) = 0
class ice_engine::IPathfindingPlugin : public virtual ice_engine::IPlugin
#include <IPathfindingPlugin.hpp>

Public Functions

inline virtual ~IPathfindingPlugin()
virtual std::unique_ptr<pathfinding::IPathfindingEngineFactory> createFactory() const = 0
class ice_engine::graphics::IPbrMaterial
#include <IPbrMaterial.hpp>

Subclassed by ice_engine::PbrMaterial

Public Functions

inline virtual ~IPbrMaterial()
virtual const IImage *albedo() const = 0
virtual const IImage *normal() const = 0
virtual const IImage *metalness() const = 0
virtual const IImage *roughness() const = 0
virtual const IImage *ambientOcclusion() const = 0
class ice_engine::physics::IPhysicsDebugRenderer
#include <IPhysicsDebugRenderer.hpp>

Subclassed by ice_engine::IDebugRenderer

Public Functions

virtual ~IPhysicsDebugRenderer() = default
virtual void pushLine(const glm::vec3 &from, const glm::vec3 &to, const glm::vec3 &color) = 0
virtual void pushLines(const std::vector<std::tuple<glm::vec3, glm::vec3, glm::vec3>> &lineData) = 0
class ice_engine::physics::IPhysicsEngine
#include <IPhysicsEngine.hpp>

Public Functions

virtual ~IPhysicsEngine() = default
virtual void tick(const PhysicsSceneHandle &physicsSceneHandle, const float32 delta) = 0
virtual void renderDebug(const PhysicsSceneHandle &physicsSceneHandle) = 0
virtual PhysicsSceneHandle createPhysicsScene() = 0
virtual void destroy(const PhysicsSceneHandle &physicsSceneHandle) = 0
virtual void setGravity(const PhysicsSceneHandle &physicsSceneHandle, const glm::vec3 &gravity) = 0
virtual void setPhysicsDebugRenderer(IPhysicsDebugRenderer *physicsDebugRenderer) = 0
virtual void setDebugRendering(const PhysicsSceneHandle &physicsSceneHandle, const bool enabled) = 0
virtual CollisionShapeHandle createStaticPlaneShape(const glm::vec3 &planeNormal, const float32 planeConstant) = 0
virtual CollisionShapeHandle createStaticBoxShape(const glm::vec3 &dimensions) = 0
virtual CollisionShapeHandle createStaticSphereShape(const float32 radius) = 0
virtual CollisionShapeHandle createStaticTerrainShape(const IHeightfield &heightfield) = 0
virtual void destroy(const CollisionShapeHandle &collisionShapeHandle) = 0
virtual void destroyAllStaticShapes() = 0
virtual RigidBodyObjectHandle createRigidBodyObject(const PhysicsSceneHandle &physicsSceneHandle, const CollisionShapeHandle &collisionShapeHandle, std::unique_ptr<IMotionChangeListener> motionStateListener = nullptr, const boost::any &userData = boost::any()) = 0
virtual RigidBodyObjectHandle createRigidBodyObject(const PhysicsSceneHandle &physicsSceneHandle, const CollisionShapeHandle &collisionShapeHandle, const float32 mass, const float32 friction, const float32 restitution, std::unique_ptr<IMotionChangeListener> motionStateListener = nullptr, const boost::any &userData = boost::any()) = 0
virtual RigidBodyObjectHandle createRigidBodyObject(const PhysicsSceneHandle &physicsSceneHandle, const CollisionShapeHandle &collisionShapeHandle, const glm::vec3 &position, const glm::quat &orientation, const float32 mass = 1.0f, const float32 friction = 1.0f, const float32 restitution = 1.0f, std::unique_ptr<IMotionChangeListener> motionStateListener = nullptr, const boost::any &userData = boost::any()) = 0
virtual GhostObjectHandle createGhostObject(const PhysicsSceneHandle &physicsSceneHandle, const CollisionShapeHandle &collisionShapeHandle, const boost::any &userData = boost::any()) = 0
virtual GhostObjectHandle createGhostObject(const PhysicsSceneHandle &physicsSceneHandle, const CollisionShapeHandle &collisionShapeHandle, const glm::vec3 &position, const glm::quat &orientation, const boost::any &userData = boost::any()) = 0
virtual void destroy(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) = 0
virtual void destroy(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle) = 0
virtual void destroyAllRigidBodies() = 0
virtual void setUserData(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const boost::any &userData) = 0
virtual void setUserData(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle, const boost::any &userData) = 0
virtual boost::any &getUserData(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) const = 0
virtual boost::any &getUserData(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle) const = 0
virtual Raycast raycast(const PhysicsSceneHandle &physicsSceneHandle, const ray::Ray &ray) = 0
virtual std::vector<boost::variant<RigidBodyObjectHandle, GhostObjectHandle>> query(const PhysicsSceneHandle &physicsSceneHandle, const glm::vec3 &origin, const std::vector<glm::vec3> &points) = 0
virtual std::vector<boost::variant<RigidBodyObjectHandle, GhostObjectHandle>> query(const PhysicsSceneHandle &physicsSceneHandle, const glm::vec3 &origin, const float32 radius) = 0
virtual void setMotionChangeListener(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, std::unique_ptr<IMotionChangeListener> motionStateListener) = 0
virtual void rotation(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const glm::quat &orientation) = 0
virtual glm::quat rotation(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) const = 0
virtual void rotation(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle, const glm::quat &orientation) = 0
virtual glm::quat rotation(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle) const = 0
virtual void position(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void position(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) const = 0
virtual void position(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle, const float32 x, const float32 y, const float32 z) = 0
virtual void position(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle, const glm::vec3 &position) = 0
virtual glm::vec3 position(const PhysicsSceneHandle &physicsSceneHandle, const GhostObjectHandle &ghostObjectHandle) const = 0
virtual void mass(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const float32 mass) = 0
virtual float32 mass(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) const = 0

Note: This value must be calculated, so it may not be exactly what you set originally.

virtual void friction(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const float32 friction) = 0
virtual float32 friction(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) const = 0
virtual void restitution(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle, const float32 restitution) = 0
virtual float32 restitution(const PhysicsSceneHandle &physicsSceneHandle, const RigidBodyObjectHandle &rigidBodyObjectHandle) const = 0
class ice_engine::physics::IPhysicsEngineFactory
#include <IPhysicsEngineFactory.hpp>

Public Functions

inline virtual ~IPhysicsEngineFactory()
virtual std::unique_ptr<IPhysicsEngine> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger) = 0
class ice_engine::IPhysicsPlugin : public virtual ice_engine::IPlugin
#include <IPhysicsPlugin.hpp>

Public Functions

inline virtual ~IPhysicsPlugin()
virtual std::unique_ptr<physics::IPhysicsEngineFactory> createFactory() const = 0
class ice_engine::IPlugin
#include <IPlugin.hpp>

Subclassed by ice_engine::IAudioPlugin, ice_engine::IGraphicsPlugin, ice_engine::IGuiPlugin, ice_engine::IModulePlugin, ice_engine::INetworkingPlugin, ice_engine::IPathfindingPlugin, ice_engine::IPhysicsPlugin, ice_engine::IResourceImporterPlugin< T >, ice_engine::IScriptingEngineBindingPlugin

Public Functions

inline virtual ~IPlugin()
virtual std::string getName() const = 0
class ice_engine::IPluginManager
#include <IPluginManager.hpp>

Subclassed by ice_engine::PluginManager

Public Functions

virtual ~IPluginManager() = default
virtual const std::vector<std::shared_ptr<IResourceImporterPlugin<Image>>> &getImageResourceImporterPlugins() const = 0
virtual const std::vector<std::shared_ptr<IGuiPlugin>> &getGuiPlugins() const = 0
virtual std::shared_ptr<IGraphicsPlugin> getGraphicsPlugin() const = 0
virtual std::shared_ptr<IAudioPlugin> getAudioPlugin() const = 0
virtual std::shared_ptr<IPathfindingPlugin> getPathfindingPlugin() const = 0
virtual std::shared_ptr<IPhysicsPlugin> getPhysicsPlugin() const = 0
virtual std::shared_ptr<INetworkingPlugin> getNetworkingPlugin() const = 0
virtual const std::vector<std::shared_ptr<IModulePlugin>> &getModulePlugins() const = 0
virtual const std::vector<std::shared_ptr<IScriptingEngineBindingPlugin>> &scriptingEngineBindingPlugins() const = 0
class ice_engine::graphics::gui::IPopupModal : public virtual ice_engine::graphics::gui::IGenericComponentContainer, public virtual ice_engine::graphics::gui::IComponent
#include <IPopupModal.hpp>

Public Functions

virtual ~IPopupModal() = default
virtual void close() = 0
class ice_engine::graphics::gui::IRectangle : public virtual ice_engine::graphics::gui::IComponent
#include <IRectangle.hpp>

Public Functions

virtual ~IRectangle() = default
virtual void setPoints(const glm::vec2 &start, const glm::vec2 &end) = 0
virtual const glm::vec2 &startPoint() const = 0
virtual const glm::vec2 &endPoint() const = 0
virtual void setColor(const Color &color) = 0
virtual const Color &color() const = 0
class ice_engine::IResourceCache
#include <IResourceCache.hpp>

Subclassed by ice_engine::ResourceCache

Public Functions

virtual ~IResourceCache() = default
virtual void addAudio(const std::string &name, std::unique_ptr<Audio> audio) = 0
virtual void addImage(const std::string &name, std::unique_ptr<Image> image) = 0
virtual void addModel(const std::string &name, std::unique_ptr<Model> model) = 0
virtual void removeAudio(const std::string &name) = 0
virtual void removeImage(const std::string &name) = 0
virtual void removeModel(const std::string &name) = 0
virtual Audio *getAudio(const std::string &name) const = 0
virtual Image *getImage(const std::string &name) const = 0
virtual Model *getModel(const std::string &name) const = 0
template<typename T>
class ice_engine::IResourceImporter
#include <IResourceImporter.hpp>

Public Functions

virtual ~IResourceImporter() = default
virtual std::unique_ptr<T> import(const std::string &name, const std::string &filename) const = 0
virtual bool supports(const std::string &filename) const = 0
template<>
class ice_engine::IResourceImporter<Image>
#include <IResourceImporter.Image.hpp>

Public Functions

virtual ~IResourceImporter() = default
virtual std::unique_ptr<Image> import(const std::string &name, const std::string &filename) const = 0
virtual bool supported(const std::string &filename) const = 0
template<typename T>
class ice_engine::IResourceImporterFactory
#include <IResourceImporterFactory.hpp>

Public Functions

virtual ~IResourceImporterFactory() = default
virtual std::unique_ptr<IResourceImporter<T>> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger) const = 0
template<typename T>
class ice_engine::IResourceImporterPlugin : public ice_engine::IPlugin
#include <IResourceImporterPlugin.hpp>

Public Functions

virtual ~IResourceImporterPlugin() = default
virtual std::unique_ptr<IResourceImporterFactory<T>> createFactory() const = 0
class ice_engine::scripting::IScriptingEngine
#include <IScriptingEngine.hpp>

Subclassed by ice_engine::scripting::angel_script::ScriptingEngine

Public Functions

virtual ~IScriptingEngine() = default
virtual void run(const std::string &filename, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint32 &returnaszValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) = 0
virtual ExecutionContextHandle createExecutionContext() = 0
virtual void destroyExecutionContext(const ExecutionContextHandle &executionContextHandle) = 0
virtual std::string getScriptObjectName(const ScriptObjectHandle &scriptObjectHandle) const = 0
virtual ScriptObjectHandle createUninitializedScriptObject(const ModuleHandle &moduleHandle, const std::string &name) = 0
virtual ModuleHandle createModule(const std::string &name, const std::vector<std::string> &scriptData, const std::unordered_map<std::string, std::string> &includeOverrides = {}) = 0
virtual ModuleHandle getModule(const std::string &name) const = 0
virtual void destroyModule(const ModuleHandle &moduleHandle) = 0
virtual void destroyAllModules() = 0
virtual void releaseScriptObject(const ScriptObjectHandle &scriptObjectHandle) = 0
virtual void releaseAllScriptObjects() = 0
virtual void releaseScriptObjectFunction(const ScriptObjectFunctionHandle &scriptObjectFunctionHandle) = 0
virtual void releaseAllScriptObjectFunctions() = 0
virtual void releaseScriptFunction(const ScriptFunctionHandle &scriptFunctionHandle) = 0
virtual void releaseAllScriptFunctions() = 0
virtual void tick(const float32 delta) = 0
virtual void registerGlobalFunction(const std::string &name, const asSFuncPtr &funcPointer, asDWORD callConv, void *objForThiscall = nullptr) = 0
virtual void registerGlobalProperty(const std::string &declaration, void *pointer) = 0
virtual void registerClass(const std::string &name) = 0
virtual void registerClass(const std::string &name, const std::string &classFactorySignature, const std::string &addRefSignature, const std::string &releaseRefSignature, const asSFuncPtr &classFactoryFuncPointer, const asSFuncPtr &addRefFuncPointer, const asSFuncPtr &releaseRefFuncPointer) = 0
virtual void registerClassFactory(const std::string &name, const std::string &classFactorySignature, const asSFuncPtr &classFactoryFuncPointer) = 0
virtual void registerClassAddRef(const std::string &name, const std::string &addRefSignature, const asSFuncPtr &addRefFuncPointer) = 0
virtual void registerClassReleaseRef(const std::string &name, const std::string &releaseRefSignature, const asSFuncPtr &releaseRefFuncPointer) = 0
virtual void registerClassMethod(const std::string &className, const std::string &methodSignature, const asSFuncPtr &funcPointer) = 0
virtual void registerFunctionDefinition(const std::string &name) = 0
virtual void registerInterface(const std::string &name) = 0
virtual void registerInterfaceMethod(const std::string &name, const std::string &declaration) = 0
virtual void registerEnum(const std::string &type) = 0
virtual void registerEnumValue(const std::string &type, const std::string &name, const int64 value) = 0
virtual ScriptFunctionHandle getScriptFunction(const ModuleHandle &moduleHandle, const std::string &function) = 0
virtual ScriptObjectFunctionHandle getScriptObjectFunction(const ScriptObjectHandle &scriptObjectHandle, const std::string &function) = 0
virtual void registerObjectType(const std::string &obj, const int32 byteSize, asDWORD flags) = 0
virtual void registerObjectMethod(const std::string &obj, const std::string &declaration, const asSFuncPtr &funcPointer, asDWORD callConv, void *auxiliary = nullptr) = 0
virtual void registerObjectProperty(const std::string &obj, const std::string &declaration, int32 byteOffset) = 0
virtual void registerObjectBehaviour(const std::string &obj, asEBehaviours behaviour, const std::string &declaration, const asSFuncPtr &funcPointer, asDWORD callConv) = 0
virtual IScriptingEngineDebugger *debugger() = 0
virtual void MessageCallback(const asSMessageInfo *msg, void *param) = 0
virtual void testPrintCallstack() = 0
class ice_engine::IScriptingEngineBinding
#include <IScriptingEngineBinding.hpp>

Public Functions

virtual ~IScriptingEngineBinding() = default
virtual void bind() = 0
class ice_engine::IScriptingEngineBindingFactory
#include <IScriptingEngineBindingFactory.hpp>

Public Functions

virtual ~IScriptingEngineBindingFactory() = default
virtual std::unique_ptr<IScriptingEngineBinding> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger, graphics::IGraphicsEngine *graphicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine, physics::IPhysicsEngine *physicsEngine, scripting::IScriptingEngine *scriptingEngine, audio::IAudioEngine *audioEngine, networking::INetworkingEngine *networkingEngine, GameEngine *gameEngine) = 0
class ice_engine::IScriptingEngineBindingPlugin : public ice_engine::IPlugin
#include <IScriptingEngineBindingPlugin.hpp>

Public Functions

inline virtual ~IScriptingEngineBindingPlugin()
virtual std::unique_ptr<IScriptingEngineBindingFactory> createFactory() const = 0
class ice_engine::scripting::IScriptingEngineDebugger
#include <IScriptingEngineDebugger.hpp>

Subclassed by ice_engine::scripting::angel_script::AngelscriptDebugger

Public Functions

virtual ~IScriptingEngineDebugger() = default
virtual void addBreakPoint(const std::string &file, const uint32 line) = 0
virtual void performAction(const DebugAction action) = 0
virtual std::string filename() const = 0

Returns the name of the file that the debugger is currently in.

If we aren’t currently debugging anything, returns an empty string.

Returns

virtual std::string functionName() const = 0

Returns the name of the function that the debugger is currently in.

If we aren’t currently debugging anything, returns an empty string.

Returns

virtual int32 line() const = 0

Returns the line in the file that the debugger is currently on.

If we aren’t currently debugging anything, returns -1.

Returns

virtual std::string stacktrace() = 0
virtual std::string variables() = 0
virtual void registerToStringCallback(const std::string &obj, const std::function<std::string(void*)> &function) = 0
virtual void addDebugEventListener(IDebugEventListener *listener) = 0
virtual void removeDebugEventListener(const IDebugEventListener *listener) = 0
virtual bool enabled() const = 0
virtual void setEnabled(const bool enabled) = 0
virtual bool running() const = 0
virtual void setRunning(const bool running) = 0
class ice_engine::IScriptingEngineDebugHandler
#include <IScriptingEngineDebugHandler.hpp>

Public Functions

virtual ~IScriptingEngineDebugHandler() = default
virtual void tick(const float32 delta) = 0
class ice_engine::serialization::ISerializable
#include <ISerializable.hpp>

Subclassed by ice_engine::Scene

Public Functions

inline virtual ~ISerializable()
virtual void serialize(const std::string &filename) = 0

Serialize the object to the provided filename.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

virtual void deserialize(const std::string &filename) = 0

Deserializes the object from the provided filename.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

class ice_engine::graphics::ISkeleton
#include <ISkeleton.hpp>

Subclassed by ice_engine::VertexBoneData

Public Functions

virtual ~ISkeleton() = default
virtual const std::string &name() const = 0
virtual const std::vector<glm::ivec4> &boneIds() const = 0
virtual const std::vector<glm::vec4> &boneWeights() const = 0
class ice_engine::graphics::ISplatMap
#include <ISplatMap.hpp>

Subclassed by ice_engine::SplatMap

Public Functions

inline virtual ~ISplatMap()
virtual const std::vector<IPbrMaterial*> &materialMap() const = 0
virtual const IImage *terrainMap() const = 0
class ice_engine::ecs::EcsView::Iterator : public ice_engine::ecs::ViewIterator<All>
#include <EntityComponentSystem.hpp>

Public Functions

inline Iterator(Scene *scene, ViewIteratorIterator<All> viewIterator)
class ice_engine::ITerrain
#include <ITerrain.hpp>

Subclassed by ice_engine::Terrain

Public Functions

inline virtual ~ITerrain()
virtual void tick(const float32 delta) = 0
virtual const std::vector<pathfinding::CrowdHandle> &crowds() const = 0
class ice_engine::pathfinding::ITerrain
#include <ITerrain.hpp>

Subclassed by ice_engine::PathfindingTerrain

Public Functions

virtual ~ITerrain() = default
virtual const std::vector<glm::vec3> &vertices() const = 0
virtual const std::vector<uint32> &indices() const = 0
class ice_engine::ITerrainFactory
#include <ITerrainFactory.hpp>

Subclassed by ice_engine::TerrainFactory

Public Functions

inline virtual ~ITerrainFactory()
virtual std::unique_ptr<ITerrain> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger, Scene *scene, HeightMap heightMap, SplatMap splatMap, DisplacementMap displacementMap, physics::CollisionShapeHandle collisionShapeHandle, pathfinding::PolygonMeshHandle polygonMeshHandle, pathfinding::NavigationMeshHandle navigationMeshHandle, graphics::IGraphicsEngine *graphicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine, physics::IPhysicsEngine *physicsEngine, audio::IAudioEngine *audioEngine, audio::AudioSceneHandle audioSceneHandle, graphics::RenderSceneHandle renderSceneHandle, physics::PhysicsSceneHandle physicsSceneHandle, pathfinding::PathfindingSceneHandle pathfindingSceneHandle) = 0
class ice_engine::graphics::gui::ITextArea : public virtual ice_engine::graphics::gui::IComponent
#include <ITextArea.hpp>

Public Functions

virtual ~ITextArea() = default
virtual const std::string &text() const = 0
virtual void setText(const std::string &text) = 0
virtual void setOnChangeCallback(std::function<void()> &onChangeCallback) = 0
class ice_engine::graphics::gui::ITextField : public virtual ice_engine::graphics::gui::IComponent
#include <ITextField.hpp>

Public Functions

virtual ~ITextField() = default
virtual void setText(const std::string &text) = 0
virtual const std::string &text() const = 0
virtual void setOnChangeCallback(std::function<void()> &onChangeCallback) = 0
class ice_engine::ITextInputEventListener
#include <ITextInputEventListener.hpp>

Public Functions

inline virtual ~ITextInputEventListener()
virtual bool processEvent(const graphics::TextInputEvent &event) = 0
class ice_engine::serialization::ITextSerializable
#include <ITextSerializable.hpp>

Public Functions

inline virtual ~ITextSerializable()
virtual void serialize(const std::string &filename) = 0

Serialize the object to the provided filename.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

virtual void serialize(TextOutArchive &outArchive) = 0

Serialize the object to the provided archive.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

virtual void deserialize(const std::string &filename) = 0

Deserializes the object from the provided filename.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

virtual void deserialize(TextInArchive &inArchive) = 0

Deserializes the object from the provided archive.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

class ice_engine::graphics::ITexture
#include <ITexture.hpp>

Subclassed by ice_engine::Texture

Public Functions

virtual ~ITexture() = default
virtual const std::string &name() const = 0
virtual const IImage *image() const = 0
class ice_engine::IThreadPool
#include <IThreadPool.hpp>

Subclassed by ice_engine::ThreadPool

Public Functions

virtual ~IThreadPool() = default
virtual std::future<void> postWork(const std::function<void()> &work) = 0
virtual std::future<void> postWork(std::function<void()> &&work) = 0
virtual void waitAll() = 0
virtual void joinAll() = 0
virtual uint32 getActiveWorkerCount() const = 0
virtual uint32 getInactiveWorkerCount() const = 0
virtual uint32 getWorkQueueCount() const = 0
virtual uint32 getWorkQueueSize() const = 0
virtual void increaseWorkerCountBy(uint32 n) = 0
virtual void decreaseWorkerCountBy(uint32 n) = 0
class ice_engine::graphics::gui::ITreeNode : public virtual ice_engine::graphics::gui::IComponent
#include <ITreeNode.hpp>

Public Functions

virtual ~ITreeNode() = default
virtual ITreeNode *createNode(const std::string &label) = 0
virtual ITreeNode *getNode(const std::string &label) = 0
virtual void destroy(const ITreeNode *treeNode) = 0
virtual void setLabel(const std::string &label) = 0
virtual const std::string &label() const = 0
class ice_engine::graphics::gui::ITreeView : public virtual ice_engine::graphics::gui::IComponent
#include <ITreeView.hpp>

Public Functions

virtual ~ITreeView() = default
virtual ITreeNode *createNode(const std::string &label) = 0
virtual ITreeNode *getNode(const std::string &label) = 0
virtual void destroy(const ITreeNode *treeNode) = 0
virtual void select(ITreeNode *treeNode) = 0
virtual void unselect(const ITreeNode *treeNode) = 0
virtual bool selected(const ITreeNode *treeNode) const = 0
virtual void setCallback(std::function<void(ITreeNode*)> &callback) = 0
class ice_engine::graphics::gui::IWindow : public virtual ice_engine::graphics::gui::IComponent, public virtual ice_engine::graphics::gui::IGenericComponentContainer
#include <IWindow.hpp>

Public Functions

virtual ~IWindow() = default
virtual IMenuBar *createMenuBar() = 0
virtual IRectangle *createRectangle(const glm::vec2 &start, const glm::vec2 &end, const Color &color) = 0
virtual void destroy(const IRectangle *rectangle) = 0
virtual void setTitle(const std::string &title) = 0
virtual const std::string &title() const = 0
virtual void setBackgroundAlpha(const float32 alpha) = 0
class ice_engine::IWindowEventListener
#include <IWindowEventListener.hpp>

Public Functions

inline virtual ~IWindowEventListener()
virtual bool processEvent(const graphics::WindowEvent &event) = 0
struct ice_engine::graphics::KeyboardEvent
#include <Event.hpp>

Public Members

uint32 type
uint8 state
uint8 repeat
uint8 padding2
uint8 padding3
KeySym keySym
template<typename T>
struct ice_engine::KeyFrame
#include <Animation.hpp>

Public Functions

KeyFrame() = default
inline KeyFrame(std::chrono::duration<float32> time, T transformation)

Public Members

std::chrono::duration<float32> time = {0.0f}
T transformation
struct ice_engine::graphics::KeySym
#include <Keyboard.hpp>

Public Members

ScanCode scancode
KeyCode sym
uint16 mod
class ListenerHandle : public ice_engine::handles::Handle<ListenerHandle>
#include <ListenerHandle.hpp>
class ice_engine::logger::Logger : public ice_engine::logger::ILogger
#include <Logger.hpp>

Public Functions

Logger(const std::string &fileName = std::string("ice_engine.log"))
Logger(const Logger &other)
Logger &operator=(const Logger &other)
virtual ~Logger()
virtual void info(const std::string &message) override
virtual void debug(const std::string &message) override
virtual void trace(const std::string &message) override
virtual void warn(const std::string &message) override
virtual void error(const std::string &message) override
virtual void fatal(const std::string &message) override
virtual void info(const std::wstring &message) override
virtual void debug(const std::wstring &message) override
virtual void trace(const std::wstring &message) override
virtual void warn(const std::wstring &message) override
virtual void error(const std::wstring &message) override
virtual void fatal(const std::wstring &message) override

Private Members

src::severity_logger<severity_level> log_
class Main
#include <Main.hpp>

Public Functions

Main()
virtual ~Main()
struct ice_engine::graphics::model::Material
#include <Material.hpp>

Public Members

std::string name
glm::vec4 ambient
glm::vec4 diffuse
glm::vec4 specular
glm::vec4 emission
float32 shininess
float32 strength
class MaterialHandle : public ice_engine::handles::Handle<MaterialHandle>
#include <MaterialHandle.hpp>
template<typename T>
class ice_engine::memory::MemoryPool
#include <MemoryPool.hpp>

Public Functions

inline MemoryPool()
inline T *malloc()
inline void free(T *chunk)
inline bool isFrom(T *chunk) const
inline bool releaseMemory()
inline bool purgeMemory()

Private Members

std::unique_ptr<boost::pool<>> pool_ = std::make_unique<boost::pool<>>(sizeof(T))
struct ice_engine::graphics::model::Mesh
#include <Mesh.hpp>

Public Members

std::string name
std::vector<glm::vec3> vertices
std::vector<uint32> indices
std::vector<glm::vec4> colors
std::vector<glm::vec3> normals
std::vector<glm::vec2> textureCoordinates
std::vector<VertexBoneData> bones
class ice_engine::Mesh : public ice_engine::graphics::IMesh
#include <Mesh.hpp>

Public Functions

Mesh() = default
inline Mesh(std::string name, std::vector<glm::vec3> vertices, std::vector<uint32> indices, std::vector<glm::vec4> colors, std::vector<glm::vec3> normals, std::vector<glm::vec2> textureCoordinates, VertexBoneData vertexBoneData = VertexBoneData(), BoneData boneData = BoneData())
inline Mesh(const std::string &name, const std::string &filename, const uint32 index, const aiMesh *mesh, logger::ILogger *logger, fs::IFileSystem *fileSystem)
~Mesh() override = default
inline virtual const std::string &name() const override
inline const VertexBoneData &vertexBoneData() const
inline const BoneData &boneData() const
inline virtual const std::vector<glm::vec3> &vertices() const override
inline virtual const std::vector<uint32> &indices() const override
inline virtual const std::vector<glm::vec4> &colors() const override
inline virtual const std::vector<glm::vec3> &normals() const override
inline virtual const std::vector<glm::vec2> &textureCoordinates() const override

Private Functions

void importBones(const std::string &name, const std::string &filename, uint32 index, const aiMesh *mesh, logger::ILogger *logger, fs::IFileSystem *fileSystem)
void import(const std::string &name, const std::string &filename, const uint32 index, const aiMesh *mesh, logger::ILogger *logger, fs::IFileSystem *fileSystem)

Private Members

std::string name_
std::vector<glm::vec3> vertices_
std::vector<uint32> indices_
std::vector<glm::vec4> colors_
std::vector<glm::vec3> normals_
std::vector<glm::vec2> textureCoordinates_
VertexBoneData vertexBoneData_
BoneData boneData_
class ice_engine::graphics::MeshHandle : public ice_engine::handles::Handle<T>, public ice_engine::handles::Handle<MeshHandle>
#include <MeshHandle.hpp>

Public Static Attributes

static const MeshHandle INVALID
struct ice_engine::networking::MessageEvent : public ice_engine::networking::GenericEvent
#include <Event.hpp>

Public Members

std::vector<uint8> message
struct ice_engine::graphics::model::Model
#include <Model.hpp>

Public Members

std::vector<Mesh> meshes
std::vector<Material> materials
std::vector<Texture> textures
std::vector<BoneData> boneData
std::vector<Animation> animations
BoneNode rootBoneNode
glm::mat4 globalInverseTransformation = glm::mat4(1.0f)
class ice_engine::Model
#include <Model.hpp>

Public Functions

Model() = default
inline Model(std::string name, std::vector<Mesh> meshes, std::vector<Texture> textures, Skeleton skeleton, std::unordered_map<std::string, Animation> animations)
inline Model(const std::string &filename, IResourceCache *resourceCache, logger::ILogger *logger, fs::IFileSystem *fileSystem)
inline const std::string &name() const
inline const std::vector<Mesh> &meshes() const
inline const std::vector<Texture> &textures() const
inline const Skeleton &skeleton() const
inline const std::unordered_map<std::string, Animation> &animations() const

Private Functions

void importAnimations(const std::string &name, const std::string &filename, const aiScene *scene, logger::ILogger *logger, fs::IFileSystem *fileSystem)
void import(const std::string &filename, IResourceCache *resourceCache, logger::ILogger *logger, fs::IFileSystem *fileSystem)

Private Members

std::string name_
std::vector<Mesh> meshes_
std::vector<Texture> textures_
Skeleton skeleton_
std::unordered_map<std::string, Animation> animations_
class ModelHandle : public ice_engine::handles::Handle<ModelHandle>
#include <ModelHandle.hpp>
class ModelHandle : public ice_engine::handles::Handle<ModelHandle>
#include <ModelHandle.hpp>
class ice_engine::graphics::ModelInstanceHandle : public ResourceHandle
#include <ModelInstanceHandle.hpp>

Public Static Attributes

static const ModelInstanceHandle INVALID
class ModuleHandle : public ice_engine::handles::Handle<ModuleHandle>
#include <ModuleHandle.hpp>
struct ice_engine::graphics::MouseButtonEvent
#include <Event.hpp>

Public Members

uint32 type
uint8 button
uint8 state
uint8 clicks
uint8 padding3
int32 x
int32 y
struct ice_engine::graphics::MouseMotionEvent
#include <Event.hpp>

Public Members

uint32 type
uint32 state
uint8 padding1
uint8 padding2
uint8 padding3
int32 x
int32 y
int32 xrel
int32 yrel
struct ice_engine::graphics::MouseWheelEvent
#include <Event.hpp>

Public Members

uint32 type
int32 x
int32 y
uint32 direction
struct ice_engine::pathfinding::NavigationMeshConfig
#include <NavigationMeshConfig.hpp>

Public Members

float walkableHeight = 0.0f
float walkableRadius = 0.0f
float walkableClimb = 0.0f
class NavigationMeshHandle : public ice_engine::handles::Handle<NavigationMeshHandle>
#include <NavigationMeshHandle.hpp>
class ice_engine::NetworkingEngineBindingDelegate
#include <NetworkingEngineBindingDelegate.hpp>

Public Functions

NetworkingEngineBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, networking::INetworkingEngine *networkingEngine)
~NetworkingEngineBindingDelegate() = default
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
networking::INetworkingEngine *networkingEngine_
class ice_engine::noise::Noise
#include <Noise.hpp>

Public Functions

Noise() = default
inline Noise(const uint32 seed)
inline void setSeed(const uint32 seed)
inline uint32 getSeed() const
inline float32 getValue(const float32 x, const float32 y) const

Private Members

FastNoise noise_
template<typename T>
struct ObjFirst
#include <aswrappedcall.h>
template<typename T, typename R>
struct gw::ObjFirst<R (*)(T)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0>
struct gw::ObjFirst<R (*)(T, A0)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(T, A0)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1>
struct gw::ObjFirst<R (*)(T, A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(T, A0, A1)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2>
struct gw::ObjFirst<R (*)(T, A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(T, A0, A1, A2)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2, typename A3>
struct gw::ObjFirst<R (*)(T, A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(T, A0, A1, A2, A3)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T>
struct gw::ObjFirst<void (*)(T)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0>
struct gw::ObjFirst<void (*)(T, A0)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(T, A0)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1>
struct gw::ObjFirst<void (*)(T, A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(T, A0, A1)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2>
struct gw::ObjFirst<void (*)(T, A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(T, A0, A1, A2)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2, typename A3>
struct gw::ObjFirst<void (*)(T, A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(T, A0, A1, A2, A3)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T>
struct ObjLast
#include <aswrappedcall.h>
template<typename T, typename R, typename A0, typename A1, typename A2, typename A3>
struct gw::ObjLast<R (*)(A0, A1, A2, A3, T)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, A1, A2, A3, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2>
struct gw::ObjLast<R (*)(A0, A1, A2, T)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, A1, A2, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1>
struct gw::ObjLast<R (*)(A0, A1, T)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, A1, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0>
struct gw::ObjLast<R (*)(A0, T)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R>
struct gw::ObjLast<R (*)(T)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2, typename A3>
struct gw::ObjLast<void (*)(A0, A1, A2, A3, T)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, A1, A2, A3, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2>
struct gw::ObjLast<void (*)(A0, A1, A2, T)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, A1, A2, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1>
struct gw::ObjLast<void (*)(A0, A1, T)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, A1, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0>
struct gw::ObjLast<void (*)(A0, T)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T>
struct gw::ObjLast<void (*)(T)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(T)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
class ObstacleHandle : public ice_engine::handles::Handle<ObstacleHandle>
#include <ObstacleHandle.hpp>
class ice_engine::OpenGlLoader : public ice_engine::IOpenGlLoader
#include <OpenGlLoader.hpp>

Public Functions

OpenGlLoader()
virtual ~OpenGlLoader()
virtual std::future<void> postWork(const std::function<void()> &work) override
virtual std::future<void> postWork(std::function<void()> &&work) override
virtual void waitAll() override
virtual uint32 getWorkQueueCount() const override
virtual void tick() override
virtual void block() override
virtual void unblock() override

Private Functions

void initialize()

Private Members

mutable std::mutex enqueuedWorkMutex_
std::deque<std::shared_ptr<std::packaged_task<void()>>> enqueuedWork_
struct ice_engine::ecs::OrientationComponent
#include <OrientationComponent.hpp>

Public Functions

OrientationComponent() = default
inline OrientationComponent(glm::quat orientation)

Public Members

glm::quat orientation = glm::quat(1.0f, 0.0f, 0.0f, 0.0f)

Public Static Functions

static inline uint8 id()
class ice_engine::scripting::Parameter
#include <Parameter.hpp>

TODO: Make sure we destroy any copied objects if we set a new value for this parameter.

Public Functions

inline Parameter()
inline Parameter(const Parameter &other)

copy this parameter.

Note that if the other Parameter has an object copied by value, the copy constructor will make another copy of that object by allocating new memory and copying the contents of that object.

When this newly created parameter is destroyed, it will call the destructor on that copied object.

inline virtual ~Parameter()

If the parameter holds a copy of an object, the destructor for that object will be called.

template<typename T>
inline void valueRef(T &value)

Set the parameter by reference.

template<typename T>
inline void value(T value)

Set the parameter by value. This will make a copy of the passed in value using that values copy constructor.

Note that when the parameter object is destroyed, it will call the destructor on the copied object.

It is highly recommended that you use relatively simple values.

template<typename T>
inline T &valueRef()
template<typename T>
inline T value()
inline void *pointer() const
inline ParameterType type() const
template<>
inline void valueRef(bool &value)
template<>
inline void value(bool value)
template<>
inline void valueRef(uint8 &value)
template<>
inline void value(uint8 value)
template<>
inline void valueRef(int8 &value)
template<>
inline void value(int8 value)
template<>
inline void valueRef(uint16 &value)
template<>
inline void value(uint16 value)
template<>
inline void valueRef(int16 &value)
template<>
inline void value(int16 value)
template<>
inline void valueRef(uint32 &value)
template<>
inline void value(uint32 value)
template<>
inline void valueRef(int32 &value)
template<>
inline void value(int32 value)
template<>
inline void valueRef(uint64 &value)
template<>
inline void value(uint64 value)
template<>
inline void valueRef(int64 &value)
template<>
inline void value(int64 value)
template<>
inline void value(float32 value)
template<>
inline void valueRef(float32 &value)
template<>
inline void value(float64 value)
template<>
inline void valueRef(float64 &value)
template<>
inline bool value()
template<>
inline bool &valueRef()
template<>
inline uint8 value()
template<>
inline uint8 &valueRef()
template<>
inline int8 value()
template<>
inline int8 &valueRef()
template<>
inline uint16 value()
template<>
inline uint16 &valueRef()
template<>
inline int16 value()
template<>
inline uint32 value()
template<>
inline uint32 &valueRef()
template<>
inline int32 value()
template<>
inline int32 &valueRef()
template<>
inline uint64 value()
template<>
inline int64 &valueRef()
template<>
inline int64 value()
template<>
inline float32 value()
template<>
inline float32 &valueRef()
template<>
inline float64 value()
template<>
inline float64 &valueRef()

Private Members

ParameterType type_
Value value_
size_t sizeOf_
std::function<void(const void*)> destructor_
class ice_engine::scripting::ParameterList
#include <ParameterList.hpp>

Public Functions

inline ParameterList()
inline virtual ~ParameterList()
inline Parameter &operator[](size_t index)
inline const Parameter &operator[](size_t index) const
inline size_t size() const
inline std::vector<Parameter>::iterator begin()
inline std::vector<Parameter>::const_iterator begin() const
inline std::vector<Parameter>::const_iterator cbegin() const
inline std::vector<Parameter>::iterator end()
inline std::vector<Parameter>::const_iterator end() const
inline std::vector<Parameter>::const_iterator cend() const
template<typename T>
inline void addRef(T &value)
template<typename T>
inline void add(T value)
inline void add(Parameter p)
inline std::vector<Parameter> &list()

Private Members

std::vector<Parameter> parameters_
struct ice_engine::ecs::ParentBoneAttachmentComponent
#include <ParentBoneAttachmentComponent.hpp>

Public Functions

ParentBoneAttachmentComponent() = default
inline ParentBoneAttachmentComponent(std::string boneName)
inline ParentBoneAttachmentComponent(std::string boneName, glm::ivec4 boneIds, glm::vec4 boneWeights)

Public Members

std::string boneName
glm::ivec4 boneIds
glm::vec4 boneWeights

Public Static Functions

static inline uint8 id()
struct ice_engine::ecs::ParentComponent
#include <ParentComponent.hpp>

Public Functions

ParentComponent() = default
inline ParentComponent(Entity entity)

Public Members

Entity entity

Public Static Functions

static inline uint8 id()
struct ice_engine::ecs::PathfindingAgentComponent
#include <PathfindingAgentComponent.hpp>

Public Functions

PathfindingAgentComponent() = default
inline PathfindingAgentComponent(pathfinding::CrowdHandle crowdHandle, pathfinding::AgentHandle agentHandle, pathfinding::AgentParams agentParams = pathfinding::AgentParams(), glm::vec3 target = glm::vec3())
inline PathfindingAgentComponent(pathfinding::CrowdHandle crowdHandle, pathfinding::AgentParams agentParams, glm::vec3 target)

Public Static Functions

static inline uint8 id()
struct ice_engine::ecs::PathfindingCrowdComponent
#include <PathfindingCrowdComponent.hpp>

Public Functions

PathfindingCrowdComponent() = default
inline PathfindingCrowdComponent(pathfinding::NavigationMeshHandle navigationMeshHandle, pathfinding::CrowdConfig crowdConfig = pathfinding::CrowdConfig(), pathfinding::CrowdHandle crowdHandle = pathfinding::CrowdHandle())

Public Members

pathfinding::NavigationMeshHandle navigationMeshHandle
pathfinding::CrowdConfig crowdConfig
pathfinding::CrowdHandle crowdHandle

Public Static Functions

static inline uint8 id()
class ice_engine::PathfindingEngineBindingDelegate
#include <PathfindingEngineBindingDelegate.hpp>

Public Functions

PathfindingEngineBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, pathfinding::IPathfindingEngine *pathfindingEngine)
~PathfindingEngineBindingDelegate() = default
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
pathfinding::IPathfindingEngine *pathfindingEngine_
struct ice_engine::ecs::PathfindingObstacleComponent
#include <PathfindingObstacleComponent.hpp>

Public Functions

PathfindingObstacleComponent() = default
inline PathfindingObstacleComponent(pathfinding::PolygonMeshHandle polygonMeshHandle, float32 radius = 0.0f, float32 height = 0.0f, pathfinding::ObstacleHandle obstacleHandle = pathfinding::ObstacleHandle())

Public Members

pathfinding::PolygonMeshHandle polygonMeshHandle
float32 radius = 0.0f
float32 height = 0.0f
pathfinding::ObstacleHandle obstacleHandle

Public Static Functions

static inline uint8 id()
class PathfindingSceneHandle : public ice_engine::handles::Handle<PathfindingSceneHandle>
#include <PathfindingSceneHandle.hpp>
class ice_engine::PathfindingTerrain : public ice_engine::pathfinding::ITerrain
#include <PathfindingTerrain.hpp>

Public Functions

PathfindingTerrain() = default
inline PathfindingTerrain(const HeightMap &heightMap)
~PathfindingTerrain() override = default
inline virtual const std::vector<glm::vec3> &vertices() const override
inline virtual const std::vector<uint32> &indices() const override

Private Functions

void generatePathfindingTerrain(const HeightMap &heightMap)

Private Members

std::vector<glm::vec3> vertices_
std::vector<uint32> indices_
class ice_engine::PbrMaterial : public ice_engine::graphics::IPbrMaterial
#include <PbrMaterial.hpp>

Public Functions

inline PbrMaterial(IImage *albedo = nullptr, IImage *normal = nullptr, IImage *metalness = nullptr, IImage *roughness = nullptr, IImage *ambientOcclusion = nullptr)
~PbrMaterial() override = default
inline virtual const graphics::IImage *albedo() const override
inline virtual const graphics::IImage *normal() const override
inline virtual const graphics::IImage *metalness() const override
inline virtual const graphics::IImage *roughness() const override
inline virtual const graphics::IImage *ambientOcclusion() const override

Private Members

IImage *albedo_ = nullptr
IImage *normal_ = nullptr
IImage *metalness_ = nullptr
IImage *roughness_ = nullptr
IImage *ambientOcclusion_ = nullptr
struct ice_engine::ecs::PersistableComponent
#include <PersistableComponent.hpp>

Public Functions

PersistableComponent() = default
class ice_engine::PhysicsEngineBindingDelegate
#include <PhysicsEngineBindingDelegate.hpp>

Public Functions

PhysicsEngineBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, physics::IPhysicsEngine *physicsEngine)
~PhysicsEngineBindingDelegate() = default
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
physics::IPhysicsEngine *physicsEngine_
class PhysicsSceneHandle : public ice_engine::handles::Handle<PhysicsSceneHandle>
#include <PhysicsSceneHandle.hpp>
class ice_engine::PluginManager : public ice_engine::IPluginManager
#include <PluginManager.hpp>

Public Functions

PluginManager(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)
~PluginManager() override = default
virtual const std::vector<std::shared_ptr<IResourceImporterPlugin<Image>>> &getImageResourceImporterPlugins() const override
virtual const std::vector<std::shared_ptr<IGuiPlugin>> &getGuiPlugins() const override
virtual std::shared_ptr<IGraphicsPlugin> getGraphicsPlugin() const override
virtual std::shared_ptr<IAudioPlugin> getAudioPlugin() const override
virtual std::shared_ptr<IPathfindingPlugin> getPathfindingPlugin() const override
virtual std::shared_ptr<IPhysicsPlugin> getPhysicsPlugin() const override
virtual std::shared_ptr<INetworkingPlugin> getNetworkingPlugin() const override
virtual const std::vector<std::shared_ptr<IModulePlugin>> &getModulePlugins() const override
virtual const std::vector<std::shared_ptr<IScriptingEngineBindingPlugin>> &scriptingEngineBindingPlugins() const override

Private Members

utilities::Properties *properties_
fs::IFileSystem *fileSystem_
logger::ILogger *logger_
std::vector<std::shared_ptr<IResourceImporterPlugin<Image>>> imageResourceImporterPlugins_
std::vector<std::shared_ptr<IGuiPlugin>> guiPlugins_
std::shared_ptr<IGraphicsPlugin> graphicsPlugin_
std::shared_ptr<IAudioPlugin> audioPlugin_
std::shared_ptr<IPathfindingPlugin> pathfindingPlugin_
std::shared_ptr<IPhysicsPlugin> physicsPlugin_
std::shared_ptr<INetworkingPlugin> networkingPlugin_
std::vector<std::shared_ptr<IModulePlugin>> modulePlugins_
std::vector<std::shared_ptr<IScriptingEngineBindingPlugin>> scriptingEngineBindingPlugins_
template<typename T>
class ice_engine::handles::PointerHandle : private ice_engine::handles::BasePointerHandle
#include <PointerHandle.hpp>

Public Functions

PointerHandle() = default
inline explicit PointerHandle(void *object)
inline PointerHandle(const PointerHandle &other)
inline PointerHandle(PointerHandle &&other) noexcept
inline void *get()
inline void *get() const
inline void invalidate()
inline bool valid() const
inline explicit operator bool() const
PointerHandle &operator=(const PointerHandle &other) = default
PointerHandle &operator=(PointerHandle &&other) noexcept = default
inline bool operator==(const T &other) const
inline bool operator!=(const T &other) const

Protected Functions

~PointerHandle() = default

Private Members

void *object_ = nullptr
template<typename T, typename HandleType>
struct ice_engine::handles::PointerHandleData
#include <PointerHandleVector.hpp>

Public Members

HandleType handle
T *pointer
template<typename T>
class ice_engine::PointerHandleRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void InitConstructor(T *memory, void *object)
static inline void CopyConstructor(T *memory, const T &other)
static inline void DefaultDestructor(T *memory)
template<typename T, typename HandleType>
class ice_engine::handles::PointerHandleVector
#include <PointerHandleVector.hpp>

Public Types

typedef PointerHandleVectorIterator<T, HandleType> iterator
typedef PointerHandleVectorConstIterator<T, HandleType> const_iterator
typedef ptrdiff_t difference_type
typedef size_t size_type
typedef T value_type
typedef T *pointer
typedef T &reference

Public Functions

PointerHandleVector() = default
template<typename ...Args>
inline HandleType create(Args&&... args)
inline void destroy(const HandleType &handle)
inline bool valid(const HandleType &handle) const
inline HandleType handle(const uint32 index) const
inline size_t size() const
inline void clear()
inline T *get(const HandleType &handle) const
inline T &operator[](const HandleType &handle) const
inline T &operator[](const uint32 index) const
inline iterator begin()
inline iterator end()
inline const_iterator begin() const
inline const_iterator end() const
inline const_iterator cbegin() const
inline const_iterator cend() const

Private Functions

inline uint32 findIndexOfFirstValidHandle() const
inline uint32 index(const HandleType &handle) const
inline bool valid(const uint32 index) const
inline T *get(const uint32 index) const

Private Members

memory::MemoryPool<T> memoryPool_
std::vector<PointerHandleData<T, HandleType>> handleData_
std::vector<uint32> freeList_

Friends

friend class PointerHandleVectorIterator< T, HandleType >
friend class PointerHandleVectorConstIterator< T, HandleType >
template<typename T, typename HandleType>
class ice_engine::handles::PointerHandleVectorConstIterator
#include <PointerHandleVector.hpp>

Public Functions

inline PointerHandleVectorConstIterator(const PointerHandleVector<T, HandleType> &handleManager, uint32 index)
inline bool operator==(PointerHandleVectorConstIterator other) const
inline bool operator!=(PointerHandleVectorConstIterator other) const
inline const T &operator*() const
inline const T *operator->() const
inline PointerHandleVectorConstIterator<T, HandleType> &operator++()
inline PointerHandleVectorConstIterator<T, HandleType> operator++(int)
inline HandleType handle() const

Private Members

const PointerHandleVector<T, HandleType> &handleManager_
uint32 index_ = 0
template<typename T, typename HandleType>
class ice_engine::handles::PointerHandleVectorIterator
#include <PointerHandleVector.hpp>

Public Functions

inline PointerHandleVectorIterator(PointerHandleVector<T, HandleType> &handleManager, uint32 index)
inline PointerHandleVectorIterator(const PointerHandleVectorIterator &other)
inline PointerHandleVectorIterator(PointerHandleVectorIterator &&other)
inline bool operator==(PointerHandleVectorIterator other) const
inline bool operator!=(PointerHandleVectorIterator other) const
inline T &operator*() const
inline T *operator->() const
inline PointerHandleVectorIterator<T, HandleType> &operator++()
inline PointerHandleVectorIterator<T, HandleType> operator++(int)
inline HandleType handle() const

Private Members

PointerHandleVector<T, HandleType> &handleManager_
uint32 index_ = 0
struct ice_engine::ecs::PointLightComponent
#include <PointLightComponent.hpp>

Public Functions

PointLightComponent() = default
inline PointLightComponent(graphics::PointLightHandle pointLightHandle)

Public Members

graphics::PointLightHandle pointLightHandle

Public Static Functions

static inline uint8 id()
class PointLightHandle : public ice_engine::handles::Handle<PointLightHandle>
#include <PointLightHandle.hpp>
struct ice_engine::pathfinding::PolygonMeshConfig
#include <PolygonMeshConfig.hpp>

Public Members

int width = 0
int height = 0
int tileSize = 48
int borderSize = 0
float cellSize = 1.0f
float cellHeight = 1.0f
float walkableSlopeAngle = 0.0f
int walkableHeight = 0
int walkableClimb = 0
int walkableRadius = 0
int maxEdgeLength = 0
float maxSimplificationError = 0.0f
int minRegionArea = 0
int mergeRegionArea = 0
int maxVertsPerPoly = 3
float detailSampleDist = 0.0f
float detailSampleMaxError = 0.0f
int maxObstacles = 128
class PolygonMeshHandle : public ice_engine::handles::Handle<PolygonMeshHandle>
#include <PolygonMeshHandle.hpp>
struct ice_engine::ecs::PositionComponent
#include <PositionComponent.hpp>

Public Functions

PositionComponent() = default
inline PositionComponent(glm::vec3 position)

Public Members

glm::vec3 position

Public Static Functions

static inline uint8 id()
struct ice_engine::ecs::PositionOrientationComponent
#include <PositionOrientationComponent.hpp>

Public Functions

PositionOrientationComponent() = default
inline PositionOrientationComponent(glm::vec3 position, glm::quat orientation)
inline PositionOrientationComponent(glm::vec3 position, glm::vec3 lookAt)

Public Members

glm::vec3 position
glm::quat orientation = glm::quat(1.0f, 0.0f, 0.0f, 0.0f)
class ice_engine::utilities::Properties
#include <Properties.hpp>

Public Functions

Properties() = default
Properties(fs::IFile *file)
Properties(const std::string &properties)
~Properties() = default
inline std::string getStringValue(const std::string &name, std::string defaultValue = std::string()) const
inline int32 getIntValue(const std::string &name, const int32 defaultValue = 0) const
inline int64 getLongValue(const std::string &name, const int64 defaultValue = 0L) const
inline float32 getFloatValue(const std::string &name, const float32 defaultValue = 0.0f) const
inline float64 getDoubleValue(const std::string &name, const float64 defaultValue = 0.0) const
inline bool getBoolValue(const std::string &name, const bool defaultValue = false) const

Private Members

std::unordered_map<std::string, std::string> parameters_
struct ice_engine::ecs::PropertiesComponent
#include <PropertiesComponent.hpp>

Public Functions

PropertiesComponent() = default
inline PropertiesComponent(std::unordered_map<std::string, std::string> properties)

Public Members

std::unordered_map<std::string, std::string> properties

Public Static Functions

static inline uint8 id()
template<typename T>
class gw::Proxy
#include <aswrappedcall.h>

Public Functions

inline Proxy(T value)

Public Members

T value

Public Static Functions

static inline T cast(void *ptr)

Private Functions

Proxy(const Proxy&)
Proxy &operator=(const Proxy&)
struct ice_engine::ray::Ray
#include <Ray.hpp>

Public Functions

Ray() = default
inline Ray(const glm::vec3 &from, const glm::vec3 &to)

Public Members

glm::vec3 from
glm::vec3 to
class ice_engine::physics::Raycast
#include <Raycast.hpp>

Public Functions

Raycast() = default
inline Raycast(const ray::Ray &ray)
inline const ray::Ray &ray() const
inline void setRay(const ray::Ray &ray)
inline const glm::vec3 &hitPointWorld() const
inline void setHitPointWorld(const glm::vec3 &hitPointWorld)
inline const glm::vec3 &hitNormalWorld() const
inline void setHitNormalWorld(const glm::vec3 &hitNormalWorld)
inline const RigidBodyObjectHandle &rigidBodyObjectHandle() const
inline void setRigidBodyObjectHandle(const RigidBodyObjectHandle &rigidBodyObjectHandle)
inline const GhostObjectHandle &ghostObjectHandle() const
inline void setGhostObjectHandle(const GhostObjectHandle &ghostObjectHandle)

Private Members

ray::Ray ray_
glm::vec3 hitPointWorld_
glm::vec3 hitNormalWorld_
RigidBodyObjectHandle rigidBodyObjectHandle_
GhostObjectHandle ghostObjectHandle_
class ice_engine::Raycast
#include <Raycast.hpp>

Public Functions

Raycast() = default
inline Raycast(const ray::Ray &ray)
inline const ray::Ray &ray() const
inline void setRay(const ray::Ray &ray)
inline const glm::vec3 &hitPointWorld() const
inline void setHitPointWorld(const glm::vec3 &hitPointWorld)
inline const glm::vec3 &hitNormalWorld() const
inline void setHitNormalWorld(const glm::vec3 &hitNormalWorld)
inline ecs::Entity entity() const
inline void setEntity(const ecs::Entity &entity)

Private Members

ray::Ray ray_
glm::vec3 hitPointWorld_
glm::vec3 hitNormalWorld_
ecs::Entity entity_
class RemoteConnectionHandle : public ice_engine::handles::Handle<RemoteConnectionHandle>
#include <RemoteConnectionHandle.hpp>
class RenderableHandle : public ice_engine::handles::Handle<RenderableHandle>
#include <RenderableHandle.hpp>
class RenderSceneHandle : public ice_engine::handles::Handle<RenderSceneHandle>
#include <RenderSceneHandle.hpp>
class ice_engine::ResourceCache : public ice_engine::IResourceCache
#include <ResourceCache.hpp>

Public Functions

~ResourceCache() override = default
virtual void addAudio(const std::string &name, std::unique_ptr<Audio> audio) override
virtual void addImage(const std::string &name, std::unique_ptr<Image> image) override
virtual void addModel(const std::string &name, std::unique_ptr<Model> model) override
virtual void removeAudio(const std::string &name) override
virtual void removeImage(const std::string &name) override
virtual void removeModel(const std::string &name) override
virtual Audio *getAudio(const std::string &name) const override
virtual Image *getImage(const std::string &name) const override
virtual Model *getModel(const std::string &name) const override

Private Members

std::unordered_map<std::string, std::unique_ptr<Model>> models_
std::unordered_map<std::string, std::unique_ptr<Audio>> audios_
std::unordered_map<std::string, std::unique_ptr<Image>> images_
std::unique_ptr<Image> imagesTest_
mutable std::recursive_mutex audioMutex_
mutable std::recursive_mutex imageMutex_
mutable std::recursive_mutex modelMutex_
class ice_engine::ResourceHandleCache
#include <ResourceHandleCache.hpp>

Public Functions

inline void addCollisionShapeHandle(const std::string &name, const physics::CollisionShapeHandle &handle)
inline void removeCollisionShapeHandle(const std::string &name)
inline void removeAllCollisionShapeHandles()
inline physics::CollisionShapeHandle getCollisionShapeHandle(const std::string &name) const
inline void addModelHandle(const std::string &name, const ModelHandle &handle)
inline void removeModelHandle(const std::string &name)
inline void removeAllModelHandles()
inline ModelHandle getModelHandle(const std::string &name) const
inline void addSkeletonHandle(const std::string &name, const SkeletonHandle &handle)
inline void removeSkeletonHandle(const std::string &name)
inline void removeAllSkeletonHandles()
inline SkeletonHandle getSkeletonHandle(const std::string &name) const
inline void addAnimationHandle(const std::string &name, const AnimationHandle &handle)
inline void removeAnimationHandle(const std::string &name)
inline void removeAllAnimationHandles()
inline AnimationHandle getAnimationHandle(const std::string &name) const
inline void addMeshHandle(const std::string &name, const graphics::MeshHandle &handle)
inline void removeMeshHandle(const std::string &name)
inline void removeAllMeshHandles()
inline graphics::MeshHandle getMeshHandle(const std::string &name) const
inline void addTextureHandle(const std::string &name, const graphics::TextureHandle &handle)
inline void removeTextureHandle(const std::string &name)
inline void removeAllTextureHandles()
inline graphics::TextureHandle getTextureHandle(const std::string &name) const
inline void addTerrainHandle(const std::string &name, const graphics::TerrainHandle &handle)
inline void removeTerrainHandle(const std::string &name)
inline void removeAllTerrainHandles()
inline graphics::TerrainHandle getTerrainHandle(const std::string &name) const
inline void addSkyboxHandle(const std::string &name, const graphics::SkyboxHandle &handle)
inline void removeSkyboxHandle(const std::string &name)
inline void removeAllSkyboxHandles()
inline graphics::SkyboxHandle getSkyboxHandle(const std::string &name) const
inline void addSoundHandle(const std::string &name, const audio::SoundHandle &handle)
inline void removeSoundHandle(const std::string &name)
inline void removeAllSoundHandles()
inline audio::SoundHandle getSoundHandle(const std::string &name) const
inline void addPolygonMeshHandle(const std::string &name, const pathfinding::PolygonMeshHandle &handle)
inline void removePolygonMeshHandle(const std::string &name)
inline void removeAllPolygonMeshHandles()
inline pathfinding::PolygonMeshHandle getPolygonMeshHandle(const std::string &name) const
inline void addNavigationMeshHandle(const std::string &name, const pathfinding::NavigationMeshHandle &handle)
inline void removeNavigationMeshHandle(const std::string &name)
inline void removeAllNavigationMeshHandles()
inline pathfinding::NavigationMeshHandle getNavigationMeshHandle(const std::string &name) const
inline std::unordered_map<std::string, physics::CollisionShapeHandle> collisionShapeHandleMap()
inline std::unordered_map<std::string, ModelHandle> modelHandleMap()
inline std::unordered_map<std::string, SkeletonHandle> skeletonHandleMap()
inline std::unordered_map<std::string, AnimationHandle> animationHandleMap()
inline std::unordered_map<std::string, graphics::MeshHandle> meshHandleMap()
inline std::unordered_map<std::string, graphics::TextureHandle> textureHandleMap()
inline std::unordered_map<std::string, graphics::TerrainHandle> terrainHandleMap()
inline std::unordered_map<std::string, graphics::SkyboxHandle> skyboxHandleMap()
inline std::unordered_map<std::string, audio::SoundHandle> soundHandleMap()
inline std::unordered_map<std::string, pathfinding::PolygonMeshHandle> polygonMeshHandleMap()
inline std::unordered_map<std::string, pathfinding::NavigationMeshHandle> navigationMeshHandleMap()

Private Members

mutable boost::shared_mutex collisionShapeHandleMutex_
mutable boost::shared_mutex modelHandleMutex_
mutable boost::shared_mutex skeletonHandleMutex_
mutable boost::shared_mutex animationHandleMutex_
mutable boost::shared_mutex meshHandleMutex_
mutable boost::shared_mutex textureHandleMutex_
mutable boost::shared_mutex terrainHandleMutex_
mutable boost::shared_mutex skyboxHandleMutex_
mutable boost::shared_mutex soundHandleMutex_
mutable boost::shared_mutex polygonMeshHandleMutex_
mutable boost::shared_mutex navigationMeshHandleMutex_
std::unordered_map<std::string, physics::CollisionShapeHandle> collisionShapeHandleMap_
std::unordered_map<std::string, ModelHandle> modelHandleMap_
std::unordered_map<std::string, SkeletonHandle> skeletonHandleMap_
std::unordered_map<std::string, AnimationHandle> animationHandleMap_
std::unordered_map<std::string, graphics::MeshHandle> meshHandleMap_
std::unordered_map<std::string, graphics::TextureHandle> textureHandleMap_
std::unordered_map<std::string, graphics::TerrainHandle> terrainHandleMap_
std::unordered_map<std::string, graphics::SkyboxHandle> skyboxHandleMap_
std::unordered_map<std::string, audio::SoundHandle> soundHandleMap_
std::unordered_map<std::string, pathfinding::PolygonMeshHandle> polygonMeshHandleMap_
std::unordered_map<std::string, pathfinding::NavigationMeshHandle> navigationMeshHandleMap_
template<typename T>
class ice_engine::ResourceManager : public ice_engine::BaseResourceManager
#include <ResourceManager.hpp>

Public Functions

inline ResourceManager(std::unordered_map<std::string, std::unique_ptr<IResourceImporter<T>>> importers)
~ResourceManager() override = default
ResourceManager(const ResourceManager&) = delete
ResourceManager &operator=(const ResourceManager&) = delete
ResourceManager(ResourceManager&&) = default
ResourceManager &operator=(ResourceManager&&) noexcept = default
inline T *import(const std::string &name, const std::string &filename, const std::string &importer = "")
inline void destroy(const std::string &name)
inline void destroy(const T *resource)
inline void destroyAll()
inline bool exists(const std::string &name) const
inline T *get(const std::string &name) const

Protected Functions

inline IResourceImporter<T> *findImporter(const std::string &filename, const std::string &importer = "")

Protected Attributes

std::unordered_map<std::string, std::unique_ptr<IResourceImporter<T>>> importers_
std::unordered_map<std::string, std::unique_ptr<T>> map_
mutable std::recursive_mutex mutex_
template<typename T>
class ice_engine::scripting::ReturnObject
#include <ReturnObject.hpp>

Public Functions

inline ReturnObject()
inline virtual ~ReturnObject()
inline std::function<void(void*)> parser()

Public Members

T value
struct ice_engine::ecs::RigidBodyObjectComponent
#include <RigidBodyObjectComponent.hpp>

Public Functions

RigidBodyObjectComponent() = default
inline RigidBodyObjectComponent(physics::CollisionShapeHandle collisionShapeHandle)
inline RigidBodyObjectComponent(physics::CollisionShapeHandle collisionShapeHandle, float32 mass, float32 friction, float32 restitution)
inline RigidBodyObjectComponent(physics::CollisionShapeHandle collisionShapeHandle, float32 mass, float32 friction, float32 restitution, physics::RigidBodyObjectHandle rigidBodyObjectHandle)

Public Members

physics::CollisionShapeHandle collisionShapeHandle
float32 mass = 1.0f
float32 friction = 1.0f
float32 restitution = 1.0f
physics::RigidBodyObjectHandle rigidBodyObjectHandle

Public Static Functions

static inline uint8 id()
class ice_engine::physics::RigidBodyObjectHandle : public ice_engine::handles::PointerHandle<RigidBodyObjectHandle>
#include <RigidBodyObjectHandle.hpp>

Public Static Attributes

static const RigidBodyObjectHandle INVALID
class RuntimeException : public ice_engine::Exception
#include <RuntimeException.hpp>
struct SArrayBuffer

Public Members

asDWORD maxElements
asDWORD numElements
asBYTE data[1]
struct SArrayCache

Public Members

asIScriptFunction *cmpFunc
asIScriptFunction *eqFunc
int cmpFuncReturnCode
int eqFuncReturnCode
class ice_engine::Scene : private ice_engine::serialization::ISerializable
#include <Scene.hpp>

Public Functions

Scene(const std::string &name, const std::vector<std::string> &scriptData, const std::string &initializationFunctionName, GameEngine *gameEngine, ITerrainFactory *terrainFactory, utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)
Scene(const std::string &name, const scripting::ModuleHandle moduleHandle, const std::string &initializationFunctionName, GameEngine *gameEngine, ITerrainFactory *terrainFactory, utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)
~Scene()
void tick(const float32 delta)
void render()
void setSceneThingyInstance(void *object)
void setDebugRendering(const bool enabled)
bool debugRendering() const
void createResources(const ecs::Entity &entity)
void destroyResources(const ecs::Entity &entity)
pathfinding::CrowdHandle createCrowd(const pathfinding::NavigationMeshHandle &navigationMeshHandle, const pathfinding::CrowdConfig &crowdConfig)
void destroy(const pathfinding::CrowdHandle &crowdHandle)
pathfinding::AgentHandle createAgent(const pathfinding::CrowdHandle &crowdHandle, const glm::vec3 &position, const pathfinding::AgentParams &agentParams = pathfinding::AgentParams())
void destroy(const pathfinding::CrowdHandle &crowdHandle, const pathfinding::AgentHandle &agentHandle)
void requestMoveTarget(const pathfinding::CrowdHandle &crowdHandle, const pathfinding::AgentHandle &agentHandle, const glm::vec3 &position)
inline void resetMoveTarget(const pathfinding::CrowdHandle &crowdHandle, const pathfinding::AgentHandle &agentHandle)
void requestMoveVelocity(const pathfinding::CrowdHandle &crowdHandle, const pathfinding::AgentHandle &agentHandle, const glm::vec3 &velocity)
physics::RigidBodyObjectHandle createRigidBodyObject(const physics::CollisionShapeHandle &collisionShapeHandle)
physics::RigidBodyObjectHandle createRigidBodyObject(const physics::CollisionShapeHandle &collisionShapeHandle, const float32 mass, const float32 friction, const float32 restitution)
physics::RigidBodyObjectHandle createRigidBodyObject(const physics::CollisionShapeHandle &collisionShapeHandle, const glm::vec3 &position, const glm::quat &orientation, const float32 mass = 1.0f, const float32 friction = 1.0f, const float32 restitution = 1.0f)
void destroy(const physics::RigidBodyObjectHandle &rigidBodyObjectHandle)
physics::GhostObjectHandle createGhostObject(const physics::CollisionShapeHandle &collisionShapeHandle)
physics::GhostObjectHandle createGhostObject(const physics::CollisionShapeHandle &collisionShapeHandle, const glm::vec3 &position, const glm::quat &orientation)
void destroy(const physics::GhostObjectHandle &ghostObjectHandle)
graphics::RenderableHandle createRenderable(const ModelHandle &modelHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f))
graphics::RenderableHandle createRenderable(const graphics::MeshHandle &meshHandle, const graphics::TextureHandle &textureHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f))
void destroy(const graphics::RenderableHandle &renderableHandle)
audio::SoundSourceHandle play(const audio::SoundHandle &soundHandle, const glm::vec3 &position)
graphics::PointLightHandle createPointLight(const glm::vec3 &position)
void destroy(const graphics::PointLightHandle &pointLightHandle)
inline graphics::BonesHandle createBones(const uint32 maxNumberOfBones)
inline void destroy(const graphics::BonesHandle &bonesHandle)
inline void attach(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle)
inline void detach(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle)
inline void attachBoneAttachment(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle, const glm::ivec4 &boneIds, const glm::vec4 &boneWeights)
inline void attachBoneAttachment(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle, const graphics::MeshHandle meshHandle, const std::string &boneName, const glm::ivec4 &boneIds, const glm::vec4 &boneWeights)
inline void detachBoneAttachment(const graphics::RenderableHandle &renderableHandle)
inline graphics::TerrainRenderableHandle createTerrainRenderable(const graphics::TerrainHandle terrainHandle)
inline void destroy(const graphics::TerrainRenderableHandle &terrainRenderableHandle)
inline ITerrain *testCreateTerrain(HeightMap heightMap, SplatMap splatMap, DisplacementMap displacementMap, physics::CollisionShapeHandle collisionShapeHandle, pathfinding::PolygonMeshHandle polygonMeshHandle, pathfinding::NavigationMeshHandle navigationMeshHandle)
inline graphics::SkyboxRenderableHandle createSkyboxRenderable(const graphics::SkyboxHandle skyboxHandle)
inline void destroy(const graphics::SkyboxRenderableHandle &skyboxRenderableHandle)
inline pathfinding::IPathfindingEngine &pathfindingEngine() const
template<typename ...C>
inline void entitiesWithComponents(void *object)
template<typename ...C>
inline void entitiesWithComponents(void *object) const
virtual void serialize(const std::string &filename) override

Serialize the object to the provided filename.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

virtual void deserialize(const std::string &filename) override

Deserializes the object from the provided filename.

Not Thread Safe: This method is not safe to call in a multi-threaded environment. When you are calling this method, no other threads should be accessing this object.

inline void addPreSerializeCallback(std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)> callback)
inline void addPostSerializeCallback(std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)> callback)
inline void addPreDeserializeCallback(std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const unsigned int)> callback)
inline void addPostDeserializeCallback(std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const std::unordered_map<physics::CollisionShapeHandle, physics::CollisionShapeHandle>&, const std::unordered_map<ModelHandle, ModelHandle>&, const std::unordered_map<graphics::MeshHandle, graphics::MeshHandle>&, const std::unordered_map<graphics::TextureHandle, graphics::TextureHandle>&, const std::unordered_map<SkeletonHandle, SkeletonHandle>&, const std::unordered_map<AnimationHandle, AnimationHandle>&, const std::unordered_map<graphics::TerrainHandle, graphics::TerrainHandle>&, const std::unordered_map<std::string, pathfinding::PolygonMeshHandle>&, const std::unordered_map<pathfinding::NavigationMeshHandle, pathfinding::NavigationMeshHandle>&, const std::unordered_map<scripting::ScriptObjectHandle, std::string>&, const std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle>&, const unsigned int)> callback)
inline void addPreSerializeCallback(void *object)
inline void addPostSerializeCallback(void *object)
inline void addPreDeserializeCallback(void *object)
inline void addPostDeserializeCallback(void *object)
const std::string &name() const
void setVisible(const bool visible)
bool visible() const
void setActive(const bool active)
bool active() const
const SceneStatistics &getSceneStatistics() const
ecs::Entity createEntity()
std::shared_future<ecs::Entity> createEntityAsync()
void destroy(ecs::Entity &entity)
void destroyAsync(ecs::Entity &entity)
size_t getNumEntities() const
Raycast raycast(const ray::Ray &ray)
std::vector<ecs::Entity> query(const glm::vec3 &origin, const std::vector<glm::vec3> &points)
std::vector<ecs::Entity> query(const glm::vec3 &origin, const float32 radius)

Private Functions

void initialize()
void destroy()
void tickPhysics(const float32 delta)
void tickAudio(const float32 delta)
void tickPathfinding(const float32 delta)
void tickScriptObjects(const float32 delta)
void tickAnimations(const float32 delta)
void handleAsyncEntityCreation()
void handleAsyncEntityDeletion()
void handleParentComponentChanges()
void applyChangesToEntities()
void addMotionChangeListener(const ecs::Entity &entity)
void addPathfindingAgentMotionChangeListener(const ecs::Entity &entity)
void addPathfindingMovementRequestStateChangeListener(const ecs::Entity &entity)
void removeMotionChangeListener(const ecs::Entity &entity)
void removePathfindingAgentMotionChangeListener(const ecs::Entity &entity)
void removePathfindingMovementRequestStateChangeListener(const ecs::Entity &entity)
void addUserData(const ecs::Entity &entity, const ecs::RigidBodyObjectComponent &rigidBodyObjectComponent)
void addUserData(const ecs::Entity &entity, const ecs::GhostObjectComponent &ghostObjectComponent)
void addUserData(const ecs::Entity &entity, const ecs::PathfindingAgentComponent &pathfindingAgentComponent)
void removeUserData(const ecs::Entity &entity, const ecs::RigidBodyObjectComponent &rigidBodyObjectComponent)
void removeUserData(const ecs::Entity &entity, const ecs::GhostObjectComponent &ghostObjectComponent)
void removeUserData(const ecs::Entity &entity, const ecs::PathfindingAgentComponent &pathfindingAgentComponent)
template<class Archive>
inline void serialize(Archive &ar, const unsigned int version)
std::unordered_map<scripting::ScriptObjectHandle, std::string> getScriptObjectNameMap() const
template<class Archive>
inline void saveMappings(Archive &ar, const unsigned int version) const
template<class Archive>
inline void loadMappings(Archive &ar, const unsigned int version) const
template<class Handle>
inline auto generateNormalizedMap(const std::unordered_map<std::string, Handle> &oldMap, const std::unordered_map<std::string, Handle> &newMap, logger::ILogger *logger)
void normalizeHandles(const std::unordered_map<physics::CollisionShapeHandle, physics::CollisionShapeHandle> &normalizedCollisionShapeHandleMap, const std::unordered_map<ModelHandle, ModelHandle> &normalizedModelHandleMap, const std::unordered_map<graphics::MeshHandle, graphics::MeshHandle> &normalizedMeshHandleMap, const std::unordered_map<graphics::TextureHandle, graphics::TextureHandle> &normalizedTextureHandleMap, const std::unordered_map<SkeletonHandle, SkeletonHandle> &normalizedSkeletonHandleMap, const std::unordered_map<AnimationHandle, AnimationHandle> &normalizedAnimationHandleMap, const std::unordered_map<graphics::TerrainHandle, graphics::TerrainHandle> &normalizedTerrainHandleMap, const std::unordered_map<std::string, pathfinding::PolygonMeshHandle> &polygonMeshHandleMap, const std::unordered_map<pathfinding::NavigationMeshHandle, pathfinding::NavigationMeshHandle> &normalizedNavigationMeshHandleMap, const std::unordered_map<scripting::ScriptObjectHandle, std::string> &scriptObjectHandleMap, std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle> &normalizedCrowdHandleMap)
template<class Archive>
inline void save(Archive &ar, const unsigned int version) const
template<class Archive>
inline void load(Archive &ar, const unsigned int version)

Private Members

std::string name_
bool visible_ = true
bool active_ = true
GameEngine *gameEngine_
audio::IAudioEngine *audioEngine_
graphics::IGraphicsEngine *graphicsEngine_
ITerrainFactory *terrainFactory_
physics::IPhysicsEngine *physicsEngine_
pathfinding::IPathfindingEngine *pathfindingEngine_
scripting::IScriptingEngine *scriptingEngine_
utilities::Properties *properties_
fs::IFileSystem *fileSystem_
logger::ILogger *logger_
IThreadPool *threadPool_
IOpenGlLoader *openGlLoader_
bool debugRendering_ = false
audio::AudioSceneHandle audioSceneHandle_
graphics::RenderSceneHandle renderSceneHandle_
physics::PhysicsSceneHandle physicsSceneHandle_
pathfinding::PathfindingSceneHandle pathfindingSceneHandle_
scripting::ExecutionContextHandle executionContextHandle_
scripting::ModuleHandle moduleHandle_
scripting::ScriptObjectHandle scriptObjectHandle_
SceneStatistics sceneStatistics_
std::unique_ptr<ecs::EntityComponentSystem> entityComponentSystem_
std::unique_ptr<EntityComponentSystemEventListener> entityComponentSystemEventListener_
std::vector<std::unique_ptr<std::promise<ecs::Entity>>> asyncCreateEntities_
std::vector<ecs::Entity> asyncDestroyEntities_
std::vector<std::unique_ptr<ITerrain>> terrain_
boost::optional<std::vector<std::string>> scriptData_
std::string initializationFunctionName_
std::vector<std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)>> preSerializeCallbacks_
std::vector<std::function<void(serialization::TextOutArchive&, ecs::EntityComponentSystem&, const unsigned int)>> postSerializeCallbacks_
std::vector<std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const unsigned int)>> preDeserializeCallbacks_
std::vector<std::function<void(serialization::TextInArchive&, ecs::EntityComponentSystem&, const std::unordered_map<physics::CollisionShapeHandle, physics::CollisionShapeHandle>&, const std::unordered_map<ModelHandle, ModelHandle>&, const std::unordered_map<graphics::MeshHandle, graphics::MeshHandle>&, const std::unordered_map<graphics::TextureHandle, graphics::TextureHandle>&, const std::unordered_map<SkeletonHandle, SkeletonHandle>&, const std::unordered_map<AnimationHandle, AnimationHandle>&, const std::unordered_map<graphics::TerrainHandle, graphics::TerrainHandle>&, const std::unordered_map<std::string, pathfinding::PolygonMeshHandle>&, const std::unordered_map<pathfinding::NavigationMeshHandle, pathfinding::NavigationMeshHandle>&, const std::unordered_map<scripting::ScriptObjectHandle, std::string>&, const std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle>&, const unsigned int)>> postDeserializeCallbacks_
std::vector<ScriptFunctionHandleWrapper> scriptPreSerializeCallbacks_
std::vector<ScriptFunctionHandleWrapper> scriptPostSerializeCallbacks_
std::vector<ScriptFunctionHandleWrapper> scriptPreDeserializeCallbacks_
std::vector<ScriptFunctionHandleWrapper> scriptPostDeserializeCallbacks_

Friends

friend class boost::serialization::access
class ice_engine::SceneBindingDelegate
#include <SceneBindingDelegate.hpp>

Public Functions

SceneBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine, GameEngine *gameEngine, graphics::IGraphicsEngine *graphicsEngine, audio::IAudioEngine *audioEngine, networking::INetworkingEngine *networkingEngine, physics::IPhysicsEngine *physicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine)
void bind()

Private Members

logger::ILogger *logger_
GameEngine *gameEngine_
scripting::IScriptingEngine *scriptingEngine_
graphics::IGraphicsEngine *graphicsEngine_
audio::IAudioEngine *audioEngine_
networking::INetworkingEngine *networkingEngine_
physics::IPhysicsEngine *physicsEngine_
pathfinding::IPathfindingEngine *pathfindingEngine_
class ice_engine::ecs::SceneDelegate
#include <Entity.hpp>

Public Functions

inline SceneDelegate(Scene *scene = nullptr)
const std::string &name() const
pathfinding::CrowdHandle createCrowd(const pathfinding::NavigationMeshHandle &navigationMeshHandle, const pathfinding::CrowdConfig &crowdConfig)
void destroy(const pathfinding::CrowdHandle &crowdHandle)
pathfinding::AgentHandle createAgent(const pathfinding::CrowdHandle &crowdHandle, const glm::vec3 &position, const pathfinding::AgentParams &agentParams = pathfinding::AgentParams())
void destroy(const pathfinding::CrowdHandle &crowdHandle, const pathfinding::AgentHandle &agentHandle)
physics::RigidBodyObjectHandle createRigidBodyObject(const physics::CollisionShapeHandle &collisionShapeHandle)
physics::RigidBodyObjectHandle createRigidBodyObject(const physics::CollisionShapeHandle &collisionShapeHandle, const float32 mass, const float32 friction, const float32 restitution)
physics::RigidBodyObjectHandle createRigidBodyObject(const physics::CollisionShapeHandle &collisionShapeHandle, const glm::vec3 &position, const glm::quat &orientation, const float32 mass = 1.0f, const float32 friction = 1.0f, const float32 restitution = 1.0f)
void destroy(const physics::RigidBodyObjectHandle &rigidBodyObjectHandle)
physics::GhostObjectHandle createGhostObject(const physics::CollisionShapeHandle &collisionShapeHandle)
physics::GhostObjectHandle createGhostObject(const physics::CollisionShapeHandle &collisionShapeHandle, const glm::vec3 &position, const glm::quat &orientation)
void destroy(const physics::GhostObjectHandle &ghostObjectHandle)
graphics::RenderableHandle createRenderable(const ModelHandle &modelHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f))
graphics::RenderableHandle createRenderable(const graphics::MeshHandle &meshHandle, const graphics::TextureHandle &textureHandle, const glm::vec3 &position, const glm::quat &orientation, const glm::vec3 &scale = glm::vec3(1.0f))
void destroy(const graphics::RenderableHandle &renderableHandle)
graphics::PointLightHandle createPointLight(const glm::vec3 &position)
void destroy(const graphics::PointLightHandle &pointLightHandle)
graphics::BonesHandle createBones(const uint32 maxNumberOfBones)
void destroy(const graphics::BonesHandle &bonesHandle)
void attach(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle)
void detach(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle)
void attachBoneAttachment(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle, const glm::ivec4 &boneIds, const glm::vec4 &boneWeights)
void attachBoneAttachment(const graphics::RenderableHandle &renderableHandle, const graphics::BonesHandle &bonesHandle, const graphics::MeshHandle meshHandle, const std::string &boneName, const glm::ivec4 &boneIds, const glm::vec4 &boneWeights)
void detachBoneAttachment(const graphics::RenderableHandle &renderableHandle)
graphics::TerrainRenderableHandle createTerrainRenderable(const graphics::TerrainHandle terrainHandle)
void destroy(const graphics::TerrainRenderableHandle &terrainRenderableHandle)
graphics::SkyboxRenderableHandle createSkyboxRenderable(const graphics::SkyboxHandle skyboxHandle)
void destroy(const graphics::SkyboxRenderableHandle &skyboxRenderableHandle)
pathfinding::IPathfindingEngine &pathfindingEngine() const

Private Members

Scene *scene_ = nullptr
struct ice_engine::SceneStatistics
#include <SceneStatistics.hpp>

Public Members

float32 physicsTime
float32 renderTime
struct CScriptBuilder::SClassMetadata
#include <scriptbuilder.h>

Public Functions

inline SClassMetadata(const std::string &aName)

Public Members

std::string className
std::map<int, std::vector<std::string>> funcMetadataMap
std::map<int, std::vector<std::string>> varMetadataMap
class ice_engine::scripting::ScriptFunctionHandle : public ice_engine::handles::PointerHandle<ScriptFunctionHandle>
#include <ScriptFunctionHandle.hpp>

Public Static Attributes

static const ScriptFunctionHandle INVALID
class ice_engine::ScriptFunctionHandleWrapper
#include <ScriptFunctionHandleWrapper.hpp>

Public Functions

ScriptFunctionHandleWrapper(scripting::IScriptingEngine *scriptingEngine, scripting::ScriptFunctionHandle scriptFunctionHandle)
virtual ~ScriptFunctionHandleWrapper()
scripting::ScriptFunctionHandle get() const

Private Members

std::shared_ptr<std::pair<scripting::IScriptingEngine*, scripting::ScriptFunctionHandle>> data_
class ScriptHandle : public ice_engine::handles::Handle<ScriptHandle>
#include <ScriptHandle.hpp>
class ice_engine::scripting::angel_script::ScriptingEngine : public ice_engine::scripting::IScriptingEngine
#include <ScriptingEngine.hpp>

Public Functions

ScriptingEngine(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)
ScriptingEngine(const ScriptingEngine &other) = delete
~ScriptingEngine() override
virtual void run(const std::string &filename, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void run(const std::string &filename, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const std::string &scriptData, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, std::function<void(void*)> returnObjectParser, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, float32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, float64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint8 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint16 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint32 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, int64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual void execute(const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments, uint64 &returnValue, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0)) override
virtual ExecutionContextHandle createExecutionContext() override
virtual void destroyExecutionContext(const ExecutionContextHandle &executionContextHandle) override
virtual std::string getScriptObjectName(const ScriptObjectHandle &scriptObjectHandle) const override
virtual ScriptObjectHandle createUninitializedScriptObject(const ModuleHandle &moduleHandle, const std::string &name) override
virtual ModuleHandle createModule(const std::string &name, const std::vector<std::string> &scriptData, const std::unordered_map<std::string, std::string> &includeOverrides = {}) override
virtual ModuleHandle getModule(const std::string &name) const override
virtual void destroyModule(const ModuleHandle &moduleHandle) override
virtual void destroyAllModules() override
virtual void releaseScriptObject(const ScriptObjectHandle &scriptObjectHandle) override
virtual void releaseAllScriptObjects() override
virtual void releaseScriptObjectFunction(const ScriptObjectFunctionHandle &scriptObjectFunctionHandle) override
virtual void releaseAllScriptObjectFunctions() override
virtual void releaseScriptFunction(const ScriptFunctionHandle &scriptFunctionHandle) override
virtual void releaseAllScriptFunctions() override
virtual void tick(const float32 delta) override
virtual void registerGlobalFunction(const std::string &name, const asSFuncPtr &funcPointer, asDWORD callConv, void *objForThiscall = nullptr) override
virtual void registerGlobalProperty(const std::string &declaration, void *pointer) override
virtual void registerClass(const std::string &name) override
virtual void registerClass(const std::string &name, const std::string &classFactorySignature, const std::string &addRefSignature, const std::string &releaseRefSignature, const asSFuncPtr &classFactoryFuncPointer, const asSFuncPtr &addRefFuncPointer, const asSFuncPtr &releaseRefFuncPointer) override
virtual void registerClassFactory(const std::string &name, const std::string &classFactorySignature, const asSFuncPtr &classFactoryFuncPointer) override
virtual void registerClassAddRef(const std::string &name, const std::string &addRefSignature, const asSFuncPtr &addRefFuncPointer) override
virtual void registerClassReleaseRef(const std::string &name, const std::string &releaseRefSignature, const asSFuncPtr &releaseRefFuncPointer) override
virtual void registerClassMethod(const std::string &className, const std::string &methodSignature, const asSFuncPtr &funcPointer) override
virtual void registerFunctionDefinition(const std::string &name) override
virtual void registerInterface(const std::string &name) override
virtual void registerInterfaceMethod(const std::string &name, const std::string &declaration) override
virtual void registerEnum(const std::string &type) override
virtual void registerEnumValue(const std::string &type, const std::string &name, const int64 value) override
virtual ScriptFunctionHandle getScriptFunction(const ModuleHandle &moduleHandle, const std::string &function) override
virtual ScriptObjectFunctionHandle getScriptObjectFunction(const ScriptObjectHandle &scriptObjectHandle, const std::string &function) override
virtual void registerObjectType(const std::string &obj, const int32 byteSize, asDWORD flags) override
virtual void registerObjectMethod(const std::string &obj, const std::string &declaration, const asSFuncPtr &funcPointer, asDWORD callConv, void *auxiliary = nullptr) override
virtual void registerObjectProperty(const std::string &obj, const std::string &declaration, int32 byteOffset) override
virtual void registerObjectBehaviour(const std::string &obj, asEBehaviours behaviour, const std::string &declaration, const asSFuncPtr &funcPointer, asDWORD callConv) override
virtual IScriptingEngineDebugger *debugger() override
virtual void MessageCallback(const asSMessageInfo *msg, void *param) override
virtual void testPrintCallstack() override

Public Static Functions

static void print(const std::string &msg)
static void println(const std::string &msg)

Private Functions

void initialize()
void destroy()
void releaseAngelscriptIScriptEngine(asIScriptEngine *engine)
void releaseAngelscriptIScriptContext(asIScriptContext *context)
asIScriptModule *getModule(const ScriptObjectHandle &scriptObjectHandle) const
asIScriptFunction *getMethod(const ScriptObjectHandle &scriptObjectHandle, const std::string &function) const
asITypeInfo *getType(const ScriptObjectHandle &scriptObjectHandle) const
asIScriptContext *getContext(const ExecutionContextHandle &executionContextHandle) const
asIScriptModule *createModuleFromScript(const std::string &moduleName, const std::string &scriptData)
asIScriptModule *createModuleFromScripts(const std::string &moduleName, const std::vector<std::string> &scriptData, const std::unordered_map<std::string, std::string> &includeOverrides = {})
void destroyModule(const std::string &moduleName)
CScriptHandle createScriptObjectReturnAsScriptHandle(const ModuleHandle &moduleHandle, const std::string &objectName, const std::string &factoryName, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0))
asIScriptObject *createScriptObject(const ModuleHandle &moduleHandle, const std::string &objectName, const std::string &factoryName, const ExecutionContextHandle &executionContextHandle = ExecutionContextHandle(0))
void setArguments(asIScriptContext *context, ParameterList &arguments) const
asIScriptObject *callFunctionWithReturnValue(asIScriptContext *context, asIScriptFunction *function)
void callFunction(asIScriptContext *context, asIScriptFunction *function, asIScriptObject *object)
void callFunction(asIScriptContext *context, asIScriptFunction *function, asIScriptObject *object, ParameterList &arguments)
void callFunction(asIScriptContext *context, asIScriptFunction *function)
void callFunction(asIScriptContext *context, asIScriptFunction *function, ParameterList &arguments)
void callFunction(asIScriptContext *context, asIScriptModule *module, const std::string &function)
void callFunction(asIScriptContext *context, asIScriptModule *module, const std::string &function, ParameterList &arguments)
void callFunction(asIScriptContext *context, const ScriptFunctionHandle &scriptFunctionHandle)
void callFunction(asIScriptContext *context, const ScriptFunctionHandle &scriptFunctionHandle, ParameterList &arguments)
void callFunction(asIScriptContext *context, const ModuleHandle &moduleHandle, const std::string &function)
void callFunction(asIScriptContext *context, const ModuleHandle &moduleHandle, const std::string &function, ParameterList &arguments)
void callFunction(asIScriptContext *context, const ScriptObjectHandle &scriptObjectHandle, const std::string &function)
void callFunction(asIScriptContext *context, const ScriptObjectHandle &scriptObjectHandle, const std::string &function, ParameterList &arguments)
void callFunction(asIScriptContext *context, const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle)
void callFunction(asIScriptContext *context, const ScriptObjectHandle &scriptObjectHandle, const ScriptObjectFunctionHandle &scriptObjectFunctionHandle, ParameterList &arguments)
asIScriptFunction *getFunctionByDecl(const std::string &function, const asIScriptModule *module) const
asIScriptFunction *getFunctionByDecl(const std::string &function, const asIScriptObject *object) const
void discardModule(const std::string &name)

Private Members

utilities::Properties *properties_
fs::IFileSystem *fileSystem_
logger::ILogger *logger_
asIScriptContext *ctx_
std::unique_ptr<CScriptBuilder> builder_
asIScriptEngine *engine_
handles::HandleVector<ScriptContextData, ExecutionContextHandle> contextData_
handles::HandleVector<ScriptModuleData, ModuleHandle> moduleData_
std::unique_ptr<AngelscriptDebugger> debugger_

Private Static Attributes

static const std::string ONE_TIME_RUN_SCRIPT_MODULE_NAME = std::string("ONE_TIME_RUN_SCRIPT_MODULE_NAME")
static const uint32 MAX_EXECUTION_CONTEXTS = 32
class ice_engine::ScriptingEngineBindingDelegate
#include <ScriptingEngineBindingDelegate.hpp>

Public Functions

ScriptingEngineBindingDelegate(logger::ILogger *logger, scripting::IScriptingEngine *scriptingEngine)
virtual ~ScriptingEngineBindingDelegate()
void bind()

Private Members

logger::ILogger *logger_
scripting::IScriptingEngine *scriptingEngine_
class ice_engine::scripting::ScriptingFactory
#include <ScriptingFactory.hpp>

Public Static Functions

static std::unique_ptr<IScriptingEngine> createScriptingEngine(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger)

Private Functions

ScriptingFactory()
ScriptingFactory(const ScriptingFactory &other)
virtual ~ScriptingFactory()
struct ice_engine::ecs::ScriptObjectComponent
#include <ScriptObjectComponent.hpp>

Public Functions

ScriptObjectComponent() = default
inline ScriptObjectComponent(void *object)
inline ScriptObjectComponent(scripting::ScriptObjectHandle scriptObjectHandle1)

Public Members

scripting::ScriptObjectHandle scriptObjectHandle

Public Static Functions

static inline uint8 id()
class ice_engine::scripting::ScriptObjectFunctionHandle : public ice_engine::handles::PointerHandle<ScriptObjectFunctionHandle>
#include <ScriptObjectFunctionHandle.hpp>

Public Static Attributes

static const ScriptObjectFunctionHandle INVALID
class ice_engine::scripting::ScriptObjectHandle : public ice_engine::handles::PointerHandle<ScriptObjectHandle>
#include <ScriptObjectHandle.hpp>

Public Static Attributes

static const ScriptObjectHandle INVALID
struct SDictionaryCache

Public Members

asITypeInfo *dictType
asITypeInfo *arrayType
asITypeInfo *keyType

Public Static Functions

static inline void Setup(asIScriptEngine *engine)
static inline void Cleanup(asIScriptEngine *engine)
class ServerHandle : public ice_engine::handles::Handle<ServerHandle>
#include <ServerHandle.hpp>
class ShaderHandle : public ice_engine::handles::Handle<ShaderHandle>
#include <ShaderHandle.hpp>
class ShaderProgramHandle : public ice_engine::handles::Handle<ShaderProgramHandle>
#include <ShaderProgramHandle.hpp>
template<typename T, typename V>
class ice_engine::SharedFutureRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void CopyConstructor(const T &other, T *memory)
static inline void DefaultDestructor(T *memory)
static inline T &assignmentOperator(const T &other, T *v)
template<typename V1 = V>
static inline std::enable_if<std::is_void<V1>::value, void>::type get(const T *v)
template<typename V1 = V>
static inline const std::enable_if<std::is_pointer<V1>::value, V1>::type get(const T *v)
template<typename V1 = V>
static inline const std::enable_if<!std::is_void<V1>::value && !std::is_pointer<V1>::value, V1>::type &get(const T *v)
static inline bool valid(T *v)
static inline void wait(T *v)
template<typename Duration>
static inline std::future_status wait_for(const Duration &d, T *v)
class ice_engine::Skeleton
#include <Skeleton.hpp>

Public Functions

Skeleton() = default
inline Skeleton(std::string name, BoneNode rootBoneNode, glm::mat4 globalInverseTransformation)
inline Skeleton(const std::string &name, const std::string &filename, const aiScene *scene, logger::ILogger *logger, fs::IFileSystem *fileSystem)
inline const std::string &name() const
inline const BoneNode &rootBoneNode() const
inline const glm::mat4 &globalInverseTransformation() const

Private Functions

BoneNode importBoneNode(const aiNode *node)
void import(const std::string &name, const std::string &filename, const aiScene *scene, logger::ILogger *logger, fs::IFileSystem *fileSystem)

Private Members

std::string name_
BoneNode rootBoneNode_
glm::mat4 globalInverseTransformation_ = glm::mat4(1.0f)
struct ice_engine::ecs::SkeletonComponent
#include <SkeletonComponent.hpp>

Public Functions

SkeletonComponent() = default
inline SkeletonComponent(SkeletonHandle skeletonHandle)

Public Members

SkeletonHandle skeletonHandle

Public Static Functions

static inline uint8 id()
class SkeletonHandle : public ice_engine::handles::Handle<SkeletonHandle>
#include <SkeletonHandle.hpp>
class SkeletonHandle : public ice_engine::handles::Handle<SkeletonHandle>
#include <SkeletonHandle.hpp>
class SkyboxHandle : public ice_engine::handles::Handle<SkyboxHandle>
#include <SkyboxHandle.hpp>
class SkyboxRenderableHandle : public ice_engine::handles::Handle<SkyboxRenderableHandle>
#include <SkyboxRenderableHandle.hpp>
struct CScriptBuilder::SMetadataDecl
#include <scriptbuilder.h>

Public Functions

inline SMetadataDecl(std::vector<std::string> m, std::string n, std::string d, int t, std::string c, std::string ns)

Public Members

std::vector<std::string> metadata
std::string name
std::string declaration
int type
std::string parentClass
std::string nameSpace
class SoundHandle : public ice_engine::handles::Handle<SoundHandle>
#include <SoundHandle.hpp>
class SoundSourceHandle : public ice_engine::handles::Handle<SoundSourceHandle>
#include <SoundSourceHandle.hpp>
class ice_engine::SplatMap : public ice_engine::graphics::ISplatMap
#include <SplatMap.hpp>

Public Functions

SplatMap() = default
inline SplatMap(std::vector<PbrMaterial> materialMap, IImage *terrainMap)
inline SplatMap(const SplatMap &other)
inline SplatMap &operator=(const SplatMap &other)
~SplatMap() override = default
inline virtual const std::vector<graphics::IPbrMaterial*> &materialMap() const override
inline virtual const graphics::IImage *terrainMap() const override

Private Members

IImage *terrainMap_
std::vector<PbrMaterial> materialMap_
std::vector<graphics::IPbrMaterial*> materialMapPointers_
struct ice_engine::graphics::gui::Style
#include <Style.hpp>

Public Members

float32 alpha = 1.0f
template<typename T>
class ice_engine::TemplateTypeRegisterHelper

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void InitConstructor(T *memory, const uint64 id)
static inline void CopyConstructor(T *memory, const T &other)
static inline void DefaultDestructor(T *memory)
class ice_engine::Terrain : public ice_engine::ITerrain
#include <Terrain.hpp>

Public Functions

Terrain(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger, Scene *scene, HeightMap heightMap, SplatMap splatMap, DisplacementMap displacementMap, physics::CollisionShapeHandle collisionShapeHandle, pathfinding::PolygonMeshHandle polygonMeshHandle, pathfinding::NavigationMeshHandle navigationMeshHandle, graphics::IGraphicsEngine *graphicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine, physics::IPhysicsEngine *physicsEngine, audio::IAudioEngine *audioEngine, audio::AudioSceneHandle audioSceneHandle, graphics::RenderSceneHandle renderSceneHandle, physics::PhysicsSceneHandle physicsSceneHandle, pathfinding::PathfindingSceneHandle pathfindingSceneHandle)
virtual ~Terrain()
virtual void tick(const float32 delta) override
virtual const std::vector<pathfinding::CrowdHandle> &crowds() const override

Private Members

audio::IAudioEngine *audioEngine_
graphics::IGraphicsEngine *graphicsEngine_
physics::IPhysicsEngine *physicsEngine_
pathfinding::IPathfindingEngine *pathfindingEngine_
utilities::Properties *properties_
fs::IFileSystem *fileSystem_
logger::ILogger *logger_
Scene *scene_
ecs::Entity terrainEntity_
graphics::TerrainHandle terrainHandle_
pathfinding::PolygonMeshHandle polygonMeshHandle_
pathfinding::NavigationMeshHandle navigationMeshHandle_
std::vector<pathfinding::CrowdHandle> crowdHandles_
audio::AudioSceneHandle audioSceneHandle_
graphics::RenderSceneHandle renderSceneHandle_
physics::PhysicsSceneHandle physicsSceneHandle_
pathfinding::PathfindingSceneHandle pathfindingSceneHandle_
class ice_engine::TerrainFactory : public ice_engine::ITerrainFactory
#include <TerrainFactory.hpp>

Public Functions

TerrainFactory() = default
virtual ~TerrainFactory() = default
virtual std::unique_ptr<ITerrain> create(utilities::Properties *properties, fs::IFileSystem *fileSystem, logger::ILogger *logger, Scene *scene, HeightMap heightMap, SplatMap splatMap, DisplacementMap displacementMap, physics::CollisionShapeHandle collisionShapeHandle, pathfinding::PolygonMeshHandle polygonMeshHandle, pathfinding::NavigationMeshHandle navigationMeshHandle, graphics::IGraphicsEngine *graphicsEngine, pathfinding::IPathfindingEngine *pathfindingEngine, physics::IPhysicsEngine *physicsEngine, audio::IAudioEngine *audioEngine, audio::AudioSceneHandle audioSceneHandle, graphics::RenderSceneHandle renderSceneHandle, physics::PhysicsSceneHandle physicsSceneHandle, pathfinding::PathfindingSceneHandle pathfindingSceneHandle) override

Private Functions

TerrainFactory(const TerrainFactory &other) = delete
class TerrainHandle : public ice_engine::handles::Handle<TerrainHandle>
#include <TerrainHandle.hpp>
class TerrainRenderableHandle : public ice_engine::handles::Handle<TerrainRenderableHandle>
#include <TerrainRenderableHandle.hpp>
class TessellationControlShaderHandle : public ice_engine::handles::Handle<TessellationControlShaderHandle>
#include <TessellationControlShaderHandle.hpp>
class TessellationEvaluationShaderHandle : public ice_engine::handles::Handle<TessellationEvaluationShaderHandle>
#include <TessellationEvaluationShaderHandle.hpp>
class ice_engine::serialization::TextInArchive : public text_iarchive
#include <TextInArchive.hpp>

Public Functions

inline TextInArchive(std::istream &istream)
virtual ~TextInArchive() = default
struct ice_engine::graphics::TextInputEvent
#include <Event.hpp>

Public Members

uint32 type
uint32 timestamp
char text[TEXTINPUTEVENT_TEXT_SIZE]
class ice_engine::serialization::TextOutArchive : public text_oarchive
#include <TextOutArchive.hpp>

Public Functions

inline TextOutArchive(std::ostream &ostream)
virtual ~TextOutArchive() = default
struct ice_engine::graphics::model::Texture
#include <Texture.hpp>

Public Functions

Texture() = default
inline Texture(const Texture &other)

Public Members

std::string filename
Image image
class ice_engine::Texture : public ice_engine::graphics::ITexture
#include <Texture.hpp>

Public Functions

Texture() = default
inline Texture(std::string name, IImage *image)
inline Texture(const std::string &name, const std::string &filename, const uint32 index, const aiMaterial *material, IResourceCache *resourceCache, logger::ILogger *logger, fs::IFileSystem *fileSystem)
~Texture() override = default
inline virtual const std::string &name() const override
inline IImage *image()
inline virtual const graphics::IImage *image() const override

Private Functions

void import(const std::string &name, const std::string &filename, const uint32 index, const aiMaterial *material, IResourceCache *resourceCache, logger::ILogger *logger, fs::IFileSystem *fileSystem)

Private Members

std::string name_
IImage *image_ = nullptr
class TextureHandle : public ice_engine::handles::Handle<TextureHandle>
#include <TextureHandle.hpp>
class ice_engine::ThreadPool : public ice_engine::IThreadPool
#include <ThreadPool.hpp>

Public Functions

ThreadPool()
ThreadPool(uint32 numThreads)
~ThreadPool() override
virtual std::future<void> postWork(const std::function<void()> &work) override
virtual std::future<void> postWork(std::function<void()> &&work) override
virtual void waitAll() override
virtual void joinAll() override
virtual uint32 getActiveWorkerCount() const override
virtual uint32 getInactiveWorkerCount() const override
virtual uint32 getWorkQueueCount() const override
virtual uint32 getWorkQueueSize() const override
virtual void increaseWorkerCountBy(uint32 n) override
virtual void decreaseWorkerCountBy(uint32 n) override

Private Functions

void initialize(uint32 numThreads)

Private Members

std::unique_ptr<ctpl::thread_pool> pool_
template<typename T, typename V>
class ice_engine::UniquePtrRegisterHelper

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void InitConstructor(T *memory, const uint64 id)
static inline void CopyConstructor(T *memory, const T &other)
static inline void DefaultDestructor(T *memory)
static inline V *get(T *u)
template<typename T, typename K, typename V>
class ice_engine::UnorderedMapRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void CopyConstructor(const T &other, T *memory)
static inline void DefaultDestructor(T *memory)
static inline T &assignmentOperator(const T &other, T *m)
static inline uint64 size(T *m)
static inline V &at(const K &k, T *m)
static inline V &index(const K &k, T *m)
static inline void clear(T *m)
static inline bool empty(T *m)
static inline uint64 max_size(T *m)
class ice_engine::pathfinding::UserData
#include <UserData.hpp>

TODO: Make sure we destroy any copied objects if we set a new value for this parameter.

Public Functions

inline UserData()
inline UserData(const UserData &other)

copy this parameter.

Note that if the other UserData has an object copied by value, the copy constructor will make another copy of that object by allocating new memory and copying the contents of that object.

When this newly created parameter is destroyed, it will call the destructor on that copied object.

inline virtual ~UserData()

If the parameter holds a copy of an object, the destructor for that object will be called.

template<typename T>
inline void valueRef(T &value)

Set the parameter by reference.

template<typename T>
inline void value(T value)

Set the parameter by value. This will make a copy of the passed in value using that values copy constructor.

Note that when the parameter object is destroyed, it will call the destructor on the copied object.

It is highly recommended that you use relatively simple values.

template<typename T>
inline T &valueRef()
template<typename T>
inline T value()
inline void *pointer() const
inline UserDataType type() const
template<>
inline void valueRef(bool &value)
template<>
inline void value(bool value)
template<>
inline void valueRef(uint8 &value)
template<>
inline void value(uint8 value)
template<>
inline void valueRef(int8 &value)
template<>
inline void value(int8 value)
template<>
inline void valueRef(uint16 &value)
template<>
inline void value(uint16 value)
template<>
inline void valueRef(int16 &value)
template<>
inline void value(int16 value)
template<>
inline void valueRef(uint32 &value)
template<>
inline void value(uint32 value)
template<>
inline void valueRef(int32 &value)
template<>
inline void value(int32 value)
template<>
inline void valueRef(uint64 &value)
template<>
inline void value(uint64 value)
template<>
inline void valueRef(int64 &value)
template<>
inline void value(int64 value)
template<>
inline void value(float32 value)
template<>
inline void valueRef(float32 &value)
template<>
inline void value(float64 value)
template<>
inline void valueRef(float64 &value)
template<>
inline bool value()
template<>
inline bool &valueRef()
template<>
inline uint8 value()
template<>
inline uint8 &valueRef()
template<>
inline int8 value()
template<>
inline int8 &valueRef()
template<>
inline uint16 value()
template<>
inline uint16 &valueRef()
template<>
inline int16 value()
template<>
inline uint32 value()
template<>
inline uint32 &valueRef()
template<>
inline int32 value()
template<>
inline int32 &valueRef()
template<>
inline uint64 value()
template<>
inline int64 &valueRef()
template<>
inline int64 value()
template<>
inline float32 value()
template<>
inline float32 &valueRef()
template<>
inline float64 value()
template<>
inline float64 &valueRef()

Private Members

UserDataType type_
Value value_
size_t sizeOf_
std::function<void(const void*)> destructor_
class ice_engine::physics::UserData
#include <UserData.hpp>

TODO: Make sure we destroy any copied objects if we set a new value for this parameter.

Public Functions

inline UserData()
inline UserData(const UserData &other)

copy this parameter.

Note that if the other UserData has an object copied by value, the copy constructor will make another copy of that object by allocating new memory and copying the contents of that object.

When this newly created parameter is destroyed, it will call the destructor on that copied object.

inline UserData(UserData &&other)
inline ~UserData()

If the parameter holds a copy of an object, the destructor for that object will be called.

inline UserData &operator=(const UserData &other)
template<typename T>
inline void valueRef(T &value)

Set the parameter by reference.

template<typename T>
inline void value(T value)

Set the parameter by value. This will make a copy of the passed in value using that values copy constructor.

Note that when the parameter object is destroyed, it will call the destructor on the copied object.

It is highly recommended that you use relatively simple values.

template<typename T>
inline T &valueRef()
template<typename T>
inline T value()
inline void *pointer() const
inline UserDataType type() const
template<>
inline void valueRef(bool &value)
template<>
inline void value(bool value)
template<>
inline void valueRef(uint8 &value)
template<>
inline void value(uint8 value)
template<>
inline void valueRef(int8 &value)
template<>
inline void value(int8 value)
template<>
inline void valueRef(uint16 &value)
template<>
inline void value(uint16 value)
template<>
inline void valueRef(int16 &value)
template<>
inline void value(int16 value)
template<>
inline void valueRef(uint32 &value)
template<>
inline void value(uint32 value)
template<>
inline void valueRef(int32 &value)
template<>
inline void value(int32 value)
template<>
inline void valueRef(uint64 &value)
template<>
inline void value(uint64 value)
template<>
inline void valueRef(int64 &value)
template<>
inline void value(int64 value)
template<>
inline void value(float32 value)
template<>
inline void valueRef(float32 &value)
template<>
inline void value(float64 value)
template<>
inline void valueRef(float64 &value)
template<>
inline bool value()
template<>
inline bool &valueRef()
template<>
inline uint8 value()
template<>
inline uint8 &valueRef()
template<>
inline int8 value()
template<>
inline int8 &valueRef()
template<>
inline uint16 value()
template<>
inline uint16 &valueRef()
template<>
inline int16 value()
template<>
inline uint32 value()
template<>
inline uint32 &valueRef()
template<>
inline int32 value()
template<>
inline int32 &valueRef()
template<>
inline uint64 value()
template<>
inline int64 &valueRef()
template<>
inline int64 value()
template<>
inline float32 value()
template<>
inline float32 &valueRef()
template<>
inline float64 value()
template<>
inline float64 &valueRef()

Private Members

UserDataType type_
Value value_
size_t sizeOf_
std::function<void(const void*)> destructor_
union ice_engine::scripting::Value
#include <Parameter.hpp>

Public Members

bool valueBoolean
uint8 valueUint8
int8 valueInt8
uint16 valueUint16
int16 valueInt16
uint32 valueUint32
int32 valueInt32
uint64 valueUint64
int64 valueInt64
float32 valueFloat32
float64 valueFloat64
void *valuePointer
union ice_engine::physics::Value
#include <UserData.hpp>

Public Members

bool valueBoolean
uint8 valueUint8
int8 valueInt8
uint16 valueUint16
int16 valueInt16
uint32 valueUint32
int32 valueInt32
uint64 valueUint64
int64 valueInt64
float32 valueFloat32
float64 valueFloat64
void *valuePointer
union ice_engine::pathfinding::Value
#include <UserData.hpp>

Public Members

bool valueBoolean
uint8 valueUint8
int8 valueInt8
uint16 valueUint16
int16 valueInt16
uint32 valueUint32
int32 valueInt32
uint64 valueUint64
int64 valueInt64
float32 valueFloat32
float64 valueFloat64
void *valuePointer
template<typename T, typename ...V>
class ice_engine::VariantRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void CopyConstructor(const T &other, T *memory)
static inline void DefaultDestructor(T *memory)
static inline T &assignmentOperator(const T &other, T *v)
template<typename Value>
static inline T &assignmentOperatorValue(const Value &value, T *v)
static inline int which(T *v)
template<typename Value>
static inline Value &get(T &v)
struct Vec3
#include <Vec3.h>

Public Functions

Vec3()
Vec3(const Vec3 &other)
Vec3(float x, float y, float z)
Vec3 &operator=(const Vec3 &other)
Vec3 &operator+=(const Vec3 &other)
Vec3 &operator-=(const Vec3 &other)
Vec3 &operator*=(float scalar)
Vec3 &operator/=(float scalar)
float length() const
Vec3 get_xyz() const
void set_xyz(const Vec3 &in)
Vec3 get_yzx() const
void set_yzx(const Vec3 &in)
Vec3 get_zxy() const
void set_zxy(const Vec3 &in)
Vec3 get_zyx() const
void set_zyx(const Vec3 &in)
Vec3 get_yxz() const
void set_yxz(const Vec3 &in)
Vec3 get_xzy() const
void set_xzy(const Vec3 &in)

Public Members

float x
float y
float z

Friends

friend friend bool operator== (const Vec3 &a, const Vec3 &b)
friend friend bool operator!= (const Vec3 &a, const Vec3 &b)
friend friend Vec3 operator+ (const Vec3 &a, const Vec3 &b)
friend friend Vec3 operator- (const Vec3 &a, const Vec3 &b)
friend friend Vec3 operator* (float s, const Vec3 &v)
friend friend Vec3 operator* (const Vec3 &v, float s)
friend friend Vec3 operator/ (const Vec3 &v, float s)
template<typename T, typename V>
class VectorRegisterHelper
#include <scriptvector.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void CopyConstructor(const T &other, T *memory)
static inline void InitConstructor(int size, T *memory)
static inline void InitializerListConstructor(const asBYTE *list, T *memory)
static inline void DefaultDestructor(T *memory)
static inline T &assignmentOperator(const T &other, T *v)
static inline void assign(int count, const V &value, T *v)
static inline int size(T *v)
static inline void resize(int size, T *v)
static inline V &at(int i, T *v)
static inline V &index(int i, T *v)
static inline V &front(T *v)
static inline V &back(T *v)
static inline void push_back(const V &value, T *v)
static inline void pop_back(T *v)
static inline void erase(int i, T *v)
static inline void insert(int i, const V &value, T *v)
static inline void clear(T *v)
static inline bool empty(T *v)
static inline int max_size(T *v)
static inline void reserve(int size, T *v)
static inline int capacity(T *v)
template<typename T, typename V>
class ice_engine::VectorRegisterHelper
#include <BindingDelegateUtilities.hpp>

Public Static Functions

static inline void DefaultConstructor(T *memory)
static inline void CopyConstructor(const T &other, T *memory)
static inline void InitConstructor(uint64 size, T *memory)
static inline void DefaultDestructor(T *memory)
static inline T &assignmentOperator(const T &other, T *v)
static inline void assign(uint64 count, const V &value, T *v)
static inline uint64 size(T *v)
static inline void resize(uint64 size, T *v)
static inline V &at(uint64 i, T *v)
static inline V &index(uint64 i, T *v)
static inline V &front(T *v)
static inline V &back(T *v)
static inline void push_back(const V &value, T *v)
static inline void pop_back(T *v)
static inline void erase(uint64 i, T *v)
static inline void insert(uint64 i, const V &value, T *v)
static inline void clear(T *v)
static inline bool empty(T *v)
static inline uint64 max_size(T *v)
static inline void reserve(uint64 size, T *v)
static inline uint64 capacity(T *v)
class ice_engine::VertexBoneData : public ice_engine::graphics::ISkeleton
#include <Mesh.hpp>

Public Functions

VertexBoneData() = default
inline VertexBoneData(std::vector<glm::ivec4> boneIds, std::vector<glm::vec4> boneWeights)
inline VertexBoneData(const std::string &name, const std::string &filename, const uint32 index, const aiMesh *mesh, const BoneData &boneData, const uint32 numberOfVertices, logger::ILogger *logger, fs::IFileSystem *fileSystem)
VertexBoneData(const VertexBoneData&) = default
VertexBoneData(VertexBoneData&&) = default
~VertexBoneData() override = default
VertexBoneData &operator=(const VertexBoneData&) = default
VertexBoneData &operator=(VertexBoneData&&) = default
inline virtual const std::string &name() const override
inline virtual const std::vector<glm::ivec4> &boneIds() const override
inline virtual const std::vector<glm::vec4> &boneWeights() const override

Private Functions

void import(const std::string &name, const std::string &filename, const uint32 index, const aiMesh *mesh, const BoneData &boneData, const uint32 numberOfVertices, logger::ILogger *logger, fs::IFileSystem *fileSystem)

Private Members

std::string name_
std::vector<glm::ivec4> boneIds_
std::vector<glm::vec4> boneWeights_
struct ice_engine::graphics::model::VertexBoneData
#include <VertexBoneData.hpp>

Public Functions

inline VertexBoneData()
inline void addBoneWeight(uint32 id, float32 weight)

Public Members

glm::ivec4 boneIds
glm::vec4 weights
class VertexShaderHandle : public ice_engine::handles::Handle<VertexShaderHandle>
#include <VertexShaderHandle.hpp>
class VertexToJointMap
#include <VertexToJointMap.hpp>

Public Functions

VertexToJointMap() = default
inline VertexToJointMap(std::string name, std::vector<glm::ivec4> jointIndices, std::vector<glm::vec4> weights)
VertexToJointMap(const VertexToJointMap&) = default
VertexToJointMap(VertexToJointMap&&) = default
~VertexToJointMap() override = default
VertexToJointMap &operator=(const VertexToJointMap&) = default
VertexToJointMap &operator=(VertexToJointMap&&) = default
inline const std::string &name() const
inline const std::vector<glm::ivec4> &jointIndices() const
inline const std::vector<glm::vec4> &weights() const

Private Members

std::string name_
std::vector<glm::ivec4> jointIndices_
std::vector<glm::vec4> weights_
template<bool All = false>
class ice_engine::ecs::ViewIterator
#include <EntityComponentSystem.hpp>

Subclassed by ice_engine::ecs::EcsView< All >::Iterator

Public Functions

inline ViewIterator(Scene *scene, entityx::EntityManager::ViewIterator<typename entityx::EntityManager::BaseView<All>::Iterator, All> viewIterator)
inline ViewIterator &operator++()
inline bool operator==(const ViewIterator &rhs) const
inline bool operator!=(const ViewIterator &rhs) const
inline Entity operator*()
inline const Entity operator*() const

Private Members

Scene *scene_
ViewIteratorIterator<All> viewIterator_
struct ice_engine::graphics::WindowEvent
#include <Event.hpp>

Public Members

uint32 type
uint32 timestamp
uint32 windowId
WindowEventType eventType
uint8 padding1
uint8 padding2
uint8 padding3
sint32 data1
sint32 data2
template<typename T>
struct Wrapper
#include <aswrappedcall.h>
template<typename R, typename A0>
struct gw::Wrapper<R (*)(A0)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename R, typename A0, typename A1>
struct gw::Wrapper<R (*)(A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, A1)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename R, typename A0, typename A1, typename A2>
struct gw::Wrapper<R (*)(A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, A1, A2)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename R, typename A0, typename A1, typename A2, typename A3>
struct gw::Wrapper<R (*)(A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(A0, A1, A2, A3)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename R>
struct gw::Wrapper<R (*)(void)>
#include <aswrappedcall.h>

Public Static Functions

template<R (*fp)(void)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0>
struct gw::Wrapper<R (T::*)(A0) const>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0>
struct gw::Wrapper<R (T::*)(A0)>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1>
struct gw::Wrapper<R (T::*)(A0, A1) const>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0, A1) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1>
struct gw::Wrapper<R (T::*)(A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0, A1)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2>
struct gw::Wrapper<R (T::*)(A0, A1, A2) const>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0, A1, A2) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2>
struct gw::Wrapper<R (T::*)(A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0, A1, A2)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2, typename A3>
struct gw::Wrapper<R (T::*)(A0, A1, A2, A3) const>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0, A1, A2, A3) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R, typename A0, typename A1, typename A2, typename A3>
struct gw::Wrapper<R (T::*)(A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(A0, A1, A2, A3)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R>
struct gw::Wrapper<R (T::*)(void) const>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(void) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename R>
struct gw::Wrapper<R (T::*)(void)>
#include <aswrappedcall.h>

Public Static Functions

template<R (T::* fp)(void)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename A0>
struct gw::Wrapper<void (*)(A0)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename A0, typename A1>
struct gw::Wrapper<void (*)(A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, A1)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename A0, typename A1, typename A2>
struct gw::Wrapper<void (*)(A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, A1, A2)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename A0, typename A1, typename A2, typename A3>
struct gw::Wrapper<void (*)(A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(A0, A1, A2, A3)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<>
struct gw::Wrapper<void (*)(void)>
#include <aswrappedcall.h>

Public Static Functions

template<void (*fp)(void)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *)
template<typename T, typename A0>
struct gw::Wrapper<void (T::*)(A0) const>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0>
struct gw::Wrapper<void (T::*)(A0)>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1>
struct gw::Wrapper<void (T::*)(A0, A1) const>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0, A1) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1>
struct gw::Wrapper<void (T::*)(A0, A1)>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0, A1)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2>
struct gw::Wrapper<void (T::*)(A0, A1, A2) const>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0, A1, A2) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2>
struct gw::Wrapper<void (T::*)(A0, A1, A2)>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0, A1, A2)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2, typename A3>
struct gw::Wrapper<void (T::*)(A0, A1, A2, A3) const>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0, A1, A2, A3) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T, typename A0, typename A1, typename A2, typename A3>
struct gw::Wrapper<void (T::*)(A0, A1, A2, A3)>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(A0, A1, A2, A3)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T>
struct gw::Wrapper<void (T::*)(void) const>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(void) const> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T>
struct gw::Wrapper<void (T::*)(void)>
#include <aswrappedcall.h>

Public Static Functions

template<void (T::* fp)(void)> static inline void f (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
namespace boost
namespace boost::serialization

Functions

template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::AnimationComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::ChildrenComponent &c, const unsigned int version)
template<class Archive>
void save(Archive &ar, const ice_engine::ecs::ChildrenComponent &c, const unsigned int version)
template<class Archive>
void load(Archive &ar, ice_engine::ecs::ChildrenComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::DirtyComponent &c, const unsigned int version)
template<class Archive>
void save(Archive &ar, const ice_engine::ecs::DirtyComponent &c, const unsigned int version)
template<class Archive>
void load(Archive &ar, ice_engine::ecs::DirtyComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::GhostObjectComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::GraphicsComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::GraphicsSkyboxComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::GraphicsTerrainComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::OrientationComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::ParentBoneAttachmentComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::ParentComponent &c, const unsigned int version)
template<class Archive>
void save(Archive &ar, const ice_engine::ecs::ParentComponent &c, const unsigned int version)
template<class Archive>
void load(Archive &ar, ice_engine::ecs::ParentComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PathfindingAgentComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PathfindingCrowdComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PathfindingObstacleComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PersistableComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PointLightComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PositionComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PositionOrientationComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::PropertiesComponent &c, const unsigned int version)
template<class Archive>
void save(Archive &ar, const ice_engine::ecs::PropertiesComponent &c, const unsigned int version)
template<class Archive>
void load(Archive &ar, ice_engine::ecs::PropertiesComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::RigidBodyObjectComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::ScriptObjectComponent &c, const unsigned int version)
template<class Archive, class T, typename = typename std::enable_if<std::is_base_of<ice_engine::handles::Handle<T>, T>::value>::type>
void serialize(Archive &ar, T &h, const version_type version)
template<class Archive, class T, typename = typename std::enable_if<std::is_base_of<ice_engine::handles::Handle<T>, T>::value>::type>
void save(Archive &ar, const T &h, const unsigned int version)
template<class Archive, class T, typename = typename std::enable_if<std::is_base_of<ice_engine::handles::Handle<T>, T>::value>::type>
void load(Archive &ar, T &h, const unsigned int version)
template<class Archive, class T>
std::enable_if<std::is_base_of<ice_engine::handles::PointerHandle<T>, T>::value, void>::type serialize(Archive &ar, T &h, const version_type version)
template<class Archive, class T>
std::enable_if<std::is_base_of<ice_engine::handles::PointerHandle<T>, T>::value, void>::type save(Archive &ar, const T &h, const unsigned int version)
template<class Archive, class T>
std::enable_if<std::is_base_of<ice_engine::handles::PointerHandle<T>, T>::value, void>::type load(Archive &ar, T &h, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::pathfinding::AgentParams &agentParams, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::pathfinding::CrowdConfig &crowdConfig, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, ice_engine::ecs::SkeletonComponent &c, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, glm::ivec4 &v, unsigned int version)
template<class Archive>
void serialize(Archive &ar, glm::mat4 &m, unsigned int version)
template<class Archive>
void serialize(Archive &ar, glm::quat &q, const unsigned int version)
template<class Archive>
void save(Archive &ar, const glm::vec2 &v, unsigned int version)
template<class Archive>
void load(Archive &ar, glm::vec2 &v, unsigned int version)
template<class Archive>
void serialize(Archive &ar, glm::vec3 &v, const unsigned int version)
template<class Archive>
void serialize(Archive &ar, glm::vec4 &v, unsigned int version)
template<class Archive, class Rep, class Period>
void serialize(Archive &ar, std::chrono::duration<Rep, Period> &duration, const version_type version)
template<class Archive, class Rep, class Period>
void save(Archive &ar, const std::chrono::duration<Rep, Period> &duration, const unsigned int version)
template<class Archive, class Rep, class Period>
void load(Archive &ar, std::chrono::duration<Rep, Period> &duration, const unsigned int version)
namespace ctpl
namespace entityx

Functions

template<typename C>
inline std::ostream &operator<<(std::ostream &os, const ComponentHandle<C> &data)
namespace glm

Functions

inline std::ostream &operator<<(std::ostream &os, const glm::vec3 &data)
inline std::ostream &operator<<(std::ostream &os, const glm::quat &data)
namespace glmivec2

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::ivec2 &other, void *memory)
void InitConstructor(int x, int y, void *memory)
static glm::ivec2 operator+(const glm::ivec2 &a, const glm::ivec2 &b)
static glm::ivec2 operator-(const glm::ivec2 &a, const glm::ivec2 &b)
static glm::ivec2 operator*(const glm::ivec2 &a, const glm::ivec2 &b)
static glm::ivec2 operator/(const glm::ivec2 &a, const glm::ivec2 &b)
static bool operator==(const glm::ivec2 &a, const glm::ivec2 &b)
namespace glmivec3

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::ivec3 &other, void *memory)
void InitConstructor(int x, int y, int z, void *memory)
static glm::ivec3 operator+(const glm::ivec3 &a, const glm::ivec3 &b)
static glm::ivec3 operator-(const glm::ivec3 &a, const glm::ivec3 &b)
static glm::ivec3 operator*(const glm::ivec3 &a, const glm::ivec3 &b)
static glm::ivec3 operator/(const glm::ivec3 &a, const glm::ivec3 &b)
static bool operator==(const glm::ivec3 &a, const glm::ivec3 &b)
namespace glmivec4

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::ivec4 &other, void *memory)
void InitConstructor(int x, int y, int z, int w, void *memory)
static glm::ivec4 operator+(const glm::ivec4 &a, const glm::ivec4 &b)
static glm::ivec4 operator-(const glm::ivec4 &a, const glm::ivec4 &b)
static glm::ivec4 operator*(const glm::ivec4 &a, const glm::ivec4 &b)
static glm::ivec4 operator/(const glm::ivec4 &a, const glm::ivec4 &b)
static bool operator==(const glm::ivec4 &a, const glm::ivec4 &b)
namespace glmmat4

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::mat4 &other, void *memory)
void InitConstructor(float x, void *memory)
namespace glmquat

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::quat &other, void *memory)
void InitConstructor(float w, float x, float y, float z, void *memory)
void InitConstructor(float w, const glm::vec3 &v, void *memory)
static glm::quat operator+(const glm::quat &a, const glm::quat &b)
static glm::quat operator-(const glm::quat &a, const glm::quat &b)
static glm::quat operator*(const glm::quat &a, const glm::quat &b)
static glm::quat operator/(const glm::quat &a, const glm::quat &b)
static bool operator==(const glm::quat &a, const glm::quat &b)
static glm::vec3 TimesVec3(const glm::vec3 &a, const glm::quat &b)
namespace glmuvec2

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::uvec2 &other, void *memory)
void InitConstructor(int x, int y, void *memory)
static glm::uvec2 operator+(const glm::uvec2 &a, const glm::uvec2 &b)
static glm::uvec2 operator-(const glm::uvec2 &a, const glm::uvec2 &b)
static glm::uvec2 operator*(const glm::uvec2 &a, const glm::uvec2 &b)
static glm::uvec2 operator/(const glm::uvec2 &a, const glm::uvec2 &b)
static bool operator==(const glm::uvec2 &a, const glm::uvec2 &b)
namespace glmuvec3

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::uvec3 &other, void *memory)
void InitConstructor(int x, int y, int z, void *memory)
static glm::uvec3 operator+(const glm::uvec3 &a, const glm::uvec3 &b)
static glm::uvec3 operator-(const glm::uvec3 &a, const glm::uvec3 &b)
static glm::uvec3 operator*(const glm::uvec3 &a, const glm::uvec3 &b)
static glm::uvec3 operator/(const glm::uvec3 &a, const glm::uvec3 &b)
static bool operator==(const glm::uvec3 &a, const glm::uvec3 &b)
namespace glmuvec4

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::uvec4 &other, void *memory)
void InitConstructor(int x, int y, int z, int w, void *memory)
static glm::uvec4 operator+(const glm::uvec4 &a, const glm::uvec4 &b)
static glm::uvec4 operator-(const glm::uvec4 &a, const glm::uvec4 &b)
static glm::uvec4 operator*(const glm::uvec4 &a, const glm::uvec4 &b)
static glm::uvec4 operator/(const glm::uvec4 &a, const glm::uvec4 &b)
static bool operator==(const glm::uvec4 &a, const glm::uvec4 &b)
namespace glmvec2

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::vec2 &other, void *memory)
void InitConstructor(float xy, void *memory)
void InitConstructor(float x, float y, void *memory)
static glm::vec2 operator+(const glm::vec2 &a, const glm::vec2 &b)
static glm::vec2 operator-(const glm::vec2 &a, const glm::vec2 &b)
static glm::vec2 operator*(const glm::vec2 &a, const glm::vec2 &b)
static glm::vec2 operator/(const glm::vec2 &a, const glm::vec2 &b)
static bool operator==(const glm::vec2 &a, const glm::vec2 &b)
namespace glmvec3

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::vec3 &other, void *memory)
void InitConstructor(float xyz, void *memory)
void InitConstructor(float x, float y, float z, void *memory)
static glm::vec3 operator+(const glm::vec3 &a, const glm::vec3 &b)
static glm::vec3 operator-(const glm::vec3 &a, const glm::vec3 &b)
static glm::vec3 operator*(const glm::vec3 &a, const glm::vec3 &b)
static glm::vec3 operator*(const float &a, const glm::vec3 &b)
static glm::vec3 operator*(const glm::vec3 &a, const float &b)
static glm::vec3 operator/(const glm::vec3 &a, const glm::vec3 &b)
static bool operator==(const glm::vec3 &a, const glm::vec3 &b)
static glm::vec3 TimesQuat(const glm::quat &a, const glm::vec3 &b)
namespace glmvec4

Functions

void DefaultConstructor(void *memory)
void CopyConstructor(const glm::vec4 &other, void *memory)
void InitConstructor(float xyzw, void *memory)
void InitConstructor(float x, float y, float z, float w, void *memory)
static glm::vec4 operator+(const glm::vec4 &a, const glm::vec4 &b)
static glm::vec4 operator-(const glm::vec4 &a, const glm::vec4 &b)
static glm::vec4 operator*(const glm::vec4 &a, const glm::vec4 &b)
static glm::vec4 operator/(const glm::vec4 &a, const glm::vec4 &b)
static bool operator==(const glm::vec4 &a, const glm::vec4 &b)
static glm::vec4 TimesMat4(const glm::mat4 &a, const glm::vec4 &b)
namespace gw

Functions

template<typename T> void destroy (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
template<typename T>
Id<T> id(T)
namespace ice_engine

Typedefs

typedef unsigned char byte
typedef signed char sbyte
typedef uint8_t uint8
typedef int8_t int8
typedef int8_t sint8
typedef uint16_t uint16
typedef int16_t int16
typedef int16_t sint16
typedef uint32_t uint
typedef uint32_t uint32
typedef int32_t sint
typedef int32_t sint32
typedef int32_t int32
typedef float float32
typedef double float64
typedef uint64_t uint64
typedef int64_t sint64
typedef int64_t int64

Functions

void animateSkeleton(std::vector<glm::mat4> &transformations, const glm::mat4 &globalInverseTransformation, const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes, const BoneNode &rootBoneNode, const BoneData &boneData, std::chrono::duration<float32> duration, float32 ticksPerSecond, std::chrono::duration<float32> runningTime)
void animateSkeleton(std::vector<glm::mat4> &transformations, const glm::mat4 &globalInverseTransformation, const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes, const BoneNode &rootBoneNode, const BoneData &boneData, std::chrono::duration<float32> duration, float32 ticksPerSecond, std::chrono::duration<float32> runningTime, uint32 startFrame, uint32 endFrame)
void animateSkeleton(std::vector<glm::mat4> &transformations, const glm::mat4 &globalInverseTransformation, const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes, const BoneNode &rootBoneNode, const BoneData &boneData, std::chrono::duration<float32> duration, float32 ticksPerSecond, std::chrono::duration<float32> runningTime, std::vector<uint32> &indexCache)
void animateSkeleton(std::vector<glm::mat4> &transformations, const glm::mat4 &globalInverseTransformation, const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes, const BoneNode &rootBoneNode, const BoneData &boneData, std::chrono::duration<float32> duration, float32 ticksPerSecond, std::chrono::duration<float32> runningTime, std::vector<uint32> &indexCache, uint32 startFrame, uint32 endFrame)
template<typename T>
std::function<std::string(void*)> scriptingEngineDebuggerToStringCallback()
template<class T>
static void DefaultConstructor(T *memory)
template<class T, typename ...Args>
static void InitConstructorNoForward(T *memory, Args... args)
template<class T>
static void CopyConstructor(T *memory, const T &other)
template<class T>
static void DefaultDestructor(T *memory)
template<class T>
static T &defaultAssignmentOperator(const T &other, T *v)
template<typename V>
void registerVectorBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &type, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our vector bindings.

template<typename K, typename V>
void registerUnorderedMapBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &keyType, const std::string &valueType, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our map bindings.

template<typename V>
void registerFutureBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &type, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our future bindings.

template<typename V>
void registerSharedFutureBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &type, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our shared_future bindings.

template<typename VariantBase, typename T>
void registerVariantBindingsRecursive(scripting::IScriptingEngine *scriptingEngine, const std::string &name, std::list<std::string> types, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our variant bindings.

template<typename VariantBase, typename T, typename Value, typename ...V>
void registerVariantBindingsRecursive(scripting::IScriptingEngine *scriptingEngine, const std::string &name, std::list<std::string> types, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our variant bindings.

template<typename ...V>
void registerVariantBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::list<std::string> &types, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our variant bindings.

template<typename T>
void registerHandleBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name)

Register our Handle bindings.

template<typename T>
void registerPointerHandleBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name)

Register our Pointer Handle bindings.

template<typename T>
void registerPointerHandleBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &scriptTypeName)

Register our Pointer Handle bindings.

template<class A, class B>
B *refCast(A *a)
template<class A, class B>
B valueCast(A &a)
template<class C>
void registerComponentBehaviours(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name)
template<class C>
void registerComponentMethods(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name)
template<class C>
void registerComponentHandle(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name)
template<class C, typename ...Args>
void registerEntityComponentAssignMethod(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &params = std::string())
template<class C, typename ...Args>
static entityx::ComponentHandle<C> assignNoForward(ecs::Entity &entity, Args... args)
template<class C, typename ...Args>
void registerEntityComponentAssignMethodNoForward(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &params = std::string())
template<class C>
static const entityx::ComponentHandle<const C, const entityx::EntityManager> component(ecs::Entity &entity)
template<class C, typename ...Args>
void registerEntityComponentMethods(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &params = std::string())
template<class C, typename ...Args>
void registerComponent(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::vector<std::pair<std::string, int32>> &memberVariables, const std::string &params)
template<class C, typename ...Args>
void registerComponent(ice_engine::scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::vector<std::pair<std::string, int32>> &memberVariables)
traced stacktrace()
scripting::ScriptObjectHandle createScriptObjectHandle(void *object)
static void InitConstructorImage(Image *memory, const std::vector<byte> &data, const uint32 width, const uint32 height, const IImage::Format format)
static void InitConstructorPbrMaterial(PbrMaterial *memory, IImage *albedo, IImage *normal, IImage *metalness, IImage *roughness, IImage *ambientOcclusion)
static void InitConstructorHeightMap(HeightMap *memory, const IImage &image)
static void InitConstructorHeightMap(HeightMap *memory, const std::vector<uint8> &imageData, const uint32 width, const uint32 height)
static void InitConstructorSplatMap(SplatMap *memory, std::vector<PbrMaterial> materialMap, IImage *terrainMap)
static void InitConstructorHeightfield(Heightfield *memory, const IImage &image)
static void InitConstructorPathfindingTerrain(PathfindingTerrain *memory, const HeightMap &heightMap)
static void InitConstructorMesh(Mesh *memory, std::string name, std::vector<glm::vec3> vertices, std::vector<uint32> indices, std::vector<glm::vec4> colors, std::vector<glm::vec3> normals, std::vector<glm::vec2> textureCoordinates, VertexBoneData vertexBoneData = VertexBoneData(), BoneData boneData = BoneData())
static void InitConstructorTexture(Texture *memory, std::string name, IImage *image)
void testFunction(const pathfinding::AgentParams &ap)
void testFunction2(const pathfinding::AgentParams ap)
void testFunction3(pathfinding::AgentParams ap)
template<typename T>
void registerUniquePtrBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &scriptTypeName)

Register our unique_ptr bindings.

template<typename T = std::nullptr_t>
void registerTemplateTypeBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &scriptTypeName, const asDWORD objectTypeFlags = asOBJ_REF | asOBJ_NOCOUNT, const asEObjTypeFlags objectTypeTraitsFlag = asOBJ_APP_CLASS_ALLINTS)

Register our template type bindings.

template<typename T = std::nullptr_t>
void registerTemplateTypeSpecializationBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name, const std::string &scriptTypeName, const asDWORD objectTypeFlags = asOBJ_REF | asOBJ_NOCOUNT, const asEObjTypeFlags objectTypeTraitsFlag = asOBJ_APP_CLASS_ALLINTS)

Register our template type specialization bindings.

void registerEngineResourceManagerTemplateTypeBindings(scripting::IScriptingEngine *scriptingEngine)

Register our EngineResourceManager template type bindings.

template<typename T>
void registerEngineResourceManagerTemplateTypeSpecializationBindings(scripting::IScriptingEngine *scriptingEngine, const std::string &name)

Register our EngineResourceManager template type specialization bindings.

void mrtest(int *a, std::string *errs)
const std::vector<byte> &iImageDataProxy(const IImage *image)
uint32 iImageWidthProxy(const IImage *image)
uint32 iImageHeightProxy(const IImage *image)
template<class T>
void proxyFunctionSetPosition(const uint32 x, const uint32 y, T *t)
template<class T>
glm::ivec2 proxyFunctionGetPosition(T *t)
template<class T>
void proxyFunctionSetDimensions(const uint32 x, const uint32 y, T *t)
template<class T>
glm::ivec2 proxyFunctionGetDimensions(T *t)
template<class T>
bool proxyFunctionVisible(T *t)
template<class T>
void proxyFunctionSetVisible(const bool visible, T *t)
template<class T>
bool proxyFunctionDisabled(T *t)
template<class T>
void proxyFunctionSetDisabled(const bool disabled, T *t)
template<class T>
void proxyFunctionSetStyle(const graphics::gui::Style &style, T *t)
template<class T>
const graphics::gui::Style &proxyFunctionGetStyle(T *t)
template<class T>
const void proxyFunctionAddComponent(graphics::gui::IComponent *component, T *t)
template<class T>
const void proxyFunctionRemoveComponent(graphics::gui::IComponent *component, T *t)
template<class T>
const void proxyFunctionRemoveAllComponents(T *t)
template<class T>
graphics::gui::ILabel *proxyFunctionCreateLabel(const std::string label, T *t)
template<class T>
graphics::gui::ILabel *proxyFunctionCreateLabel(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string label, T *t)
template<class T>
graphics::gui::IButton *proxyFunctionCreateButton(const std::string label, T *t)
template<class T>
graphics::gui::IButton *proxyFunctionCreateButton(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string label, T *t)
template<class T>
graphics::gui::ITextField *proxyFunctionCreateTextField(const std::string label, T *t)
template<class T>
graphics::gui::ITextField *proxyFunctionCreateTextField(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string label, T *t)
template<class T>
graphics::gui::ITextArea *proxyFunctionCreateTextArea(const std::string label, T *t)
template<class T>
graphics::gui::ITextArea *proxyFunctionCreateTextArea(const uint32 x, const uint32 y, const uint32 width, const uint32 height, const std::string label, T *t)
template<class T>
graphics::gui::IComboBox *proxyFunctionCreateComboBox(T *t)
template<class T>
graphics::gui::ITreeView *proxyFunctionCreateTreeView(T *t)
template<class T>
void proxyFunctionDestroyLabel(const graphics::gui::ILabel *label, T *t)
template<class T>
void proxyFunctionDestroyButton(const graphics::gui::IButton *button, T *t)
template<class T>
void proxyFunctionDestroyTextField(const graphics::gui::ITextField *textField, T *t)
template<class T>
void proxyFunctionDestroyTextArea(const graphics::gui::ITextArea *textArea, T *t)
template<class T>
void proxyFunctionDestroyComboBox(const graphics::gui::IComboBox *comboBox, T *t)
template<class T>
void proxyFunctionDestroyTreeView(const graphics::gui::ITreeView *treeView, T *t)
static void InitConstructorGraphicsColor(graphics::Color *memory, const uint32 color)
static void InitConstructorGraphicsColor(graphics::Color *memory, const uint8 r, const uint8 g, const uint8 b, const uint8 a)
template<class T>
auto import(const std::string &path, const std::string &name, boost::dll::load_mode::type mode)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<physics::CollisionShapeHandle, physics::CollisionShapeHandle> &normalizedMap, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<graphics::MeshHandle, graphics::MeshHandle> &normalizedMeshHandleMap, const std::unordered_map<graphics::TextureHandle, graphics::TextureHandle> &normalizedTextureHandleMap, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<SkeletonHandle, SkeletonHandle> &normalizedSkeletonHandleMap, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<AnimationHandle, AnimationHandle> &normalizedAnimationHandleMap, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<graphics::TerrainHandle, graphics::TerrainHandle> &normalizedMap, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle> &normalizedMap, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, const std::unordered_map<pathfinding::NavigationMeshHandle, pathfinding::NavigationMeshHandle> &normalizedMap, std::unordered_map<pathfinding::CrowdHandle, pathfinding::CrowdHandle> &crowdHandleMap, logger::ILogger *logger)
void normalizeParentComponentEntities(ecs::EntityComponentSystem &entityComponentSystem, logger::ILogger *logger)
void normalizeParentComponents(ecs::EntityComponentSystem &entityComponentSystem, logger::ILogger *logger)
void normalizeChildrenComponentEntities(ecs::EntityComponentSystem &entityComponentSystem, logger::ILogger *logger)
void normalizeChildrenComponents(ecs::EntityComponentSystem &entityComponentSystem, logger::ILogger *logger)
void normalizeHandles(ecs::EntityComponentSystem &entityComponentSystem, scripting::IScriptingEngine *scriptingEngine, scripting::ModuleHandle moduleHandle, scripting::ExecutionContextHandle executionContextHandle, const std::unordered_map<scripting::ScriptObjectHandle, std::string> &scriptObjectHandleMap, logger::ILogger *logger)
uint64 sceneGetNumEntitiesProxy(const Scene *scene)
void ScriptFunctionHandleWrapperDeleter(std::pair<scripting::IScriptingEngine*, scripting::ScriptFunctionHandle> *data)
void saveImageToFile(fs::IFile *file, const Image &image)
void saveAlphaImageToFile(fs::IFile *file, const Image &image)

Variables

std::vector<graphics::model::BoneData> boneData
std::vector<graphics::model::Animation> animations
graphics::model::BoneNode rootBoneNode
glm::mat4 globalInverseTransformation = glm::mat4(1.0f)
graphics::SkeletonHandle skeletonHandle
namespace [anonymous]
namespace [anonymous]
namespace [anonymous]
namespace [anonymous]
namespace [anonymous]
namespace audio
namespace ice_engine::detail

Functions

inline glm::vec2 toGlm(const aiVector2D &v)
inline glm::vec3 toGlm(const aiVector3D &v)
inline glm::vec4 toGlm(const aiColor4D &c)
inline glm::mat4 toGlm(const aiMatrix4x4 &m)
inline glm::quat toGlm(const aiQuaternion &q)
inline boost::format &formatFunctionRecursive(boost::format &format)
template<typename Arg, typename ...Args>
inline boost::format &formatFunctionRecursive(boost::format &format, const Arg &arg, const Args&... args)
template<typename ...Args>
inline std::string formatFunction(boost::format &format, const Args&... args)
template<typename ...Args>
inline std::string format(const std::string &format, const Args&... args)
inline std::tuple<std::vector<glm::vec3>, std::vector<uint32>> generateCube(const float32 size = 1.0f)
inline std::tuple<std::vector<glm::vec3>, std::vector<uint32>> generateGrid(const uint32 width = 64, const uint32 height = 64, const glm::vec2 &offset = glm::vec2(), const uint32 resolution = 1)
template<typename V, typename H, typename = typename std::enable_if<std::is_pointer<V>::value, V>::type, typename = typename std::enable_if<std::is_base_of<handles::Handle<H>, H>::value, H>::type>
inline void checkHandleValidity(V validator, const H handle)
template<typename V, typename H, typename = typename std::enable_if<!std::is_pointer<V>::value, V>::type, typename = typename std::enable_if<std::is_base_of<handles::Handle<H>, H>::value, H>::type>
inline void checkHandleValidity(const V &validator, const H handle)
namespace ice_engine::ecs

Typedefs

using ViewIteratorDelegateIterator = typename entityx::EntityManager::BaseView<All>::Iterator
using ViewIteratorIterator = entityx::EntityManager::ViewIterator<ViewIteratorDelegateIterator<All>, All>

Enums

enum DirtyFlags

Values:

enumerator DIRTY_SOURCE_SCRIPT
enumerator DIRTY_SOURCE_PHYSICS
enumerator DIRTY_SOURCE_PATHFINDING
enumerator DIRTY_ALL
enumerator DIRTY_POSITION
enumerator DIRTY_ORIENTATION
enumerator DIRTY_RIGID_BODY_OBJECT
enumerator DIRTY_GHOST_OBJECT
enumerator DIRTY_PATHFINDING_AGENT
enumerator DIRTY_AGENT_STATE
enumerator DIRTY_MOVEMENT_REQUEST_STATE

Functions

template<>
entityx::ComponentHandle<ChildrenComponent> assign<ChildrenComponent, std::vector<Entity>>(std::vector<Entity> &&children)
template<>
entityx::ComponentHandle<ChildrenComponent> assign<ChildrenComponent, std::vector<Entity>&&>(std::vector<Entity> &&children)
template<>
entityx::ComponentHandle<ChildrenComponent> assign<ChildrenComponent, std::vector<Entity>&>(std::vector<Entity> &children)
template<>
entityx::ComponentHandle<ChildrenComponent> assign<ChildrenComponent, const std::vector<Entity>&>(const std::vector<Entity> &children)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, std::string, glm::ivec4, glm::vec4>(std::string &&boneName, glm::ivec4 &&boneIds, glm::vec4 &&boneWeights)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, std::string&, glm::ivec4&, glm::vec4&>(std::string &boneName, glm::ivec4 &boneIds, glm::vec4 &boneWeights)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, const std::string&, const glm::ivec4&, const glm::vec4&>(const std::string &boneName, const glm::ivec4 &boneIds, const glm::vec4 &boneWeights)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, std::string&&, glm::ivec4&&, glm::vec4&&>(std::string &&boneName, glm::ivec4 &&boneIds, glm::vec4 &&boneWeights)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, std::string>(std::string &&boneName)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, std::string&&>(std::string &&boneName)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, std::string&>(std::string &boneName)
template<>
entityx::ComponentHandle<ParentBoneAttachmentComponent> assign<ParentBoneAttachmentComponent, const std::string&>(const std::string &boneName)
namespace extras
namespace ice_engine::fs

Enums

enum FileFlags

Values:

enumerator READ
enumerator WRITE
enumerator APPEND
enumerator BINARY
namespace ice_engine::graphics

Typedefs

typedef int32 KeyCode

Enums

enum State

Values:

enumerator RELEASED
enumerator PRESSED
enum EventType

Values:

enumerator UNKNOWN
enumerator QUIT
enumerator WINDOWEVENT
enumerator TEXTINPUT
enumerator KEYDOWN
enumerator KEYUP
enumerator MOUSEMOTION
enumerator MOUSEBUTTONDOWN
enumerator MOUSEBUTTONUP
enumerator MOUSEWHEEL
enum ScanCode

Values:

enumerator SCANCODE_UNKNOWN
enumerator SCANCODE_A
enumerator SCANCODE_B
enumerator SCANCODE_C
enumerator SCANCODE_D
enumerator SCANCODE_E
enumerator SCANCODE_F
enumerator SCANCODE_G
enumerator SCANCODE_H
enumerator SCANCODE_I
enumerator SCANCODE_J
enumerator SCANCODE_K
enumerator SCANCODE_L
enumerator SCANCODE_M
enumerator SCANCODE_N
enumerator SCANCODE_O
enumerator SCANCODE_P
enumerator SCANCODE_Q
enumerator SCANCODE_R
enumerator SCANCODE_S
enumerator SCANCODE_T
enumerator SCANCODE_U
enumerator SCANCODE_V
enumerator SCANCODE_W
enumerator SCANCODE_X
enumerator SCANCODE_Y
enumerator SCANCODE_Z
enumerator SCANCODE_1
enumerator SCANCODE_2
enumerator SCANCODE_3
enumerator SCANCODE_4
enumerator SCANCODE_5
enumerator SCANCODE_6
enumerator SCANCODE_7
enumerator SCANCODE_8
enumerator SCANCODE_9
enumerator SCANCODE_0
enumerator SCANCODE_RETURN
enumerator SCANCODE_ESCAPE
enumerator SCANCODE_BACKSPACE
enumerator SCANCODE_TAB
enumerator SCANCODE_SPACE
enumerator SCANCODE_MINUS
enumerator SCANCODE_EQUALS
enumerator SCANCODE_LEFTBRACKET
enumerator SCANCODE_RIGHTBRACKET
enumerator SCANCODE_BACKSLASH
enumerator SCANCODE_NONUSHASH
enumerator SCANCODE_SEMICOLON
enumerator SCANCODE_APOSTROPHE
enumerator SCANCODE_GRAVE
enumerator SCANCODE_COMMA
enumerator SCANCODE_PERIOD
enumerator SCANCODE_SLASH
enumerator SCANCODE_CAPSLOCK
enumerator SCANCODE_F1
enumerator SCANCODE_F2
enumerator SCANCODE_F3
enumerator SCANCODE_F4
enumerator SCANCODE_F5
enumerator SCANCODE_F6
enumerator SCANCODE_F7
enumerator SCANCODE_F8
enumerator SCANCODE_F9
enumerator SCANCODE_F10
enumerator SCANCODE_F11
enumerator SCANCODE_F12
enumerator SCANCODE_PRINTSCREEN
enumerator SCANCODE_SCROLLLOCK
enumerator SCANCODE_PAUSE
enumerator SCANCODE_INSERT
enumerator SCANCODE_HOME
enumerator SCANCODE_PAGEUP
enumerator SCANCODE_DELETE
enumerator SCANCODE_END
enumerator SCANCODE_PAGEDOWN
enumerator SCANCODE_RIGHT
enumerator SCANCODE_LEFT
enumerator SCANCODE_DOWN
enumerator SCANCODE_UP
enumerator SCANCODE_NUMLOCKCLEAR
enumerator SCANCODE_KP_DIVIDE
enumerator SCANCODE_KP_MULTIPLY
enumerator SCANCODE_KP_MINUS
enumerator SCANCODE_KP_PLUS
enumerator SCANCODE_KP_ENTER
enumerator SCANCODE_KP_1
enumerator SCANCODE_KP_2
enumerator SCANCODE_KP_3
enumerator SCANCODE_KP_4
enumerator SCANCODE_KP_5
enumerator SCANCODE_KP_6
enumerator SCANCODE_KP_7
enumerator SCANCODE_KP_8
enumerator SCANCODE_KP_9
enumerator SCANCODE_KP_0
enumerator SCANCODE_KP_PERIOD
enumerator SCANCODE_NONUSBACKSLASH
enumerator SCANCODE_APPLICATION
enumerator SCANCODE_POWER
enumerator SCANCODE_KP_EQUALS
enumerator SCANCODE_F13
enumerator SCANCODE_F14
enumerator SCANCODE_F15
enumerator SCANCODE_F16
enumerator SCANCODE_F17
enumerator SCANCODE_F18
enumerator SCANCODE_F19
enumerator SCANCODE_F20
enumerator SCANCODE_F21
enumerator SCANCODE_F22
enumerator SCANCODE_F23
enumerator SCANCODE_F24
enumerator SCANCODE_EXECUTE
enumerator SCANCODE_HELP
enumerator SCANCODE_MENU
enumerator SCANCODE_SELECT
enumerator SCANCODE_STOP
enumerator SCANCODE_AGAIN
enumerator SCANCODE_UNDO
enumerator SCANCODE_CUT
enumerator SCANCODE_COPY
enumerator SCANCODE_PASTE
enumerator SCANCODE_FIND
enumerator SCANCODE_MUTE
enumerator SCANCODE_VOLUMEUP
enumerator SCANCODE_VOLUMEDOWN
enumerator SCANCODE_KP_COMMA
enumerator SCANCODE_KP_EQUALSAS400
enumerator SCANCODE_INTERNATIONAL1
enumerator SCANCODE_INTERNATIONAL2
enumerator SCANCODE_INTERNATIONAL3
enumerator SCANCODE_INTERNATIONAL4
enumerator SCANCODE_INTERNATIONAL5
enumerator SCANCODE_INTERNATIONAL6
enumerator SCANCODE_INTERNATIONAL7
enumerator SCANCODE_INTERNATIONAL8
enumerator SCANCODE_INTERNATIONAL9
enumerator SCANCODE_LANG1
enumerator SCANCODE_LANG2
enumerator SCANCODE_LANG3
enumerator SCANCODE_LANG4
enumerator SCANCODE_LANG5
enumerator SCANCODE_LANG6
enumerator SCANCODE_LANG7
enumerator SCANCODE_LANG8
enumerator SCANCODE_LANG9
enumerator SCANCODE_ALTERASE
enumerator SCANCODE_SYSREQ
enumerator SCANCODE_CANCEL
enumerator SCANCODE_CLEAR
enumerator SCANCODE_PRIOR
enumerator SCANCODE_RETURN2
enumerator SCANCODE_SEPARATOR
enumerator SCANCODE_OUT
enumerator SCANCODE_OPER
enumerator SCANCODE_CLEARAGAIN
enumerator SCANCODE_CRSEL
enumerator SCANCODE_EXSEL
enumerator SCANCODE_KP_00
enumerator SCANCODE_KP_000
enumerator SCANCODE_THOUSANDSSEPARATOR
enumerator SCANCODE_DECIMALSEPARATOR
enumerator SCANCODE_CURRENCYUNIT
enumerator SCANCODE_CURRENCYSUBUNIT
enumerator SCANCODE_KP_LEFTPAREN
enumerator SCANCODE_KP_RIGHTPAREN
enumerator SCANCODE_KP_LEFTBRACE
enumerator SCANCODE_KP_RIGHTBRACE
enumerator SCANCODE_KP_TAB
enumerator SCANCODE_KP_BACKSPACE
enumerator SCANCODE_KP_A
enumerator SCANCODE_KP_B
enumerator SCANCODE_KP_C
enumerator SCANCODE_KP_D
enumerator SCANCODE_KP_E
enumerator SCANCODE_KP_F
enumerator SCANCODE_KP_XOR
enumerator SCANCODE_KP_POWER
enumerator SCANCODE_KP_PERCENT
enumerator SCANCODE_KP_LESS
enumerator SCANCODE_KP_GREATER
enumerator SCANCODE_KP_AMPERSAND
enumerator SCANCODE_KP_DBLAMPERSAND
enumerator SCANCODE_KP_VERTICALBAR
enumerator SCANCODE_KP_DBLVERTICALBAR
enumerator SCANCODE_KP_COLON
enumerator SCANCODE_KP_HASH
enumerator SCANCODE_KP_SPACE
enumerator SCANCODE_KP_AT
enumerator SCANCODE_KP_EXCLAM
enumerator SCANCODE_KP_MEMSTORE
enumerator SCANCODE_KP_MEMRECALL
enumerator SCANCODE_KP_MEMCLEAR
enumerator SCANCODE_KP_MEMADD
enumerator SCANCODE_KP_MEMSUBTRACT
enumerator SCANCODE_KP_MEMMULTIPLY
enumerator SCANCODE_KP_MEMDIVIDE
enumerator SCANCODE_KP_PLUSMINUS
enumerator SCANCODE_KP_CLEAR
enumerator SCANCODE_KP_CLEARENTRY
enumerator SCANCODE_KP_BINARY
enumerator SCANCODE_KP_OCTAL
enumerator SCANCODE_KP_DECIMAL
enumerator SCANCODE_KP_HEXADECIMAL
enumerator SCANCODE_LCTRL
enumerator SCANCODE_LSHIFT
enumerator SCANCODE_LALT
enumerator SCANCODE_LGUI
enumerator SCANCODE_RCTRL
enumerator SCANCODE_RSHIFT
enumerator SCANCODE_RALT
enumerator SCANCODE_RGUI
enumerator SCANCODE_MODE
enumerator SCANCODE_AUDIONEXT
enumerator SCANCODE_AUDIOPREV
enumerator SCANCODE_AUDIOSTOP
enumerator SCANCODE_AUDIOPLAY
enumerator SCANCODE_AUDIOMUTE
enumerator SCANCODE_MEDIASELECT
enumerator SCANCODE_WWW
enumerator SCANCODE_MAIL
enumerator SCANCODE_CALCULATOR
enumerator SCANCODE_COMPUTER
enumerator SCANCODE_AC_SEARCH
enumerator SCANCODE_AC_HOME
enumerator SCANCODE_AC_BACK
enumerator SCANCODE_AC_FORWARD
enumerator SCANCODE_AC_STOP
enumerator SCANCODE_AC_REFRESH
enumerator SCANCODE_AC_BOOKMARKS
enumerator SCANCODE_BRIGHTNESSDOWN
enumerator SCANCODE_BRIGHTNESSUP
enumerator SCANCODE_DISPLAYSWITCH
enumerator SCANCODE_KBDILLUMTOGGLE
enumerator SCANCODE_KBDILLUMDOWN
enumerator SCANCODE_KBDILLUMUP
enumerator SCANCODE_EJECT
enumerator SCANCODE_SLEEP
enumerator SCANCODE_APP1
enumerator SCANCODE_APP2
enum [anonymous]

Values:

enumerator KEY_UNKNOWN
enumerator KEY_RETURN
enumerator KEY_ESCAPE
enumerator KEY_BACKSPACE
enumerator KEY_TAB
enumerator KEY_SPACE
enumerator KEY_EXCLAIM
enumerator KEY_QUOTEDBL
enumerator KEY_HASH
enumerator KEY_PERCENT
enumerator KEY_DOLLAR
enumerator KEY_AMPERSAND
enumerator KEY_QUOTE
enumerator KEY_LEFTPAREN
enumerator KEY_RIGHTPAREN
enumerator KEY_ASTERISK
enumerator KEY_PLUS
enumerator KEY_COMMA
enumerator KEY_MINUS
enumerator KEY_PERIOD
enumerator KEY_SLASH
enumerator KEY_0
enumerator KEY_1
enumerator KEY_2
enumerator KEY_3
enumerator KEY_4
enumerator KEY_5
enumerator KEY_6
enumerator KEY_7
enumerator KEY_8
enumerator KEY_9
enumerator KEY_COLON
enumerator KEY_SEMICOLON
enumerator KEY_LESS
enumerator KEY_EQUALS
enumerator KEY_GREATER
enumerator KEY_QUESTION
enumerator KEY_AT
enumerator KEY_LEFTBRACKET
enumerator KEY_BACKSLASH
enumerator KEY_RIGHTBRACKET
enumerator KEY_CARET
enumerator KEY_UNDERSCORE
enumerator KEY_BACKQUOTE
enumerator KEY_a
enumerator KEY_b
enumerator KEY_c
enumerator KEY_d
enumerator KEY_e
enumerator KEY_f
enumerator KEY_g
enumerator KEY_h
enumerator KEY_i
enumerator KEY_j
enumerator KEY_k
enumerator KEY_l
enumerator KEY_m
enumerator KEY_n
enumerator KEY_o
enumerator KEY_p
enumerator KEY_q
enumerator KEY_r
enumerator KEY_s
enumerator KEY_t
enumerator KEY_u
enumerator KEY_v
enumerator KEY_w
enumerator KEY_x
enumerator KEY_y
enumerator KEY_z
enumerator KEY_CAPSLOCK
enumerator KEY_F1
enumerator KEY_F2
enumerator KEY_F3
enumerator KEY_F4
enumerator KEY_F5
enumerator KEY_F6
enumerator KEY_F7
enumerator KEY_F8
enumerator KEY_F9
enumerator KEY_F10
enumerator KEY_F11
enumerator KEY_F12
enumerator KEY_PRINTSCREEN
enumerator KEY_SCROLLLOCK
enumerator KEY_PAUSE
enumerator KEY_INSERT
enumerator KEY_HOME
enumerator KEY_PAGEUP
enumerator KEY_DELETE
enumerator KEY_END
enumerator KEY_PAGEDOWN
enumerator KEY_RIGHT
enumerator KEY_LEFT
enumerator KEY_DOWN
enumerator KEY_UP
enumerator KEY_NUMLOCKCLEAR
enumerator KEY_KP_DIVIDE
enumerator KEY_KP_MULTIPLY
enumerator KEY_KP_MINUS
enumerator KEY_KP_PLUS
enumerator KEY_KP_ENTER
enumerator KEY_KP_1
enumerator KEY_KP_2
enumerator KEY_KP_3
enumerator KEY_KP_4
enumerator KEY_KP_5
enumerator KEY_KP_6
enumerator KEY_KP_7
enumerator KEY_KP_8
enumerator KEY_KP_9
enumerator KEY_KP_0
enumerator KEY_KP_PERIOD
enumerator KEY_APPLICATION
enumerator KEY_POWER
enumerator KEY_KP_EQUALS
enumerator KEY_F13
enumerator KEY_F14
enumerator KEY_F15
enumerator KEY_F16
enumerator KEY_F17
enumerator KEY_F18
enumerator KEY_F19
enumerator KEY_F20
enumerator KEY_F21
enumerator KEY_F22
enumerator KEY_F23
enumerator KEY_F24
enumerator KEY_EXECUTE
enumerator KEY_HELP
enumerator KEY_MENU
enumerator KEY_SELECT
enumerator KEY_STOP
enumerator KEY_AGAIN
enumerator KEY_UNDO
enumerator KEY_CUT
enumerator KEY_COPY
enumerator KEY_PASTE
enumerator KEY_FIND
enumerator KEY_MUTE
enumerator KEY_VOLUMEUP
enumerator KEY_VOLUMEDOWN
enumerator KEY_KP_COMMA
enumerator KEY_KP_EQUALSAS400
enumerator KEY_ALTERASE
enumerator KEY_SYSREQ
enumerator KEY_CANCEL
enumerator KEY_CLEAR
enumerator KEY_PRIOR
enumerator KEY_RETURN2
enumerator KEY_SEPARATOR
enumerator KEY_OUT
enumerator KEY_OPER
enumerator KEY_CLEARAGAIN
enumerator KEY_CRSEL
enumerator KEY_EXSEL
enumerator KEY_KP_00
enumerator KEY_KP_000
enumerator KEY_THOUSANDSSEPARATOR
enumerator KEY_DECIMALSEPARATOR
enumerator KEY_CURRENCYUNIT
enumerator KEY_CURRENCYSUBUNIT
enumerator KEY_KP_LEFTPAREN
enumerator KEY_KP_RIGHTPAREN
enumerator KEY_KP_LEFTBRACE
enumerator KEY_KP_RIGHTBRACE
enumerator KEY_KP_TAB
enumerator KEY_KP_BACKSPACE
enumerator KEY_KP_A
enumerator KEY_KP_B
enumerator KEY_KP_C
enumerator KEY_KP_D
enumerator KEY_KP_E
enumerator KEY_KP_F
enumerator KEY_KP_XOR
enumerator KEY_KP_POWER
enumerator KEY_KP_PERCENT
enumerator KEY_KP_LESS
enumerator KEY_KP_GREATER
enumerator KEY_KP_AMPERSAND
enumerator KEY_KP_DBLAMPERSAND
enumerator KEY_KP_VERTICALBAR
enumerator KEY_KP_DBLVERTICALBAR
enumerator KEY_KP_COLON
enumerator KEY_KP_HASH
enumerator KEY_KP_SPACE
enumerator KEY_KP_AT
enumerator KEY_KP_EXCLAM
enumerator KEY_KP_MEMSTORE
enumerator KEY_KP_MEMRECALL
enumerator KEY_KP_MEMCLEAR
enumerator KEY_KP_MEMADD
enumerator KEY_KP_MEMSUBTRACT
enumerator KEY_KP_MEMMULTIPLY
enumerator KEY_KP_MEMDIVIDE
enumerator KEY_KP_PLUSMINUS
enumerator KEY_KP_CLEAR
enumerator KEY_KP_CLEARENTRY
enumerator KEY_KP_BINARY
enumerator KEY_KP_OCTAL
enumerator KEY_KP_DECIMAL
enumerator KEY_KP_HEXADECIMAL
enumerator KEY_LCTRL
enumerator KEY_LSHIFT
enumerator KEY_LALT
enumerator KEY_LGUI
enumerator KEY_RCTRL
enumerator KEY_RSHIFT
enumerator KEY_RALT
enumerator KEY_RGUI
enumerator KEY_MODE
enumerator KEY_AUDIONEXT
enumerator KEY_AUDIOPREV
enumerator KEY_AUDIOSTOP
enumerator KEY_AUDIOPLAY
enumerator KEY_AUDIOMUTE
enumerator KEY_MEDIASELECT
enumerator KEY_WWW
enumerator KEY_MAIL
enumerator KEY_CALCULATOR
enumerator KEY_COMPUTER
enumerator KEY_AC_SEARCH
enumerator KEY_AC_HOME
enumerator KEY_AC_BACK
enumerator KEY_AC_FORWARD
enumerator KEY_AC_STOP
enumerator KEY_AC_REFRESH
enumerator KEY_AC_BOOKMARKS
enumerator KEY_BRIGHTNESSDOWN
enumerator KEY_BRIGHTNESSUP
enumerator KEY_DISPLAYSWITCH
enumerator KEY_KBDILLUMTOGGLE
enumerator KEY_KBDILLUMDOWN
enumerator KEY_KBDILLUMUP
enumerator KEY_EJECT
enumerator KEY_SLEEP
enum KeyState

Values:

enumerator KEY_PRESSED
enumerator KEY_RELEASED
enum KeyMod

Values:

enumerator KEYMOD_NONE
enumerator KEYMOD_LSHIFT
enumerator KEYMOD_RSHIFT
enumerator KEYMOD_LCTRL
enumerator KEYMOD_RCTRL
enumerator KEYMOD_LALT
enumerator KEYMOD_RALT
enumerator KEYMOD_LGUI
enumerator KEYMOD_RGUI
enumerator KEYMOD_NUM
enumerator KEYMOD_CAPS
enumerator KEYMOD_MODE
enumerator KEYMOD_RESERVED
enumerator KEYMOD_CTRL
enumerator KEYMOD_SHIFT
enumerator KEYMOD_ALT
enumerator KEYMOD_GUI
enum MouseButtonCode

Values:

enumerator BUTTON_LEFT
enumerator BUTTON_MIDDLE
enumerator BUTTON_RIGHT
enumerator BUTTON_X1
enumerator BUTTON_X2
enum ShaderType

Values:

enumerator UNKNOWN
enumerator VERTEX
enumerator TESSELLATION_CONTROL
enumerator TESSELLATION_EVALUATION
enumerator GEOMETRY
enumerator FRAGMENT
enumerator COMPUTE
enum TransformSpace

Values:

enumerator TS_LOCAL
enumerator TS_WORLD
enum WindowEventType

Values:

enumerator WINDOWEVENT_UNKNOWN
enumerator WINDOWEVENT_NONE
enumerator WINDOWEVENT_SHOWN
enumerator WINDOWEVENT_HIDDEN
enumerator WINDOWEVENT_EXPOSED
enumerator WINDOWEVENT_MOVED
enumerator WINDOWEVENT_RESIZED
enumerator WINDOWEVENT_SIZE_CHANGED
enumerator WINDOWEVENT_MINIMIZED
enumerator WINDOWEVENT_MAXIMIZED
enumerator WINDOWEVENT_RESTORED
enumerator WINDOWEVENT_ENTER
enumerator WINDOWEVENT_LEAVE
enumerator WINDOWEVENT_FOCUS_GAINED
enumerator WINDOWEVENT_FOCUS_LOST
enumerator WINDOWEVENT_CLOSE
enumerator WINDOWEVENT_TAKE_FOCUS
enumerator WINDOWEVENT_HIT_TEST
enumerator WINDOWEVENT_UNKNOWN
enumerator WINDOWEVENT_NONE
enumerator WINDOWEVENT_SHOWN
enumerator WINDOWEVENT_HIDDEN
enumerator WINDOWEVENT_EXPOSED
enumerator WINDOWEVENT_MOVED
enumerator WINDOWEVENT_RESIZED
enumerator WINDOWEVENT_SIZE_CHANGED
enumerator WINDOWEVENT_MINIMIZED
enumerator WINDOWEVENT_MAXIMIZED
enumerator WINDOWEVENT_RESTORED
enumerator WINDOWEVENT_ENTER
enumerator WINDOWEVENT_LEAVE
enumerator WINDOWEVENT_FOCUS_GAINED
enumerator WINDOWEVENT_FOCUS_LOST
enumerator WINDOWEVENT_CLOSE
enumerator WINDOWEVENT_TAKE_FOCUS
enumerator WINDOWEVENT_HIT_TEST
enum WindowEventType

Values:

enumerator WINDOWEVENT_UNKNOWN
enumerator WINDOWEVENT_NONE
enumerator WINDOWEVENT_SHOWN
enumerator WINDOWEVENT_HIDDEN
enumerator WINDOWEVENT_EXPOSED
enumerator WINDOWEVENT_MOVED
enumerator WINDOWEVENT_RESIZED
enumerator WINDOWEVENT_SIZE_CHANGED
enumerator WINDOWEVENT_MINIMIZED
enumerator WINDOWEVENT_MAXIMIZED
enumerator WINDOWEVENT_RESTORED
enumerator WINDOWEVENT_ENTER
enumerator WINDOWEVENT_LEAVE
enumerator WINDOWEVENT_FOCUS_GAINED
enumerator WINDOWEVENT_FOCUS_LOST
enumerator WINDOWEVENT_CLOSE
enumerator WINDOWEVENT_TAKE_FOCUS
enumerator WINDOWEVENT_HIT_TEST
enumerator WINDOWEVENT_UNKNOWN
enumerator WINDOWEVENT_NONE
enumerator WINDOWEVENT_SHOWN
enumerator WINDOWEVENT_HIDDEN
enumerator WINDOWEVENT_EXPOSED
enumerator WINDOWEVENT_MOVED
enumerator WINDOWEVENT_RESIZED
enumerator WINDOWEVENT_SIZE_CHANGED
enumerator WINDOWEVENT_MINIMIZED
enumerator WINDOWEVENT_MAXIMIZED
enumerator WINDOWEVENT_RESTORED
enumerator WINDOWEVENT_ENTER
enumerator WINDOWEVENT_LEAVE
enumerator WINDOWEVENT_FOCUS_GAINED
enumerator WINDOWEVENT_FOCUS_LOST
enumerator WINDOWEVENT_CLOSE
enumerator WINDOWEVENT_TAKE_FOCUS
enumerator WINDOWEVENT_HIT_TEST

Variables

constexpr uint8 TEXTINPUTEVENT_TEXT_SIZE = 32
namespace [anonymous]
namespace ice_engine::graphics::gui

Enums

enum WindowFlags

Values:

enumerator ICEENGINE_TITLE_BAR
enumerator ICEENGINE_MOVABLE
enumerator ICEENGINE_NO_SCROLLBAR
enumerator ICEENGINE_CLOSABLE
enumerator ICEENGINE_MINIMIZABLE
enumerator ICEENGINE_RESIZABLE
enumerator ICEENGINE_MENUBAR
enumerator ICEENGINE_NO_INPUT
namespace ice_engine::graphics::model

Functions

void animateSkeleton(std::vector<glm::mat4> &transformations, const glm::mat4 &globalInverseTransformation, const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes, const BoneNode &rootBoneNode, const BoneData &boneData, const float64 duration, const float64 ticksPerSecond, const float32 runningTime, const uint32 startFrame = 0, const uint32 endFrame = 0)
void animateSkeleton(std::vector<glm::mat4> &transformations, const glm::mat4 &globalInverseTransformation, const std::unordered_map<std::string, AnimatedBoneNode> &animatedBoneNodes, const BoneNode &rootBoneNode, const BoneData &boneData, const float64 duration, const float64 ticksPerSecond, const float32 runningTime, std::vector<uint32> &indexCache, const uint32 startFrame = 0, const uint32 endFrame = 0)
namespace ice_engine::handles

Functions

template<typename H, typename = typename std::enable_if<std::is_base_of<BaseHandle, H>::value, H>::type>
inline std::ostream &operator<<(std::ostream &os, const H &handle)
template<typename H, bool unused = false, typename = typename std::enable_if<std::is_base_of<BasePointerHandle, H>::value, H>::type>
inline std::ostream &operator<<(std::ostream &os, const H &handle)
namespace ice_engine::idebugrenderer

Functions

void pushLine(const glm::vec3 &from, const glm::vec3 &to, const glm::vec3 &color, IDebugRenderer *debugRenderer)
namespace ice_engine::logger

Functions

inline ILogger *globalLogger()
inline void setGlobalLogger(ILogger *globalLogger)

Variables

static ILogger *gLogger = nullptr
namespace memory
namespace ice_engine::model

Functions

std::unique_ptr<graphics::model::Model> load(const std::string &filename, logger::ILogger *logger, fs::IFileSystem *fileSystem)
std::unique_ptr<graphics::model::Model> import(const std::string &filename, logger::ILogger *logger, fs::IFileSystem *fileSystem)
void save(const std::string &filename, const graphics::model::Model &model, logger::ILogger *logger, fs::IFileSystem *fileSystem)
namespace ice_engine::networking

Enums

enum EventType

Values:

enumerator UNKNOWN
enumerator SERVERDISCONNECT
enumerator CLIENTDISCONNECT
enumerator SERVERCONNECT
enumerator SERVERCONNECTFAILED
enumerator CLIENTCONNECT
enumerator SERVERMESSAGE
enumerator CLIENTMESSAGE
namespace noise
namespace ice_engine::pathfinding

Enums

enum AgentState

Values:

enumerator INVALID
enumerator WALKING
enumerator OFFMESH
enum MovementRequestState

Values:

enumerator NONE
enumerator FAILED
enumerator VALID
enumerator REQUESTING
enumerator WAITING_FOR_QUEUE
enumerator WAITING_FOR_PATH
enumerator VELOCITY
enum UserDataType

Values:

enumerator TYPE_UNKNOWN
enumerator TYPE_BOOL
enumerator TYPE_INT8
enumerator TYPE_UINT8
enumerator TYPE_INT16
enumerator TYPE_UINT16
enumerator TYPE_INT32
enumerator TYPE_UINT32
enumerator TYPE_INT64
enumerator TYPE_UINT64
enumerator TYPE_FLOAT32
enumerator TYPE_FLOAT64
enumerator TYPE_OBJECT_REF
enumerator TYPE_OBJECT_VAL

Functions

inline std::ostream &operator<<(std::ostream &os, const AgentParams &data)
inline std::ostream &operator<<(std::ostream &os, const CrowdConfig &data)
inline std::ostream &operator<<(std::ostream &os, const NavigationMeshConfig &data)
inline std::ostream &operator<<(std::ostream &os, const PolygonMeshConfig &data)
namespace ice_engine::physics

Enums

enum UserDataType

Values:

enumerator TYPE_UNKNOWN
enumerator TYPE_BOOL
enumerator TYPE_INT8
enumerator TYPE_UINT8
enumerator TYPE_INT16
enumerator TYPE_UINT16
enumerator TYPE_INT32
enumerator TYPE_UINT32
enumerator TYPE_INT64
enumerator TYPE_UINT64
enumerator TYPE_FLOAT32
enumerator TYPE_FLOAT64
enumerator TYPE_OBJECT_REF
enumerator TYPE_OBJECT_VAL
namespace ray
namespace ice_engine::raybinding

Functions

void InitConstructor(const glm::vec3 &from, const glm::vec3 &to, void *memory)
namespace ice_engine::scripting

Enums

enum DebugAction

Values:

enumerator CONTINUE
enumerator STEP_INTO
enumerator STEP_OVER
enumerator STEP_OUT
enum EventType

Values:

enumerator UNKNOWN
enumerator HIT_BREAKPOINT
enumerator DONE
enum ParameterType

Values:

enumerator TYPE_UNKNOWN
enumerator TYPE_BOOL
enumerator TYPE_INT8
enumerator TYPE_UINT8
enumerator TYPE_INT16
enumerator TYPE_UINT16
enumerator TYPE_INT32
enumerator TYPE_UINT32
enumerator TYPE_INT64
enumerator TYPE_UINT64
enumerator TYPE_FLOAT32
enumerator TYPE_FLOAT64
enumerator TYPE_OBJECT_REF
enumerator TYPE_OBJECT_VAL
namespace ice_engine::scripting::angel_script

Functions

inline void assertNoAngelscriptError(const int32 returnCode)
namespace [anonymous]
namespace [anonymous]
namespace serialization
namespace ice_engine::utilities

Functions

bool isEmpty(const boost::any &operand)
bool isInt(const boost::any &operand)
bool isUint(const boost::any &operand)
bool isFloat(const boost::any &operand)
bool isDouble(const boost::any &operand)
bool isBool(const boost::any &operand)
bool isString(const boost::any &operand)
bool isWstring(const boost::any &operand)
bool isVec3InSphere(const glm::vec3 &point, const glm::vec3 &sphereCenter, float32 radius)
inline void saveImageToFile(fs::IFile &file, const Image &image)
inline std::vector<char> readAllBytes(std::istream &inputStream)
inline std::string toString(const std::wstring &ws)
inline std::wstring toWstring(const std::string &s)
template<class OutIt>
inline void explode(const std::string &input, const char sep, OutIt output)

Variables

const glm::vec3 GLM_UNIT_VECTOR_X = glm::vec3(1.0f, 0.0f, 0.0f)
const glm::vec3 GLM_UNIT_VECTOR_Y = glm::vec3(0.0f, 1.0f, 0.0f)
const glm::vec3 GLM_UNIT_VECTOR_Z = glm::vec3(0.0f, 0.0f, 1.0f)
namespace [anonymous]
namespace trivial
namespace std

STL namespace.

namespace std::chrono

Functions

template<typename T, typename R>
inline std::ostream &operator<<(std::ostream &os, const std::chrono::duration<T, R> &duration)
file Animate.hpp
#include <vector>#include <unordered_map>#include <string>#include <chrono>#include <glm/glm.hpp>#include “Types.hpp”#include “Model.hpp”

Defines

GLM_FORCE_RADIANS
file Animate.hpp
#include <vector>#include <unordered_map>#include <string>#include <glm/glm.hpp>#include “Types.hpp”#include “graphics/model/BoneNode.hpp”#include “graphics/model/BoneData.hpp”#include “graphics/model/AnimatedBoneNode.hpp”

Defines

GLM_FORCE_RADIANS
file Animation.hpp
#include <vector>#include <unordered_map>#include <string>#include <chrono>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>#include “Skeleton.hpp”#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file Animation.hpp
#include <unordered_map>#include <string>#include “Types.hpp”#include “graphics/model/AnimatedBoneNode.hpp”
file AnimationHandle.hpp
#include “handles/Handle.hpp”
file Audio.hpp
#include <iterator>#include <istream>#include “audio/IAudio.hpp”
file AudioFactory.hpp
#include <memory>#include “IAudioEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file AudioSceneHandle.hpp
#include “handles/Handle.hpp”
file IAudio.hpp
#include <vector>#include “Types.hpp”
file IAudioEngine.hpp
#include <glm/glm.hpp>#include “Types.hpp”#include “AudioSceneHandle.hpp”#include “SoundHandle.hpp”#include “ListenerHandle.hpp”#include “SoundSourceHandle.hpp”#include “IAudio.hpp”

Defines

GLM_FORCE_RADIANS
file IAudioEngineFactory.hpp
#include <memory>#include “IAudioEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file ListenerHandle.hpp
#include “handles/Handle.hpp”
file SoundHandle.hpp
#include “handles/Handle.hpp”
file SoundSourceHandle.hpp
#include “handles/Handle.hpp”
file AudioEngineBindingDelegate.hpp
file BindingDelegate.hpp
file BindingDelegateUtilities.hpp
#include <string>#include <sstream>#include <unordered_map>#include <list>#include <chrono>#include <future>#include <type_traits>#include <glm/glm.hpp>#include <boost/variant/get.hpp>#include “Platform.hpp”#include “Types.hpp”#include “scripting/IScriptingEngine.hpp”

Defines

GLM_FORCE_RADIANS
COMMA
file Camera.hpp
#include <memory>#include “glm/glm.hpp”#include “glm/gtc/quaternion.hpp”#include “extras/FpsCamera.hpp”

Defines

GLM_FORCE_RADIANS
file Constants.hpp
#include <string>
file CPreProcessor.hpp
#include <cstdio>#include <iostream>#include <ostream>#include <string>#include <algorithm>#include <utility>#include <unordered_map>#include <boost/algorithm/string.hpp>#include <boost/assert.hpp>#include <boost/config.hpp>#include <boost/phoenix/core/limits.hpp>#include <boost/wave/token_ids.hpp>#include <boost/wave/util/macro_helpers.hpp>#include <boost/wave/preprocessing_hooks.hpp>#include <boost/wave/cpp_iteration_context.hpp>#include <iterator>#include <fstream>#include <boost/wave/wave_config.hpp>#include <boost/wave/cpp_exceptions.hpp>#include <boost/wave/language_support.hpp>#include <boost/wave/util/file_position.hpp>#include “Types.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”#include “CPreProcessor.inl”

Defines

BOOST_WAVE_CUSTOM_DIRECTIVES_HOOKS_INCLUDED
file CPreProcessor.inl
#include <vector>#include <sstream>#include <boost/regex.hpp>#include <boost/algorithm/string.hpp>#include <boost/wave.hpp>#include <boost/wave/cpplexer/cpp_lex_token.hpp>#include <boost/wave/cpplexer/cpp_lex_iterator.hpp>#include “CPreProcessor.hpp”

Defines

CPREPROCESSOR_INL_
file DebugRenderer.hpp
#include “IDebugRenderer.hpp”#include “graphics/IGraphicsEngine.hpp”
file Assert.hpp
#include <iostream>

Defines

ICE_ENGINE_ASSERT(condition)
file AssImpUtilities.hpp
#include <assimp/scene.h>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>

Defines

GLM_FORCE_RADIANS
file DebugSerializer.hpp
#include <ostream>#include <chrono>#include <boost/type_index.hpp>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>#include <glm/gtx/string_cast.hpp>#include “handles/Handle.hpp”#include “handles/PointerHandle.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”

Defines

GLM_FORCE_RADIANS
COMMA
PRINT_HEADER_TO_STREAM(class)
PRINT_TO_STREAM(data, name)
PRINT_DELIMITER()
file Format.hpp
#include <string>#include <boost/format.hpp>
file GenerateCube.hpp
file GenerateVertices.hpp
#include <vector>#include <tuple>#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file Validation.hpp
#include <boost/type_index.hpp>#include “detail/Format.hpp”#include “exceptions/RuntimeException.hpp”
file DisplacementMap.hpp
#include “graphics/IDisplacementMap.hpp”
file AnimationComponent.hpp
#include <chrono>#include <glm/glm.hpp>#include “AnimationHandle.hpp”#include “graphics/BonesHandle.hpp”#include “serialization/std/Vector.hpp”#include “serialization/glm/Mat4.hpp”#include “serialization/std/chrono/Duration.hpp”#include “ecs/Serialization.hpp”

Defines

GLM_FORCE_RADIANS
file ChildrenComponent.hpp
#include <vector>#include <glm/glm.hpp>#include “Entity.hpp”#include “graphics/BonesHandle.hpp”#include “serialization/std/Vector.hpp”#include “serialization/SplitMember.hpp”#include “ecs/Serialization.hpp”

Defines

GLM_FORCE_RADIANS
file DirtyComponent.hpp
#include “serialization/SplitMember.hpp”
file Entity.hpp
#include <boost/static_assert.hpp>#include <glm/gtx/string_cast.hpp>#include <entityx/entityx.h>#include “pathfinding/IPathfindingEngine.hpp”#include “ecs/GraphicsComponent.hpp”#include “ecs/PointLightComponent.hpp”#include “ecs/AnimationComponent.hpp”#include “ecs/SkeletonComponent.hpp”#include “ecs/GraphicsTerrainComponent.hpp”#include “ecs/GraphicsSkyboxComponent.hpp”#include “ecs/RigidBodyObjectComponent.hpp”#include “ecs/GhostObjectComponent.hpp”#include “ecs/PositionComponent.hpp”#include “ecs/OrientationComponent.hpp”#include “ecs/PathfindingAgentComponent.hpp”#include “ecs/PathfindingObstacleComponent.hpp”#include “ecs/PathfindingCrowdComponent.hpp”#include “ecs/DirtyComponent.hpp”#include “ecs/ParentBoneAttachmentComponent.hpp”#include “ecs/PropertiesComponent.hpp”#include “ModelHandle.hpp”#include “serialization/std/Bitset.hpp”#include “serialization/SplitMember.hpp”#include “exceptions/RuntimeException.hpp”#include “ecs/ParentComponent.hpp”#include “ecs/ChildrenComponent.hpp”
file EntityComponentSystem.hpp
#include <entityx/entityx.h>#include <entityx/deps/Dependencies.h>#include “ecs/Entity.hpp”#include “ecs/GraphicsComponent.hpp”#include “ecs/RigidBodyObjectComponent.hpp”#include “ecs/GhostObjectComponent.hpp”#include “ecs/PositionComponent.hpp”#include “ecs/OrientationComponent.hpp”#include “ecs/PathfindingAgentComponent.hpp”#include “ecs/PathfindingObstacleComponent.hpp”#include “ecs/PathfindingCrowdComponent.hpp”#include “ecs/PointLightComponent.hpp”#include “ecs/ScriptObjectComponent.hpp”#include “ecs/DirtyComponent.hpp”#include “ecs/PersistableComponent.hpp”#include “serialization/std/Bitset.hpp”#include “serialization/SplitMember.hpp”
file GhostObjectComponent.hpp
#include “physics/GhostObjectHandle.hpp”
file GraphicsComponent.hpp
#include <glm/glm.hpp>#include “graphics/MeshHandle.hpp”#include “graphics/TextureHandle.hpp”#include “graphics/RenderableHandle.hpp”#include “serialization/glm/Vec3.hpp”#include “ecs/Serialization.hpp”

Defines

GLM_FORCE_RADIANS
file GraphicsSkyboxComponent.hpp
#include “graphics/SkyboxHandle.hpp”#include “graphics/SkyboxRenderableHandle.hpp”#include “ecs/Serialization.hpp”
file GraphicsTerrainComponent.hpp
#include “graphics/TerrainHandle.hpp”#include “graphics/TerrainRenderableHandle.hpp”#include “ecs/Serialization.hpp”
file OrientationComponent.hpp
#include <glm/gtc/matrix_transform.hpp>#include <glm/gtc/quaternion.hpp>#include “serialization/glm/Quat.hpp”

Defines

GLM_FORCE_RADIANS
file ParentBoneAttachmentComponent.hpp
#include <glm/glm.hpp>#include “Entity.hpp”#include “serialization/glm/IVec4.hpp”#include “serialization/glm/Vec4.hpp”#include “ecs/Serialization.hpp”

Defines

GLM_FORCE_RADIANS
file ParentComponent.hpp
#include <glm/glm.hpp>#include “Entity.hpp”#include “graphics/BonesHandle.hpp”#include “serialization/glm/Vec3.hpp”#include “serialization/SplitMember.hpp”#include “ecs/Serialization.hpp”

Defines

GLM_FORCE_RADIANS
file PathfindingAgentComponent.hpp
#include “pathfinding/CrowdHandle.hpp”#include “pathfinding/AgentHandle.hpp”#include “pathfinding/AgentParams.hpp”#include “pathfinding/AgentState.hpp”#include “pathfinding/MovementRequestState.hpp”#include “ecs/Serialization.hpp”
file PathfindingCrowdComponent.hpp
#include “pathfinding/CrowdHandle.hpp”#include “pathfinding/NavigationMeshHandle.hpp”#include “pathfinding/CrowdConfig.hpp”#include “ecs/Serialization.hpp”
file PathfindingObstacleComponent.hpp
#include “pathfinding/PolygonMeshHandle.hpp”#include “pathfinding/ObstacleHandle.hpp”#include “ecs/Serialization.hpp”
file PersistableComponent.hpp
#include “serialization/Serialization.hpp”
file PointLightComponent.hpp
#include “graphics/PointLightHandle.hpp”#include “ecs/Serialization.hpp”
file PositionComponent.hpp
#include <glm/glm.hpp>#include “serialization/glm/Vec3.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file PositionOrientationComponent.hpp
#include <glm/glm.hpp>#include <glm/gtc/matrix_transform.hpp>#include <glm/gtc/quaternion.hpp>#include “serialization/glm/Vec3.hpp”#include “serialization/glm/Quat.hpp”

Defines

GLM_FORCE_RADIANS
file PropertiesComponent.hpp
#include <unordered_map>#include <glm/glm.hpp>#include “Entity.hpp”#include “graphics/BonesHandle.hpp”#include “serialization/std/UnorderedMap.hpp”#include “serialization/SplitMember.hpp”#include “ecs/Serialization.hpp”

Defines

GLM_FORCE_RADIANS
file RigidBodyObjectComponent.hpp
#include “physics/CollisionShapeHandle.hpp”#include “physics/RigidBodyObjectHandle.hpp”#include “serialization/Serialization.hpp”
file ScriptObjectComponent.hpp
#include “scripting/ScriptObjectHandle.hpp”
file Serialization.hpp
#include <type_traits>#include “handles/Handle.hpp”#include “handles/PointerHandle.hpp”#include “pathfinding/CrowdConfig.hpp”#include “pathfinding/AgentParams.hpp”#include “pathfinding/AgentState.hpp”#include “pathfinding/MovementRequestState.hpp”#include “serialization/SplitFree.hpp”
file Serialization.hpp
#include <boost/serialization/serialization.hpp>
file SkeletonComponent.hpp
#include “SkeletonHandle.hpp”#include “ecs/Serialization.hpp”
file EngineStatistics.hpp
#include <chrono>#include “Types.hpp”
file EntityBindingDelegate.hpp
#include <string>#include <vector>#include <tuple>#include <boost/algorithm/string/join.hpp>#include <glm/glm.hpp>#include “Platform.hpp”#include “Types.hpp”#include “ecs/Entity.hpp”#include “scripting/IScriptingEngine.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/angel_script/autowrapper/aswrappedcall.h”

Defines

GLM_FORCE_RADIANS
COMMA
file EntityComponentSystemEventListener.hpp
#include “ecs/EntityComponentSystem.hpp”
file Exception.hpp
#include <boost/exception/exception.hpp>#include <boost/exception/diagnostic_information.hpp>
file FileNotFoundException.hpp
#include “exceptions/Exception.hpp”
file InvalidArgumentException.hpp
#include “exceptions/Exception.hpp”
file InvalidOperationException.hpp
#include “exceptions/Exception.hpp”
file RuntimeException.hpp
#include “exceptions/Exception.hpp”
file Stacktrace.hpp
#include <boost/stacktrace/stacktrace.hpp>#include <boost/exception/error_info.hpp>#include <boost/exception/exception.hpp>#include <boost/exception/get_error_info.hpp>

Defines

BOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED

Typedefs

typedef boost::error_info<struct tag_stacktrace, boost::stacktrace::stacktrace> traced
file Throw.hpp
#include <boost/exception/exception.hpp>#include <boost/current_function.hpp>#include “exceptions/Stacktrace.hpp”

Defines

THROW(e)
file FpsCamera.hpp
#include “glm/glm.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file FastNoise.h

Defines

FN_CELLULAR_INDEX_MAX

Typedefs

typedef float FN_DECIMAL
file File.hpp
#include <boost/filesystem/fstream.hpp>#include “IFile.hpp”
file FileSystem.hpp
#include <unordered_map>#include “IFileSystem.hpp”#include <boost/filesystem.hpp>
file IFile.hpp
#include <string>#include <iostream>#include “Types.hpp”
file IFileSystem.hpp
#include <string>#include <vector>#include <memory>#include “IFile.hpp”
file GameEngine.hpp
#include <vector>#include <map>#include <unordered_map>#include <utility>#include <memory>#include <future>#include <string>#include <mutex>#include <shared_mutex>#include <queue>#include <typeindex>#include <chrono>#include <glm/glm.hpp>#include “graphics/exceptions/GraphicsException.hpp”#include “Platform.hpp”#include “Types.hpp”#include “EngineStatistics.hpp”#include “IThreadPool.hpp”#include “IOpenGlLoader.hpp”#include “ModelHandle.hpp”#include “IDebugRenderer.hpp”#include “IWindowEventListener.hpp”#include “IKeyboardEventListener.hpp”#include “ITextInputEventListener.hpp”#include “IMouseMotionEventListener.hpp”#include “IMouseButtonEventListener.hpp”#include “IMouseWheelEventListener.hpp”#include “IConnectEventListener.hpp”#include “IDisconnectEventListener.hpp”#include “IMessageEventListener.hpp”#include “IScriptingEngineDebugHandler.hpp”#include “graphics/model/Model.hpp”#include “physics/IPhysicsEngine.hpp”#include “extras/FpsCamera.hpp”#include “handles/HandleVector.hpp”#include “utilities/Properties.hpp”#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”#include “ResourceCache.hpp”#include “ResourceHandleCache.hpp”#include “resources/ResourceManager.hpp”#include “resources/EngineResourceManager.hpp”#include “Camera.hpp”#include “ThreadPool.hpp”#include “OpenGlLoader.hpp”#include “DebugRenderer.hpp”#include “IPluginManager.hpp”#include “Heightfield.hpp”#include “PathfindingTerrain.hpp”#include “graphics/IGraphicsEngineFactory.hpp”#include “graphics/IGraphicsEngine.hpp”#include “graphics/IEventListener.hpp”#include “graphics/gui/IGui.hpp”#include “ITerrainFactory.hpp”#include “audio/IAudioEngineFactory.hpp”#include “audio/IAudioEngine.hpp”#include “networking/INetworkingEngineFactory.hpp”#include “networking/INetworkingEngine.hpp”#include “networking/IEventListener.hpp”#include “pathfinding/IPathfindingEngineFactory.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “scripting/IScriptingEngine.hpp”#include “serialization/TextOutArchive.hpp”#include “serialization/TextInArchive.hpp”#include “Audio.hpp”#include “Model.hpp”#include “Animate.hpp”

Defines

GLM_FORCE_RADIANS
file GameFactory.hpp
#include <memory>#include “GameEngine.hpp”#include “utilities/Properties.hpp”#include “IPluginManager.hpp”#include “logger/ILogger.hpp”
file BonesHandle.hpp
#include “handles/Handle.hpp”
file CameraHandle.hpp
#include “handles/Handle.hpp”
file Color.hpp
#include “Types.hpp”
file Event.hpp
#include “Types.hpp”#include “graphics/Video.hpp”#include “graphics/Keyboard.hpp”#include “graphics/Mouse.hpp”
file Event.hpp
#include <vector>#include “Types.hpp”#include “ClientHandle.hpp”#include “ServerHandle.hpp”#include “RemoteConnectionHandle.hpp”
file GraphicsException.hpp
#include “exceptions/Exception.hpp”
file FragmentShaderHandle.hpp
#include “handles/Handle.hpp”
file GraphicsFactory.hpp
#include <memory>#include “IGraphicsEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file IButton.hpp
#include <functional>#include <string>#include “IComponent.hpp”
file IComboBox.hpp
#include <functional>#include <string>#include “IComponent.hpp”#include “IComboBoxItem.hpp”
file IComboBoxItem.hpp
#include <functional>#include <string>#include “IComponent.hpp”
file IComponent.hpp
#include <glm/glm.hpp>#include “graphics/gui/Style.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file IGenericComponentContainer.hpp
#include <string>#include <memory>#include “IComponent.hpp”#include “ILabel.hpp”#include “IButton.hpp”#include “ITextField.hpp”#include “ITextArea.hpp”#include “IComboBox.hpp”#include “IMenuBar.hpp”#include “IRectangle.hpp”#include “ITreeView.hpp”
file IGui.hpp
#include <string>#include “graphics/Event.hpp”#include “IWindow.hpp”#include “IMainMenuBar.hpp”#include “IPopupModal.hpp”#include “Types.hpp”
file IGuiFactory.hpp
#include <memory>#include “IGui.hpp”#include “graphics/IGraphicsEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file ILabel.hpp
#include <string>#include “IComponent.hpp”
file IMainMenuBar.hpp
#include <string>#include “IComponent.hpp”#include “IMenu.hpp”
file IMenu.hpp
#include <string>#include “IComponent.hpp”#include “IMenuItem.hpp”
file IMenuBar.hpp
#include <string>#include “IComponent.hpp”#include “IMenu.hpp”
file IMenuItem.hpp
#include <string>#include <functional>#include “IComponent.hpp”
file IPopupModal.hpp
#include <string>#include <functional>#include “IComponent.hpp”#include “IGenericComponentContainer.hpp”
file IRectangle.hpp
#include <glm/glm.hpp>#include “IComponent.hpp”#include “graphics/Color.hpp”

Defines

GLM_FORCE_RADIANS
file ITextArea.hpp
#include <string>#include <functional>#include “IComponent.hpp”
file ITextField.hpp
#include <string>#include <functional>#include “IComponent.hpp”
file ITreeNode.hpp
#include <string>#include “IComponent.hpp”
file ITreeView.hpp
#include <functional>#include <string>#include “IComponent.hpp”#include “ITreeNode.hpp”
file IWindow.hpp
#include <string>#include “IComponent.hpp”#include “IGenericComponentContainer.hpp”#include “ILabel.hpp”#include “IButton.hpp”#include “IMenuBar.hpp”#include “IRectangle.hpp”
file Style.hpp
#include “Types.hpp”
file IDisplacementMap.hpp
#include “graphics/IImage.hpp”#include “Types.hpp”
file IEventListener.hpp
#include “Event.hpp”
file IEventListener.hpp
#include “Event.hpp”
file IGraphicsEngine.hpp
#include <vector>#include <glm/glm.hpp>#include “Types.hpp”#include “IEventListener.hpp”#include “TransformSpace.hpp”#include “RenderSceneHandle.hpp”#include “RenderableHandle.hpp”#include “TerrainRenderableHandle.hpp”#include “TerrainHandle.hpp”#include “SkyboxRenderableHandle.hpp”#include “SkyboxHandle.hpp”#include “MeshHandle.hpp”#include “MaterialHandle.hpp”#include “TextureHandle.hpp”#include “SkeletonHandle.hpp”#include “BonesHandle.hpp”#include “PointLightHandle.hpp”#include “CameraHandle.hpp”#include “VertexShaderHandle.hpp”#include “FragmentShaderHandle.hpp”#include “TessellationControlShaderHandle.hpp”#include “TessellationEvaluationShaderHandle.hpp”#include “ShaderProgramHandle.hpp”#include “IHeightMap.hpp”#include “ISplatMap.hpp”#include “IDisplacementMap.hpp”#include “IMesh.hpp”#include “ITexture.hpp”#include “ISkeleton.hpp”#include “IImage.hpp”

Defines

GLM_FORCE_RADIANS
file IGraphicsEngineFactory.hpp
#include <memory>#include “IGraphicsEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file IHeightMap.hpp
#include “graphics/IImage.hpp”#include “Types.hpp”
file IImage.hpp
#include <vector>#include “Types.hpp”
file IImage.hpp
#include <vector>#include “graphics/IImage.hpp”#include “physics/IImage.hpp”
file IImage.hpp
#include <vector>#include “Types.hpp”
file IImage.hpp
#include <vector>#include “Types.hpp”
file IMesh.hpp
#include <vector>#include <string>#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file IPbrMaterial.hpp
#include “graphics/IImage.hpp”#include “Types.hpp”
file ISkeleton.hpp
#include <map>#include <string>#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file ISplatMap.hpp
#include <vector>#include “graphics/IPbrMaterial.hpp”#include “graphics/IImage.hpp”#include “Types.hpp”
file ITexture.hpp
#include <string>#include “graphics/IImage.hpp”
file Keyboard.hpp
#include “Types.hpp”
file MaterialHandle.hpp
#include “handles/Handle.hpp”
file MeshHandle.hpp
#include “handles/Handle.hpp”
file AnimatedBoneNode.hpp
#include <string>#include <vector>#include <utility>#include <glm/glm.hpp>#include “glm/gtc/quaternion.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file AnimationSet.hpp
#include <unordered_map>#include <string>#include <glm/glm.hpp>#include “graphics/model/BoneNode.hpp”#include “graphics/model/Animation.hpp”

Defines

GLM_FORCE_RADIANS
file Bone.hpp
#include <string>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file BoneData.hpp
#include <string>#include <unordered_map>#include <vector>#include “Types.hpp”#include “graphics/model/Bone.hpp”
file BoneNode.hpp
#include <string>#include <vector>#include <glm/glm.hpp>#include “graphics/model/BoneNode.hpp”

Defines

GLM_FORCE_RADIANS
file Material.hpp
#include <string>#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file Mesh.hpp
#include <vector>#include <string>#include <glm/glm.hpp>#include “Types.hpp”#include “graphics/model/VertexBoneData.hpp”

Defines

GLM_FORCE_RADIANS
file Mesh.hpp
#include <vector>#include <unordered_map>#include <string>#include <glm/glm.hpp>#include “graphics/IMesh.hpp”#include “graphics/ISkeleton.hpp”#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”#include “exceptions/RuntimeException.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file Model.hpp
#include <vector>#include <glm/glm.hpp>#include “graphics/model/Mesh.hpp”#include “graphics/model/Material.hpp”#include “graphics/model/Texture.hpp”#include “graphics/model/BoneData.hpp”#include “graphics/model/Animation.hpp”#include “graphics/model/BoneNode.hpp”

Defines

GLM_FORCE_RADIANS
file Model.hpp
#include <vector>#include “Mesh.hpp”#include “Texture.hpp”#include “Animation.hpp”#include “Skeleton.hpp”#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”#include “Types.hpp”
file Texture.hpp
#include <string>#include “Image.hpp”
file Texture.hpp
#include <vector>#include <string>#include “graphics/ITexture.hpp”#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”#include “Image.hpp”#include “Types.hpp”
file VertexBoneData.hpp
#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file ModelHandle.hpp
#include “handles/Handle.hpp”
file ModelHandle.hpp
#include “handles/Handle.hpp”
file ModelInstanceHandle.hpp
#include “ResourceHandle.hpp”
file Mouse.hpp
#include “Types.hpp”
file PointLightHandle.hpp
#include “handles/Handle.hpp”
file RenderableHandle.hpp
#include “handles/Handle.hpp”
file RenderHandle.hpp
#include “handles/Handle.hpp”
file RenderSceneHandle.hpp
#include “handles/Handle.hpp”
file ShaderHandle.hpp
#include “handles/Handle.hpp”
file ShaderProgramHandle.hpp
#include “handles/Handle.hpp”
file SkeletonHandle.hpp
#include “handles/Handle.hpp”
file SkeletonHandle.hpp
#include “handles/Handle.hpp”
file SkyboxHandle.hpp
#include “handles/Handle.hpp”
file SkyboxRenderableHandle.hpp
#include “handles/Handle.hpp”
file TerrainHandle.hpp
#include “handles/Handle.hpp”
file TerrainRenderableHandle.hpp
#include “handles/Handle.hpp”
file TessellationControlShaderHandle.hpp
#include “handles/Handle.hpp”
file TessellationEvaluationShaderHandle.hpp
#include “handles/Handle.hpp”
file TextureHandle.hpp
#include “handles/Handle.hpp”
file TransformSpace.hpp
file VertexShaderHandle.hpp
#include “handles/Handle.hpp”
file Video.hpp
#include “Types.hpp”
file Window.hpp
#include “Types.hpp”
file GraphicsEngineBindingDelegate.hpp

Defines

COMPONENT_CLASS_METHODS(name, class)
file Handle.hpp
#include <ostream>#include <utility>#include <boost/type_index.hpp>#include “Types.hpp”
file HandleVector.hpp
#include <cstddef>#include <new>#include <vector>#include “Types.hpp”#include “Handle.hpp”#include “handles/MemoryPool.hpp”
file MemoryPool.hpp
#include <memory>#include “boost/pool/pool.hpp”#include “Types.hpp”
file PointerHandle.hpp
#include <iostream>#include “Types.hpp”
file PointerHandleVector.hpp
#include <cstddef>#include <new>#include <vector>#include “Types.hpp”#include “PointerHandle.hpp”#include “handles/MemoryPool.hpp”
file Heightfield.hpp
#include <vector>#include “physics/IHeightfield.hpp”#include “Image.hpp”
file HeightMap.hpp
#include <sstream>#include <fstream>#include <iostream>#include <vector>#include <memory>#include <glm/glm.hpp>#include “graphics/IHeightMap.hpp”#include “Image.hpp”

Defines

GLM_FORCE_RADIANS
file IAudioPlugin.hpp
#include <memory>#include “audio/IAudioEngineFactory.hpp”#include “IPlugin.hpp”
file IceEngineMotionChangeListener.hpp
#include “physics/IMotionChangeListener.hpp”#include “ecs/Entity.hpp”
file IceEnginePathfindingAgentMotionChangeListener.hpp
#include “pathfinding/IAgentMotionChangeListener.hpp”#include “Scene.hpp”
file IceEnginePathfindingAgentStateChangeListener.hpp
#include “pathfinding/IAgentStateChangeListener.hpp”#include “ecs/Entity.hpp”
file IceEnginePathfindingMovementRequestStateChangeListener.hpp
#include “pathfinding/IMovementRequestStateChangeListener.hpp”#include “ecs/Entity.hpp”
file IConnectEventListener.hpp
#include “networking/Event.hpp”
file IDebugRenderer.hpp
#include <vector>#include <tuple>#include <glm/glm.hpp>#include “physics/IPhysicsDebugRenderer.hpp”#include “pathfinding/IPathfindingDebugRenderer.hpp”

Defines

GLM_FORCE_RADIANS
file IDisconnectEventListener.hpp
#include “networking/Event.hpp”
file IFileSerializable.hpp
#include <fstream>
file IGraphicsPlugin.hpp
#include <memory>#include “graphics/IGraphicsEngineFactory.hpp”#include “IPlugin.hpp”
file IGuiPlugin.hpp
#include <memory>#include “graphics/gui/IGuiFactory.hpp”#include “IPlugin.hpp”
file IKeyboardEventListener.hpp
#include “graphics/Event.hpp”
file Image.hpp
#include <sstream>#include <fstream>#include <iostream>#include <vector>#include “IImage.hpp”#include “fs/IFile.hpp”
file IMessageEventListener.hpp
#include “networking/Event.hpp”
file IModule.hpp
#include “Types.hpp”
file IModuleFactory.hpp
#include <memory>#include “IModule.hpp”#include “graphics/IGraphicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “scripting/IScriptingEngine.hpp”#include “audio/IAudioEngine.hpp”#include “networking/INetworkingEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file IModulePlugin.hpp
#include <memory>#include “IModuleFactory.hpp”#include “IPlugin.hpp”
file IMouseButtonEventListener.hpp
#include “graphics/Event.hpp”
file IMouseMotionEventListener.hpp
#include “graphics/Event.hpp”
file IMouseWheelEventListener.hpp
#include “graphics/Event.hpp”
file INetworkingPlugin.hpp
#include <memory>#include “networking/INetworkingEngineFactory.hpp”#include “IPlugin.hpp”
file IOpenGlLoader.hpp
#include <functional>#include <future>#include “Types.hpp”
file IPathfindingPlugin.hpp
#include <memory>#include “pathfinding/IPathfindingEngineFactory.hpp”#include “IPlugin.hpp”
file IPhysicsPlugin.hpp
#include <memory>#include “physics/IPhysicsEngineFactory.hpp”#include “IPlugin.hpp”
file IPlugin.hpp
#include <string>
file IPluginManager.hpp
#include <vector>#include <memory>#include “Image.hpp”#include “IResourceImporterPlugin.hpp”#include “IGuiPlugin.hpp”#include “IGraphicsPlugin.hpp”#include “IAudioPlugin.hpp”#include “IPathfindingPlugin.hpp”#include “IPhysicsPlugin.hpp”#include “INetworkingPlugin.hpp”#include “IModulePlugin.hpp”#include “IScriptingEngineBindingPlugin.hpp”
file IResourceCache.hpp
#include <string>#include <memory>#include “Model.hpp”#include “Image.hpp”#include “Audio.hpp”
file IResourceImporter.hpp
#include <string>#include <memory>
file IResourceImporter.Image.hpp
#include <string>#include <memory>#include “Image.hpp”
file IResourceImporterFactory.hpp
#include <memory>#include “IResourceImporter.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file IResourceImporterPlugin.hpp
#include <memory>#include “IResourceImporterFactory.hpp”#include “IPlugin.hpp”
file IScriptingEngineBinding.hpp
file IScriptingEngineBindingFactory.hpp
#include <memory>#include “IScriptingEngineBinding.hpp”#include “graphics/IGraphicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “physics/IPhysicsEngine.hpp”#include “scripting/IScriptingEngine.hpp”#include “audio/IAudioEngine.hpp”#include “networking/INetworkingEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file IScriptingEngineBindingPlugin.hpp
#include <memory>#include “IScriptingEngineBindingFactory.hpp”#include “IPlugin.hpp”
file IScriptingEngineDebugHandler.hpp
#include “Types.hpp”
file ITerrain.hpp
#include <vector>#include “pathfinding/CrowdHandle.hpp”#include “Types.hpp”
file ITerrain.hpp
#include <vector>#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file ITerrainFactory.hpp
#include <memory>#include “ITerrain.hpp”#include “graphics/IGraphicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “physics/IPhysicsEngine.hpp”#include “audio/IAudioEngine.hpp”#include “pathfinding/PolygonMeshHandle.hpp”#include “pathfinding/NavigationMeshHandle.hpp”#include “HeightMap.hpp”#include “SplatMap.hpp”#include “DisplacementMap.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file ITextInputEventListener.hpp
#include “graphics/Event.hpp”
file IThreadPool.hpp
#include <functional>#include <future>#include “Types.hpp”
file IWindowEventListener.hpp
#include “graphics/Event.hpp”
file ILogger.hpp
#include <string>#include <cstdio>#include “detail/Format.hpp”

Defines

LOG_INFO(logger, message, ...)
LOG_WARN(logger, message, ...)
LOG_ERROR(logger, message, ...)
LOG_FATAL(logger, message, ...)
LOG_DEBUG(logger, message, ...)
LOG_TRACE(logger, message, ...)
GLOBAL_LOG_INFO(message, ...)
GLOBAL_LOG_WARN(message, ...)
GLOBAL_LOG_ERROR(message, ...)
GLOBAL_LOG_FATAL(message, ...)
GLOBAL_LOG_DEBUG(message, ...)
GLOBAL_LOG_TRACE(message, ...)
file Logger.hpp
#include <boost/log/core.hpp>#include <boost/log/trivial.hpp>#include <boost/log/expressions.hpp>#include <boost/log/sinks/text_file_backend.hpp>#include <boost/log/utility/setup/file.hpp>#include <boost/log/utility/setup/common_attributes.hpp>#include <boost/log/sources/severity_logger.hpp>#include <boost/log/sources/record_ostream.hpp>#include “logger/ILogger.hpp”
file Main.hpp
file ModelLoader.hpp
#include <string>#include <memory>#include “graphics/model/Model.hpp”#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”
file ClientHandle.hpp
#include “handles/Handle.hpp”
file INetworkingEngine.hpp
#include <vector>#include “IEventListener.hpp”#include “Event.hpp”#include “ServerHandle.hpp”#include “ClientHandle.hpp”#include “RemoteConnectionHandle.hpp”
file INetworkingEngineFactory.hpp
#include <memory>#include “INetworkingEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file RemoteConnectionHandle.hpp
#include “handles/Handle.hpp”
file ServerHandle.hpp
#include “handles/Handle.hpp”
file NetworkingEngineBindingDelegate.hpp
file Noise.hpp
#include “FastNoise.h”#include “Types.hpp”
file OpenGlLoader.hpp
#include <mutex>#include <deque>#include <memory>#include “IOpenGlLoader.hpp”
file AgentHandle.hpp
#include “handles/Handle.hpp”
file AgentParams.hpp
#include “detail/DebugSerializer.hpp”
file AgentState.hpp
#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file CrowdConfig.hpp
#include “detail/DebugSerializer.hpp”#include “Types.hpp”
file CrowdHandle.hpp
#include “handles/Handle.hpp”
file IAgentMotionChangeListener.hpp
#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file IAgentStateChangeListener.hpp
#include “AgentState.hpp”
file IMovementRequestStateChangeListener.hpp
#include “MovementRequestState.hpp”
file IPathfindingDebugRenderer.hpp
#include <vector>#include <tuple>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file IPathfindingEngine.hpp
#include <vector>#include <memory>#include <boost/any.hpp>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>#include “Types.hpp”#include “pathfinding/UserData.hpp”#include “pathfinding/PathfindingSceneHandle.hpp”#include “pathfinding/PolygonMeshHandle.hpp”#include “pathfinding/NavigationMeshHandle.hpp”#include “pathfinding/AgentHandle.hpp”#include “pathfinding/ObstacleHandle.hpp”#include “pathfinding/CrowdHandle.hpp”#include “pathfinding/PolygonMeshConfig.hpp”#include “pathfinding/NavigationMeshConfig.hpp”#include “pathfinding/CrowdConfig.hpp”#include “pathfinding/AgentParams.hpp”#include “pathfinding/AgentState.hpp”#include “pathfinding/MovementRequestState.hpp”#include “pathfinding/IAgentMotionChangeListener.hpp”#include “pathfinding/IAgentStateChangeListener.hpp”#include “pathfinding/IMovementRequestStateChangeListener.hpp”#include “pathfinding/IPathfindingDebugRenderer.hpp”#include “pathfinding/ITerrain.hpp”

Defines

GLM_FORCE_RADIANS
file IPathfindingEngineFactory.hpp
#include <memory>#include “pathfinding/IPathfindingEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file MovementRequestState.hpp
#include “Types.hpp”
file NavigationMeshConfig.hpp
#include “detail/DebugSerializer.hpp”#include “Types.hpp”
file NavigationMeshHandle.hpp
#include “handles/Handle.hpp”
file ObstacleHandle.hpp
#include “handles/Handle.hpp”
file PathfindingSceneHandle.hpp
#include “handles/Handle.hpp”
file PolygonMeshConfig.hpp
#include “detail/DebugSerializer.hpp”#include “Types.hpp”
file PolygonMeshHandle.hpp
#include “handles/Handle.hpp”
file UserData.hpp
#include <cstring>#include <functional>#include “Types.hpp”#include “UserData.inl”
file UserData.hpp
#include <cstring>#include <functional>#include “Types.hpp”#include “UserData.inl”
file UserData.inl

Defines

PATHFINDING_USER_DATA_INLINE_H_
file UserData.inl

Defines

USER_DATA_INLINE_H_
file PathfindingEngineBindingDelegate.hpp
file PathfindingTerrain.hpp
#include “pathfinding/ITerrain.hpp”#include “HeightMap.hpp”
file PbrMaterial.hpp
#include “IImage.hpp”#include “graphics/IPbrMaterial.hpp”
file CollisionShapeHandle.hpp
#include “handles/Handle.hpp”
file GhostObjectHandle.hpp
#include “handles/PointerHandle.hpp”
file IHeightfield.hpp
#include <vector>#include “Types.hpp”
file IMotionChangeListener.hpp
#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>

Defines

GLM_FORCE_RADIANS
file IPhysicsDebugRenderer.hpp
#include <vector>#include <tuple>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file IPhysicsEngine.hpp
#include <memory>#include <boost/any.hpp>#include <boost/variant/variant.hpp>#include <glm/glm.hpp>#include “Types.hpp”#include “ray/Ray.hpp”#include “IImage.hpp”#include “IHeightfield.hpp”#include “physics/PhysicsSceneHandle.hpp”#include “physics/CollisionShapeHandle.hpp”#include “physics/RigidBodyObjectHandle.hpp”#include “physics/GhostObjectHandle.hpp”#include “physics/IMotionChangeListener.hpp”#include “physics/IPhysicsDebugRenderer.hpp”#include “physics/Raycast.hpp”

Defines

GLM_FORCE_RADIANS
file IPhysicsEngineFactory.hpp
#include <memory>#include “physics/IPhysicsEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file PhysicsSceneHandle.hpp
#include “handles/Handle.hpp”
file Raycast.hpp
#include <ostream>#include <glm/glm.hpp>#include “ray/Ray.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file Raycast.hpp
#include <glm/glm.hpp>#include “ecs/Entity.hpp”#include “ray/Ray.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file RigidBodyObjectHandle.hpp
#include “handles/PointerHandle.hpp”
file PhysicsEngineBindingDelegate.hpp
file Platform.hpp
file PluginManager.hpp
#include “IPluginManager.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file Ray.hpp
#include <ostream>#include <glm/glm.hpp>#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file ResourceCache.hpp
#include <unordered_map>#include <mutex>#include “IResourceCache.hpp”
file ResourceHandleCache.hpp
#include <unordered_map>#include <utility>#include <string>#include <mutex>#include <boost/thread/shared_mutex.hpp>#include <boost/thread/shared_lock_guard.hpp>#include “ModelHandle.hpp”#include “SkeletonHandle.hpp”#include “AnimationHandle.hpp”#include “graphics/MeshHandle.hpp”#include “graphics/TextureHandle.hpp”#include “graphics/TerrainHandle.hpp”#include “graphics/SkyboxHandle.hpp”#include “audio/SoundHandle.hpp”#include “physics/CollisionShapeHandle.hpp”#include “pathfinding/PolygonMeshHandle.hpp”#include “pathfinding/NavigationMeshHandle.hpp”#include “exceptions/Exception.hpp”#include “Types.hpp”
file AbstractEngineResourceManager.hpp
#include <boost/type_index.hpp>#include “resources/BaseEngineResourceManager.hpp”#include “detail/Format.hpp”
file AbstractResourceManager.hpp
file BaseEngineResourceManager.hpp
file BaseResourceManager.hpp
file EngineResourceManager.hpp
#include “resources/AbstractEngineResourceManager.hpp”
file EngineResourceManager.MeshHandle.hpp
#include “resources/EngineResourceManager.hpp”#include “resources/GraphicsEngineResourceManager.hpp”#include “graphics/MeshHandle.hpp”#include “detail/Validation.hpp”
file EngineResourceManager.TextureHandle.hpp
#include “resources/EngineResourceManager.hpp”#include “resources/GraphicsEngineResourceManager.hpp”#include “graphics/TextureHandle.hpp”#include “detail/Validation.hpp”
file EngineResourceManager.VertexShaderHandle.hpp
#include “resources/EngineResourceManager.hpp”#include “resources/GraphicsEngineResourceManager.hpp”#include “graphics/VertexShaderHandle.hpp”#include “detail/Validation.hpp”
file GraphicsEngineResourceManager.hpp
#include “graphics/IGraphicsEngine.hpp”#include “detail/Validation.hpp”
file ResourceManager.hpp
#include <string>#include <memory>#include <unordered_map>#include <mutex>#include <boost/type_index.hpp>#include “resources/BaseResourceManager.hpp”#include “IResourceImporter.hpp”#include “exceptions/InvalidArgumentException.hpp”#include “detail/Format.hpp”
file ResourceManager.Image.hpp
file Scene.hpp
#include <vector>#include <string>#include <unordered_map>#include <glm/glm.hpp>#include <boost/optional.hpp>#include <boost/type_index.hpp>#include “Types.hpp”#include “exceptions/Exception.hpp”#include “SceneStatistics.hpp”#include “ModelHandle.hpp”#include “Raycast.hpp”#include “ScriptFunctionHandleWrapper.hpp”#include “ecs/EntityComponentSystem.hpp”#include “ecs/Entity.hpp”#include “ecs/GraphicsComponent.hpp”#include “ecs/ScriptObjectComponent.hpp”#include “ecs/RigidBodyObjectComponent.hpp”#include “ecs/GhostObjectComponent.hpp”#include “ecs/PathfindingAgentComponent.hpp”#include “ecs/PositionComponent.hpp”#include “ecs/OrientationComponent.hpp”#include “ecs/PointLightComponent.hpp”#include “scripting/ScriptObjectHandle.hpp”#include “audio/SoundHandle.hpp”#include “audio/SoundSourceHandle.hpp”#include “graphics/TransformSpace.hpp”#include “graphics/MeshHandle.hpp”#include “graphics/TextureHandle.hpp”#include “graphics/ShaderProgramHandle.hpp”#include “graphics/PointLightHandle.hpp”#include “physics/CollisionShapeHandle.hpp”#include “physics/RigidBodyObjectHandle.hpp”#include “physics/GhostObjectHandle.hpp”#include “graphics/IGraphicsEngine.hpp”#include “ITerrain.hpp”#include “physics/IPhysicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “audio/IAudioEngine.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”#include “serialization/ISerializable.hpp”#include “serialization/TextOutArchive.hpp”#include “serialization/TextInArchive.hpp”#include “serialization/SplitMember.hpp”#include “serialization/std/Map.hpp”#include “serialization/std/UnorderedMap.hpp”#include “IThreadPool.hpp”#include “IOpenGlLoader.hpp”

Defines

GLM_FORCE_RADIANS
file SceneBindingDelegate.hpp
file SceneStatistics.hpp
#include “Types.hpp”
file ScriptFunctionHandleWrapper.hpp
#include <memory>#include <utility>#include “scripting/IScriptingEngine.hpp”
file AngelscriptCPreProcessor.hpp
#include <vector>#include <sstream>#include <regex>#include <boost/regex.hpp>#include <boost/algorithm/string.hpp>#include <boost/wave.hpp>#include <boost/wave/cpplexer/cpp_lex_token.hpp>#include <boost/wave/cpplexer/cpp_lex_iterator.hpp>#include “CPreProcessor.hpp”
file AngelscriptDebugger.hpp
#include <mutex>#include <sstream>#include <unordered_map>#include “scripting/IScriptingEngineDebugger.hpp”#include “scripting/angel_script/AngelscriptUtilities.hpp”#include “scripting/angel_script/debugger/debugger.h”#include “logger/ILogger.hpp”#include “exceptions/InvalidArgumentException.hpp”
file AngelscriptUtilities.hpp
#include <angelscript.h>#include “Types.hpp”#include “exceptions/Exception.hpp”#include “exceptions/InvalidArgumentException.hpp”
file aswrappedcall.h
#include <angelscript.h>#include <new>

Defines

TMPL
WRAP_FN(name)
WRAP_MFN(ClassType, name)
WRAP_OBJ_FIRST(name)
WRAP_OBJ_LAST(name)
WRAP_FN_PR(name, Parameters, ReturnType)
WRAP_MFN_PR(ClassType, name, Parameters, ReturnType)
WRAP_OBJ_FIRST_PR(name, Parameters, ReturnType)
WRAP_OBJ_LAST_PR(name, Parameters, ReturnType)
WRAP_CON(ClassType, Parameters)
WRAP_DES(ClassType)
file generateheader.cpp
#include <stdio.h>#include <string>

Functions

void PrintTemplate(const char *base, const char *typeNameList, const char *retType, const char *objType, const char *isConst, const char *newExpr, const char *objExpr, const char *argList1, const char *argList2, const char *wrapName)
void PrintConstructor(const char *comma, const char *typeNameList, const char *typeList, const char *argList)
int main()

Variables

const int max_args = 4
file debugger.h
#include <angelscript.h>#include <string>#include <vector>#include <map>
file Vec3.cpp
#include <assert.h>#include <string.h>#include <new>#include <math.h>#include “Vec3.h”

Functions

bool operator==(const Vec3 &a, const Vec3 &b)
bool operator!=(const Vec3 &a, const Vec3 &b)
Vec3 operator+(const Vec3 &a, const Vec3 &b)
Vec3 operator-(const Vec3 &a, const Vec3 &b)
Vec3 operator*(float s, const Vec3 &v)
Vec3 operator*(const Vec3 &v, float s)
Vec3 operator/(const Vec3 &v, float s)
static void Vec3DefaultConstructor(Vec3 *self)
static void Vec3CopyConstructor(const Vec3 &other, Vec3 *self)
static void Vec3InitConstructor(float x, float y, float z, Vec3 *self)
static void Vec3DefaultConstructor_Generic(asIScriptGeneric *gen)
static void Vec3CopyConstructor_Generic(asIScriptGeneric *gen)
static void Vec3InitConstructor_Generic(asIScriptGeneric *gen)
static void Vec3Equal_Generic(asIScriptGeneric *gen)
static void Vec3Length_Generic(asIScriptGeneric *gen)
static void Vec3AddAssign_Generic(asIScriptGeneric *gen)
static void Vec3SubAssign_Generic(asIScriptGeneric *gen)
static void Vec3MulAssign_Generic(asIScriptGeneric *gen)
static void Vec3DivAssign_Generic(asIScriptGeneric *gen)
static void Vec3Add_Generic(asIScriptGeneric *gen)
static void Vec3Sub_Generic(asIScriptGeneric *gen)
static void Vec3FloatMulVec3_Generic(asIScriptGeneric *gen)
static void Vec3Vec3MulFloat_Generic(asIScriptGeneric *gen)
static void Vec3Vec3DivFloat_Generic(asIScriptGeneric *gen)
static void Vec3_get_xyz_Generic(asIScriptGeneric *gen)
static void Vec3_get_yzx_Generic(asIScriptGeneric *gen)
static void Vec3_get_zxy_Generic(asIScriptGeneric *gen)
static void Vec3_get_zyx_Generic(asIScriptGeneric *gen)
static void Vec3_get_yxz_Generic(asIScriptGeneric *gen)
static void Vec3_get_xzy_Generic(asIScriptGeneric *gen)
static void Vec3_set_xyz_Generic(asIScriptGeneric *gen)
static void Vec3_set_yzx_Generic(asIScriptGeneric *gen)
static void Vec3_set_zxy_Generic(asIScriptGeneric *gen)
static void Vec3_set_zyx_Generic(asIScriptGeneric *gen)
static void Vec3_set_yxz_Generic(asIScriptGeneric *gen)
static void Vec3_set_xzy_Generic(asIScriptGeneric *gen)
void RegisterGlmBindings_Native(asIScriptEngine *engine)
void RegisterGlmBindings_Generic(asIScriptEngine *engine)
void RegisterGlmBindings(asIScriptEngine *engine)
file Vec3.h
#include <angelscript.h>#include <glm/glm.hpp>

Functions

void RegisterGlmBindings(asIScriptEngine *engine)

Register our glm bindings.

void RegisterGlmBindings_Native(asIScriptEngine *engine)
void RegisterGlmBindings_Generic(asIScriptEngine *engine)
file scriptarray.h
#include <angelscript.h>

Defines

AS_USE_STLNAMES
AS_USE_ACCESSORS

Functions

void RegisterScriptArray(asIScriptEngine *engine, bool defaultArray)
file scriptbuilder.h
#include <angelscript.h>#include <string>#include <map>#include <set>#include <vector>#include <string.h>

Defines

AS_PROCESS_METADATA

Typedefs

typedef int (*INCLUDECALLBACK_t)(const char *include, const char *from, CScriptBuilder *builder, void *userParam)
typedef int (*PRAGMACALLBACK_t)(const std::string &pragmaText, CScriptBuilder &builder, void *userParam)
file scriptchrono.hpp
#include <new>#include <chrono>#include <type_traits>#include <angelscript.h>

Functions

template<typename T> BEGIN_AS_NAMESPACE void DefaultConstructor (void *memory)
template<typename T>
void CopyConstructor(const T &other, void *memory)
template<typename T>
void DefaultDestructor(void *memory)
template<typename T, typename V>
void InitConstructor(V v, void *memory)
template<class T>
void registerDuration(asIScriptEngine *engine, const std::string &name, const std::string &rep, const std::string &period)
template<class A, class B>
B valueCast(A &a)
void RegisterChronoBindings(asIScriptEngine *engine)

Register our chrono bindings.

file scriptdictionary.h
#include <angelscript.h>#include <string>#include <map>

Defines

AS_USE_STLNAMES

Typedefs

typedef std::string dictKey_t

Functions

void RegisterScriptDictionary(asIScriptEngine *engine)
void RegisterScriptDictionary_Native(asIScriptEngine *engine)
void RegisterScriptDictionary_Generic(asIScriptEngine *engine)

Variables

END_AS_NAMESPACE typedef std::map< dictKey_t, AS_NAMESPACE_QUALIFIER CScriptDictValue > dictMap_t
file scriptglm.hpp
#include <new>#include <angelscript.h>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>#include <glm/common.hpp>

Defines

GLM_FORCE_RADIANS

Functions

void RegisterGlmBindings(asIScriptEngine *engine)

Register our glm bindings.

file scripthandle.h
#include <angelscript.h>

Functions

void RegisterScriptHandle(asIScriptEngine *engine)
file scripthelper.h
#include <sstream>#include <string>#include <angelscript.h>

Functions

BEGIN_AS_NAMESPACE int CompareRelation (asIScriptEngine *engine, void *lobj, void *robj, int typeId, int &result)
int CompareEquality(asIScriptEngine *engine, void *lobj, void *robj, int typeId, bool &result)
int ExecuteString(asIScriptEngine *engine, const char *code, asIScriptModule *mod = 0, asIScriptContext *ctx = 0)
int ExecuteString(asIScriptEngine *engine, const char *code, void *ret, int retTypeId, asIScriptModule *mod = 0, asIScriptContext *ctx = 0)
int WriteConfigToFile(asIScriptEngine *engine, const char *filename)
int WriteConfigToStream(asIScriptEngine *engine, std::ostream &strm)
int ConfigEngineFromStream(asIScriptEngine *engine, std::istream &strm, const char *nameOfStream = "config", asIStringFactory *stringFactory = 0)
std::string GetExceptionInfo(asIScriptContext *ctx, bool showStack = false)
void RegisterExceptionRoutines(asIScriptEngine *engine)
file ScriptingEngine.hpp
#include <vector>#include “scripting/IScriptingEngine.hpp”#include “scripting/angel_script/AngelscriptDebugger.hpp”#include “scripting/angel_script/scriptbuilder/scriptbuilder.h”#include “scripting/angel_script/scripthandle/scripthandle.h”#include “handles/HandleVector.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”

Variables

asIScriptContext *context
asIScriptModule *module
ModuleHandle moduleHandle
std::string className
asIScriptObject *object
file scriptstdstring.h
#include <angelscript.h>#include <string>

Defines

AS_USE_STLNAMES
AS_USE_ACCESSORS

Functions

BEGIN_AS_NAMESPACE void RegisterStdString (asIScriptEngine *engine)
void RegisterStdStringUtils(asIScriptEngine *engine)
file scriptvector.hpp
#include <new>#include <vector>#include <cassert>#include <angelscript.h>

Functions

template<typename V>
void RegisterVectorBindings(asIScriptEngine *engine, const std::string &name, const std::string &type, asEObjTypeFlags objectTypeFlags = asOBJ_APP_CLASS_ALLINTS)

Register our vector bindings.

file ExecutionContextHandle.hpp
#include “handles/Handle.hpp”
file IScriptingEngine.hpp
#include <string>#include <vector>#include <unordered_map>#include <functional>#include <angelscript.h>#include “scripting/angel_script/autowrapper/aswrappedcall.h”#include “scripting/ModuleHandle.hpp”#include “scripting/ExecutionContextHandle.hpp”#include “scripting/ScriptObjectHandle.hpp”#include “scripting/ScriptFunctionHandle.hpp”#include “scripting/ScriptObjectFunctionHandle.hpp”#include “scripting/ParameterList.hpp”#include “scripting/IScriptingEngineDebugger.hpp”#include “Types.hpp”
file IScriptingEngineDebugger.hpp
#include <string>#include “Types.hpp”
file ModuleHandle.hpp
#include “handles/Handle.hpp”
file Parameter.hpp
#include <cstring>#include <functional>#include “Types.hpp”#include “scripting/Parameter.inl”
file Parameter.inl

Defines

SCRIPT_PARAMETER_INLINE_H_
file ParameterList.hpp
#include <vector>#include “Types.hpp”#include “scripting/Parameter.hpp”
file ReturnObject.hpp
#include <functional>#include <type_traits>
file ScriptFunctionHandle.hpp
#include “handles/PointerHandle.hpp”
file ScriptHandle.hpp
#include “handles/Handle.hpp”
file ScriptingFactory.hpp
#include <memory>#include “IScriptingEngine.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file ScriptObjectFunctionHandle.hpp
#include “handles/PointerHandle.hpp”
file ScriptObjectHandle.hpp
#include “handles/PointerHandle.hpp”
file ScriptingEngineBindingDelegate.hpp
file IVec4.hpp
#include <boost/serialization/serialization.hpp>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file Mat4.hpp
#include <boost/serialization/serialization.hpp>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file Quat.hpp
#include <boost/serialization/serialization.hpp>#include “glm/gtc/quaternion.hpp”

Defines

GLM_FORCE_RADIANS
file Vec2.hpp
#include “serialize/Serialization.hpp”#include “serialize/std/Vector.hpp”#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file Vec3.hpp
#include <boost/serialization/serialization.hpp>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file Vec4.hpp
#include <boost/serialization/serialization.hpp>#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file ISerializable.hpp
#include <string>
file ITextSerializable.hpp
#include <string>#include <boost/serialization/export.hpp>#include <boost/serialization/base_object.hpp>#include “Serialization.hpp”#include “std/Vector.hpp”#include “serialize/glm/Vec2.hpp”#include “serialize/glm/Vec3.hpp”#include “serialize/glm/Vec4.hpp”#include “serialize/glm/Mat4.hpp”#include “serialize/glm/Quat.hpp”#include “TextOutArchive.hpp”#include “TextInArchive.hpp”
file SplitFree.hpp
#include <boost/serialization/split_free.hpp>
file SplitMember.hpp
#include <boost/serialization/split_member.hpp>
file Bitset.hpp
#include <boost/serialization/bitset.hpp>
file Duration.hpp
#include <chrono>#include “serialization/SplitFree.hpp”
file Map.hpp
#include <boost/serialization/map.hpp>
file UnorderedMap.hpp
#include <boost/serialization/unordered_map.hpp>
file Vector.hpp
#include <boost/serialization/vector.hpp>
file TextInArchive.hpp
#include <string>#include <istream>#include <boost/archive/text_iarchive.hpp>
file TextOutArchive.hpp
#include <string>#include <ostream>#include <boost/archive/text_oarchive.hpp>
file Skeleton.hpp
#include <vector>#include <map>#include <string>#include <glm/glm.hpp>#include “logger/ILogger.hpp”#include “fs/IFileSystem.hpp”#include “Types.hpp”

Defines

GLM_FORCE_RADIANS
file SplatMap.hpp
#include <vector>#include <memory>#include “PbrMaterial.hpp”#include “graphics/ISplatMap.hpp”
file Terrain.hpp
#include “ITerrain.hpp”#include “graphics/IGraphicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “physics/IPhysicsEngine.hpp”#include “audio/IAudioEngine.hpp”#include “ecs/Entity.hpp”#include “HeightMap.hpp”#include “SplatMap.hpp”#include “DisplacementMap.hpp”#include “utilities/Properties.hpp”#include “fs/IFileSystem.hpp”#include “logger/ILogger.hpp”
file TerrainFactory.hpp
#include “ITerrainFactory.hpp”
file ThreadPool.hpp
#include <memory>#include “IThreadPool.hpp”
file Types.hpp
#include <cstdint>
file BoostAnyUtilities.hpp
#include <boost/any.hpp>
file GlmUtilities.hpp
#include <glm/glm.hpp>

Defines

GLM_FORCE_RADIANS
file ImageUtilities.hpp
#include <vector>#include “fs/IFile.hpp”#include “Image.hpp”
file IoUtilities.hpp
#include <ios>#include <vector>
file Macros.hpp

Defines

GET(Type, MemberName, FaceName)
SET(Type, MemberName, FaceName)
SET_CONST_REF(Type, MemberName, FaceName)
GET_CONST_REF(Type, MemberName, FaceName)
SET_REF(Type, MemberName, FaceName)
GET_REF(Type, MemberName, FaceName)
GETSET(Type, MemberName, FaceName)
GETSET_CONST_REF(Type, MemberName, FaceName)
GETSET_REF(Type, MemberName, FaceName)
GETSET_INTERFACE(Type, FaceName)
FILE_AND_LINE_NUMBER
OPENGL_CHECK_ERRORS(openGlDevice)
file Properties.hpp
#include <sstream>#include <algorithm>#include <string>#include <unordered_map>#include “Types.hpp”#include <fs/IFile.hpp>
file StringUtilities.hpp
#include <string>#include <sstream>
file VertexToJointMap.hpp
file Animate.cpp
#include <glm/gtc/matrix_transform.hpp>#include <glm/gtx/string_cast.hpp>#include “detail/Assert.hpp”#include “exceptions/RuntimeException.hpp”#include “Animate.hpp”

Defines

GLM_FORCE_RADIANS
file Animation.cpp
#include <assimp/anim.h>#include “Animation.hpp”#include “detail/DebugSerializer.hpp”#include “detail/AssImpUtilities.hpp”#include “detail/Assert.hpp”
file Audio.cpp
#include <string>#include <iostream>#include <SDL2/SDL_audio.h>#include “Audio.hpp”
file AudioEngineBindingDelegate.cpp
#include “Platform.hpp”#include “Types.hpp”#include “audio/IAudioEngine.hpp”#include “AudioEngineBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”
file BindingDelegate.cpp
#include <string>#include <chrono>#include <glm/glm.hpp>#include “Platform.hpp”#include “Types.hpp”#include “ModelHandle.hpp”#include “Scene.hpp”#include “IWindowEventListener.hpp”#include “IKeyboardEventListener.hpp”#include “ITextInputEventListener.hpp”#include “IMouseMotionEventListener.hpp”#include “IMouseButtonEventListener.hpp”#include “IMouseWheelEventListener.hpp”#include “graphics/IGraphicsEngine.hpp”#include “graphics/gui/IGui.hpp”#include “graphics/model/Model.hpp”#include “physics/IPhysicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “BindingDelegate.hpp”#include “AudioEngineBindingDelegate.hpp”#include “ScriptingEngineBindingDelegate.hpp”#include “NetworkingEngineBindingDelegate.hpp”#include “GraphicsEngineBindingDelegate.hpp”#include “PhysicsEngineBindingDelegate.hpp”#include “PathfindingEngineBindingDelegate.hpp”#include “EntityBindingDelegate.hpp”#include “SceneBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “HeightMap.hpp”#include “SplatMap.hpp”#include “DisplacementMap.hpp”#include “Heightfield.hpp”#include “PathfindingTerrain.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”#include “resources/EngineResourceManager.MeshHandle.hpp”#include “noise/Noise.hpp”

Defines

GLM_FORCE_RADIANS
file Camera.cpp
#include <utility>#include “Camera.hpp”
file Constants.cpp
#include “Constants.hpp”
file CPreProcessor.cpp
#include <vector>#include <sstream>#include <boost/regex.hpp>#include <boost/algorithm/string.hpp>#include <boost/wave.hpp>#include <boost/wave/cpplexer/cpp_lex_token.hpp>#include <boost/wave/cpplexer/cpp_lex_iterator.hpp>#include “CPreProcessor.hpp”
file Entity.cpp
#include “ecs/Entity.hpp”#include “Scene.hpp”
file EntityBindingDelegate.cpp
#include <string>#include <glm/glm.hpp>#include “Platform.hpp”#include “Types.hpp”#include “Scene.hpp”#include “graphics/IGraphicsEngine.hpp”#include “graphics/model/Model.hpp”#include “EntityBindingDelegate.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”

Defines

GLM_FORCE_RADIANS
file EntityComponentSystemEventListener.cpp
#include “EntityComponentSystemEventListener.hpp”#include “Scene.hpp”
file Exception.cpp
#include <boost/stacktrace/frame.hpp>#include <boost/exception/exception.hpp>#include <boost/current_function.hpp>#include “exceptions/Exception.hpp”#include “exceptions/Stacktrace.hpp”

Defines

BOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED
file Stacktrace.cpp
#include <boost/stacktrace/frame.hpp>#include “exceptions/Stacktrace.hpp”

Defines

BOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED
file FpsCamera.cpp
#include “extras/FpsCamera.hpp”
file FastNoise.cpp
#include “FastNoise.h”#include <math.h>#include <assert.h>#include <algorithm>#include <random>

Defines

X_PRIME
Y_PRIME
Z_PRIME
W_PRIME

Functions

static int FastFloor(FN_DECIMAL f)
static int FastRound(FN_DECIMAL f)
static int FastAbs(int i)
static FN_DECIMAL FastAbs(FN_DECIMAL f)
static FN_DECIMAL Lerp(FN_DECIMAL a, FN_DECIMAL b, FN_DECIMAL t)
static FN_DECIMAL InterpHermiteFunc(FN_DECIMAL t)
static FN_DECIMAL InterpQuinticFunc(FN_DECIMAL t)
static FN_DECIMAL CubicLerp(FN_DECIMAL a, FN_DECIMAL b, FN_DECIMAL c, FN_DECIMAL d, FN_DECIMAL t)
static FN_DECIMAL ValCoord2D(int seed, int x, int y)
static FN_DECIMAL ValCoord3D(int seed, int x, int y, int z)
static FN_DECIMAL ValCoord4D(int seed, int x, int y, int z, int w)

Variables

const FN_DECIMAL GRAD_X[] = {1, -1, 1, -1, 1, -1, 1, -1, 0, 0, 0, 0}
const FN_DECIMAL GRAD_Y[] = {1, 1, -1, -1, 0, 0, 0, 0, 1, -1, 1, -1}
const FN_DECIMAL GRAD_Z[] = {0, 0, 0, 0, 1, 1, -1, -1, 1, 1, -1, -1}
const FN_DECIMAL GRAD_4D[] = {0, 1, 1, 1, 0, 1, 1, -1, 0, 1, -1, 1, 0, 1, -1, -1, 0, -1, 1, 1, 0, -1, 1, -1, 0, -1, -1, 1, 0, -1, -1, -1, 1, 0, 1, 1, 1, 0, 1, -1, 1, 0, -1, 1, 1, 0, -1, -1, -1, 0, 1, 1, -1, 0, 1, -1, -1, 0, -1, 1, -1, 0, -1, -1, 1, 1, 0, 1, 1, 1, 0, -1, 1, -1, 0, 1, 1, -1, 0, -1, -1, 1, 0, 1, -1, 1, 0, -1, -1, -1, 0, 1, -1, -1, 0, -1, 1, 1, 1, 0, 1, 1, -1, 0, 1, -1, 1, 0, 1, -1, -1, 0, -1, 1, 1, 0, -1, 1, -1, 0, -1, -1, 1, 0, -1, -1, -1, 0}
const FN_DECIMAL VAL_LUT[] = {FN_DECIMAL(0.3490196078), FN_DECIMAL(0.4352941176), FN_DECIMAL(-0.4509803922), FN_DECIMAL(0.6392156863), FN_DECIMAL(0.5843137255), FN_DECIMAL(-0.1215686275), FN_DECIMAL(0.7176470588), FN_DECIMAL(-0.1058823529), FN_DECIMAL(0.3960784314), FN_DECIMAL(0.0431372549), FN_DECIMAL(-0.03529411765), FN_DECIMAL(0.3176470588), FN_DECIMAL(0.7254901961), FN_DECIMAL(0.137254902), FN_DECIMAL(0.8588235294), FN_DECIMAL(-0.8196078431), FN_DECIMAL(-0.7960784314), FN_DECIMAL(-0.3333333333), FN_DECIMAL(-0.6705882353), FN_DECIMAL(-0.3882352941), FN_DECIMAL(0.262745098), FN_DECIMAL(0.3254901961), FN_DECIMAL(-0.6470588235), FN_DECIMAL(-0.9215686275), FN_DECIMAL(-0.5294117647), FN_DECIMAL(0.5294117647), FN_DECIMAL(-0.4666666667), FN_DECIMAL(0.8117647059), FN_DECIMAL(0.3803921569), FN_DECIMAL(0.662745098), FN_DECIMAL(0.03529411765), FN_DECIMAL(-0.6156862745), FN_DECIMAL(-0.01960784314), FN_DECIMAL(-0.3568627451), FN_DECIMAL(-0.09019607843), FN_DECIMAL(0.7490196078), FN_DECIMAL(0.8352941176), FN_DECIMAL(-0.4039215686), FN_DECIMAL(-0.7490196078), FN_DECIMAL(0.9529411765), FN_DECIMAL(-0.0431372549), FN_DECIMAL(-0.9294117647), FN_DECIMAL(-0.6549019608), FN_DECIMAL(0.9215686275), FN_DECIMAL(-0.06666666667), FN_DECIMAL(-0.4431372549), FN_DECIMAL(0.4117647059), FN_DECIMAL(-0.4196078431), FN_DECIMAL(-0.7176470588), FN_DECIMAL(-0.8117647059), FN_DECIMAL(-0.2549019608), FN_DECIMAL(0.4901960784), FN_DECIMAL(0.9137254902), FN_DECIMAL(0.7882352941), FN_DECIMAL(-1.0), FN_DECIMAL(-0.4745098039), FN_DECIMAL(0.7960784314), FN_DECIMAL(0.8509803922), FN_DECIMAL(-0.6784313725), FN_DECIMAL(0.4588235294), FN_DECIMAL(1.0), FN_DECIMAL(-0.1843137255), FN_DECIMAL(0.4509803922), FN_DECIMAL(0.1450980392), FN_DECIMAL(-0.231372549), FN_DECIMAL(-0.968627451), FN_DECIMAL(-0.8588235294), FN_DECIMAL(0.4274509804), FN_DECIMAL(0.003921568627), FN_DECIMAL(-0.003921568627), FN_DECIMAL(0.2156862745), FN_DECIMAL(0.5058823529), FN_DECIMAL(0.7647058824), FN_DECIMAL(0.2078431373), FN_DECIMAL(-0.5921568627), FN_DECIMAL(0.5764705882), FN_DECIMAL(-0.1921568627), FN_DECIMAL(-0.937254902), FN_DECIMAL(0.08235294118), FN_DECIMAL(-0.08235294118), FN_DECIMAL(0.9058823529), FN_DECIMAL(0.8274509804), FN_DECIMAL(0.02745098039), FN_DECIMAL(-0.168627451), FN_DECIMAL(-0.7803921569), FN_DECIMAL(0.1137254902), FN_DECIMAL(-0.9450980392), FN_DECIMAL(0.2), FN_DECIMAL(0.01960784314), FN_DECIMAL(0.5607843137), FN_DECIMAL(0.2705882353), FN_DECIMAL(0.4431372549), FN_DECIMAL(-0.9607843137), FN_DECIMAL(0.6156862745), FN_DECIMAL(0.9294117647), FN_DECIMAL(-0.07450980392), FN_DECIMAL(0.3098039216), FN_DECIMAL(0.9921568627), FN_DECIMAL(-0.9137254902), FN_DECIMAL(-0.2941176471), FN_DECIMAL(-0.3411764706), FN_DECIMAL(-0.6235294118), FN_DECIMAL(-0.7647058824), FN_DECIMAL(-0.8901960784), FN_DECIMAL(0.05882352941), FN_DECIMAL(0.2392156863), FN_DECIMAL(0.7333333333), FN_DECIMAL(0.6549019608), FN_DECIMAL(0.2470588235), FN_DECIMAL(0.231372549), FN_DECIMAL(-0.3960784314), FN_DECIMAL(-0.05098039216), FN_DECIMAL(-0.2235294118), FN_DECIMAL(-0.3725490196), FN_DECIMAL(0.6235294118), FN_DECIMAL(0.7019607843), FN_DECIMAL(-0.8274509804), FN_DECIMAL(0.4196078431), FN_DECIMAL(0.07450980392), FN_DECIMAL(0.8666666667), FN_DECIMAL(-0.537254902), FN_DECIMAL(-0.5058823529), FN_DECIMAL(-0.8039215686), FN_DECIMAL(0.09019607843), FN_DECIMAL(-0.4823529412), FN_DECIMAL(0.6705882353), FN_DECIMAL(-0.7882352941), FN_DECIMAL(0.09803921569), FN_DECIMAL(-0.6078431373), FN_DECIMAL(0.8039215686), FN_DECIMAL(-0.6), FN_DECIMAL(-0.3254901961), FN_DECIMAL(-0.4117647059), FN_DECIMAL(-0.01176470588), FN_DECIMAL(0.4823529412), FN_DECIMAL(0.168627451), FN_DECIMAL(0.8745098039), FN_DECIMAL(-0.3647058824), FN_DECIMAL(-0.1607843137), FN_DECIMAL(0.568627451), FN_DECIMAL(-0.9921568627), FN_DECIMAL(0.9450980392), FN_DECIMAL(0.5137254902), FN_DECIMAL(0.01176470588), FN_DECIMAL(-0.1450980392), FN_DECIMAL(-0.5529411765), FN_DECIMAL(-0.5764705882), FN_DECIMAL(-0.1137254902), FN_DECIMAL(0.5215686275), FN_DECIMAL(0.1607843137), FN_DECIMAL(0.3725490196), FN_DECIMAL(-0.2), FN_DECIMAL(-0.7254901961), FN_DECIMAL(0.631372549), FN_DECIMAL(0.7098039216), FN_DECIMAL(-0.568627451), FN_DECIMAL(0.1294117647), FN_DECIMAL(-0.3098039216), FN_DECIMAL(0.7411764706), FN_DECIMAL(-0.8509803922), FN_DECIMAL(0.2549019608), FN_DECIMAL(-0.6392156863), FN_DECIMAL(-0.5607843137), FN_DECIMAL(-0.3176470588), FN_DECIMAL(0.937254902), FN_DECIMAL(0.9843137255), FN_DECIMAL(0.5921568627), FN_DECIMAL(0.6941176471), FN_DECIMAL(0.2862745098), FN_DECIMAL(-0.5215686275), FN_DECIMAL(0.1764705882), FN_DECIMAL(0.537254902), FN_DECIMAL(-0.4901960784), FN_DECIMAL(-0.4588235294), FN_DECIMAL(-0.2078431373), FN_DECIMAL(-0.2156862745), FN_DECIMAL(0.7725490196), FN_DECIMAL(0.3647058824), FN_DECIMAL(-0.2392156863), FN_DECIMAL(0.2784313725), FN_DECIMAL(-0.8823529412), FN_DECIMAL(0.8980392157), FN_DECIMAL(0.1215686275), FN_DECIMAL(0.1058823529), FN_DECIMAL(-0.8745098039), FN_DECIMAL(-0.9843137255), FN_DECIMAL(-0.7019607843), FN_DECIMAL(0.9607843137), FN_DECIMAL(0.2941176471), FN_DECIMAL(0.3411764706), FN_DECIMAL(0.1529411765), FN_DECIMAL(0.06666666667), FN_DECIMAL(-0.9764705882), FN_DECIMAL(0.3019607843), FN_DECIMAL(0.6470588235), FN_DECIMAL(-0.5843137255), FN_DECIMAL(0.05098039216), FN_DECIMAL(-0.5137254902), FN_DECIMAL(-0.137254902), FN_DECIMAL(0.3882352941), FN_DECIMAL(-0.262745098), FN_DECIMAL(-0.3019607843), FN_DECIMAL(-0.1764705882), FN_DECIMAL(-0.7568627451), FN_DECIMAL(0.1843137255), FN_DECIMAL(-0.5450980392), FN_DECIMAL(-0.4980392157), FN_DECIMAL(-0.2784313725), FN_DECIMAL(-0.9529411765), FN_DECIMAL(-0.09803921569), FN_DECIMAL(0.8901960784), FN_DECIMAL(-0.2862745098), FN_DECIMAL(-0.3803921569), FN_DECIMAL(0.5529411765), FN_DECIMAL(0.7803921569), FN_DECIMAL(-0.8352941176), FN_DECIMAL(0.6862745098), FN_DECIMAL(0.7568627451), FN_DECIMAL(0.4980392157), FN_DECIMAL(-0.6862745098), FN_DECIMAL(-0.8980392157), FN_DECIMAL(-0.7725490196), FN_DECIMAL(-0.7098039216), FN_DECIMAL(-0.2470588235), FN_DECIMAL(-0.9058823529), FN_DECIMAL(0.9764705882), FN_DECIMAL(0.1921568627), FN_DECIMAL(0.8431372549), FN_DECIMAL(-0.05882352941), FN_DECIMAL(0.3568627451), FN_DECIMAL(0.6078431373), FN_DECIMAL(0.5450980392), FN_DECIMAL(0.4039215686), FN_DECIMAL(-0.7333333333), FN_DECIMAL(-0.4274509804), FN_DECIMAL(0.6), FN_DECIMAL(0.6784313725), FN_DECIMAL(-0.631372549), FN_DECIMAL(-0.02745098039), FN_DECIMAL(-0.1294117647), FN_DECIMAL(0.3333333333), FN_DECIMAL(-0.8431372549), FN_DECIMAL(0.2235294118), FN_DECIMAL(-0.3490196078), FN_DECIMAL(-0.6941176471), FN_DECIMAL(0.8823529412), FN_DECIMAL(0.4745098039), FN_DECIMAL(0.4666666667), FN_DECIMAL(-0.7411764706), FN_DECIMAL(-0.2705882353), FN_DECIMAL(0.968627451), FN_DECIMAL(0.8196078431), FN_DECIMAL(-0.662745098), FN_DECIMAL(-0.4352941176), FN_DECIMAL(-0.8666666667), FN_DECIMAL(-0.1529411765),}
const FN_DECIMAL CELL_2D_X[] = {FN_DECIMAL(-0.6440658039), FN_DECIMAL(-0.08028078721), FN_DECIMAL(0.9983546168), FN_DECIMAL(0.9869492062), FN_DECIMAL(0.9284746418), FN_DECIMAL(0.6051097552), FN_DECIMAL(-0.794167404), FN_DECIMAL(-0.3488667991), FN_DECIMAL(-0.943136526), FN_DECIMAL(-0.9968171318), FN_DECIMAL(0.8740961579), FN_DECIMAL(0.1421139764), FN_DECIMAL(0.4282553608), FN_DECIMAL(-0.9986665833), FN_DECIMAL(0.9996760121), FN_DECIMAL(-0.06248383632), FN_DECIMAL(0.7120139305), FN_DECIMAL(0.8917660409), FN_DECIMAL(0.1094842955), FN_DECIMAL(-0.8730880804), FN_DECIMAL(0.2594811489), FN_DECIMAL(-0.6690063346), FN_DECIMAL(-0.9996834972), FN_DECIMAL(-0.8803608671), FN_DECIMAL(-0.8166554937), FN_DECIMAL(0.8955599676), FN_DECIMAL(-0.9398321388), FN_DECIMAL(0.07615451399), FN_DECIMAL(-0.7147270565), FN_DECIMAL(0.8707354457), FN_DECIMAL(-0.9580008579), FN_DECIMAL(0.4905965632), FN_DECIMAL(0.786775944), FN_DECIMAL(0.1079711577), FN_DECIMAL(0.2686638979), FN_DECIMAL(0.6113487322), FN_DECIMAL(-0.530770584), FN_DECIMAL(-0.7837268286), FN_DECIMAL(-0.8558691039), FN_DECIMAL(-0.5726093896), FN_DECIMAL(-0.9830740914), FN_DECIMAL(0.7087766359), FN_DECIMAL(0.6807027153), FN_DECIMAL(-0.08864708788), FN_DECIMAL(0.6704485923), FN_DECIMAL(-0.1350735482), FN_DECIMAL(-0.9381333003), FN_DECIMAL(0.9756655376), FN_DECIMAL(0.4231433671), FN_DECIMAL(-0.4959787385), FN_DECIMAL(0.1005554325), FN_DECIMAL(-0.7645857281), FN_DECIMAL(-0.5859053796), FN_DECIMAL(-0.9751154306), FN_DECIMAL(-0.6972258572), FN_DECIMAL(0.7907012002), FN_DECIMAL(-0.9109899213), FN_DECIMAL(-0.9584307894), FN_DECIMAL(-0.8269529333), FN_DECIMAL(0.2608264719), FN_DECIMAL(-0.7773760119), FN_DECIMAL(0.7606456974), FN_DECIMAL(-0.8961083758), FN_DECIMAL(-0.9838134719), FN_DECIMAL(0.7338893576), FN_DECIMAL(0.2161226729), FN_DECIMAL(0.673509891), FN_DECIMAL(-0.5512056873), FN_DECIMAL(0.6899744332), FN_DECIMAL(0.868004831), FN_DECIMAL(0.5897430311), FN_DECIMAL(-0.8950444221), FN_DECIMAL(-0.3595752773), FN_DECIMAL(0.8209486981), FN_DECIMAL(-0.2912360132), FN_DECIMAL(-0.9965011374), FN_DECIMAL(0.9766994634), FN_DECIMAL(0.738790822), FN_DECIMAL(-0.4730947722), FN_DECIMAL(0.8946479441), FN_DECIMAL(-0.6943628971), FN_DECIMAL(-0.6620468182), FN_DECIMAL(-0.0887255502), FN_DECIMAL(-0.7512250855), FN_DECIMAL(-0.5322986898), FN_DECIMAL(0.5226295385), FN_DECIMAL(0.2296318375), FN_DECIMAL(0.7915307344), FN_DECIMAL(-0.2756485999), FN_DECIMAL(-0.6900234522), FN_DECIMAL(0.07090588086), FN_DECIMAL(0.5981278485), FN_DECIMAL(0.3033429312), FN_DECIMAL(-0.7253142797), FN_DECIMAL(-0.9855874307), FN_DECIMAL(-0.1761843396), FN_DECIMAL(-0.6438468325), FN_DECIMAL(-0.9956136595), FN_DECIMAL(0.8541580762), FN_DECIMAL(-0.9999807666), FN_DECIMAL(-0.02152416253), FN_DECIMAL(-0.8705983095), FN_DECIMAL(-0.1197138014), FN_DECIMAL(-0.992107781), FN_DECIMAL(-0.9091181546), FN_DECIMAL(0.788610536), FN_DECIMAL(-0.994636402), FN_DECIMAL(0.4211256853), FN_DECIMAL(0.3110430857), FN_DECIMAL(-0.4031127839), FN_DECIMAL(0.7610684239), FN_DECIMAL(0.7685674467), FN_DECIMAL(0.152271555), FN_DECIMAL(-0.9364648723), FN_DECIMAL(0.1681333739), FN_DECIMAL(-0.3567427907), FN_DECIMAL(-0.418445483), FN_DECIMAL(-0.98774778), FN_DECIMAL(0.8705250765), FN_DECIMAL(-0.8911701067), FN_DECIMAL(-0.7315350966), FN_DECIMAL(0.6030885658), FN_DECIMAL(-0.4149130821), FN_DECIMAL(0.7585339481), FN_DECIMAL(0.6963196535), FN_DECIMAL(0.8332685012), FN_DECIMAL(-0.8086815232), FN_DECIMAL(0.7518116724), FN_DECIMAL(-0.3490535894), FN_DECIMAL(0.6972110903), FN_DECIMAL(-0.8795676928), FN_DECIMAL(-0.6442331882), FN_DECIMAL(0.6610236811), FN_DECIMAL(-0.9853565782), FN_DECIMAL(-0.590338458), FN_DECIMAL(0.09843602117), FN_DECIMAL(0.5646534882), FN_DECIMAL(-0.6023259233), FN_DECIMAL(-0.3539248861), FN_DECIMAL(0.5132728656), FN_DECIMAL(0.9380385118), FN_DECIMAL(-0.7599270056), FN_DECIMAL(-0.7425936564), FN_DECIMAL(-0.6679610562), FN_DECIMAL(-0.3018497816), FN_DECIMAL(0.814478266), FN_DECIMAL(0.03777430269), FN_DECIMAL(-0.7514235086), FN_DECIMAL(0.9662556939), FN_DECIMAL(-0.4720194901), FN_DECIMAL(-0.435054126), FN_DECIMAL(0.7091901235), FN_DECIMAL(0.929379209), FN_DECIMAL(0.9997434357), FN_DECIMAL(0.8306320299), FN_DECIMAL(-0.9434019629), FN_DECIMAL(-0.133133759), FN_DECIMAL(0.5048413216), FN_DECIMAL(0.3711995273), FN_DECIMAL(0.98552091), FN_DECIMAL(0.7401857005), FN_DECIMAL(-0.9999981398), FN_DECIMAL(-0.2144033253), FN_DECIMAL(0.4808624681), FN_DECIMAL(-0.413835885), FN_DECIMAL(0.644229305), FN_DECIMAL(0.9626648696), FN_DECIMAL(0.1833665934), FN_DECIMAL(0.5794129), FN_DECIMAL(0.01404446873), FN_DECIMAL(0.4388494993), FN_DECIMAL(0.5213612322), FN_DECIMAL(-0.5281609948), FN_DECIMAL(-0.9745306846), FN_DECIMAL(-0.9904373013), FN_DECIMAL(0.9100232252), FN_DECIMAL(-0.9914057719), FN_DECIMAL(0.7892627765), FN_DECIMAL(0.3364421659), FN_DECIMAL(-0.9416099764), FN_DECIMAL(0.7802732656), FN_DECIMAL(0.886302871), FN_DECIMAL(0.6524471291), FN_DECIMAL(0.5762186726), FN_DECIMAL(-0.08987644664), FN_DECIMAL(-0.2177026782), FN_DECIMAL(-0.9720345052), FN_DECIMAL(-0.05722538858), FN_DECIMAL(0.8105983127), FN_DECIMAL(0.3410261032), FN_DECIMAL(0.6452309645), FN_DECIMAL(-0.7810612152), FN_DECIMAL(0.9989395718), FN_DECIMAL(-0.808247815), FN_DECIMAL(0.6370177929), FN_DECIMAL(0.5844658772), FN_DECIMAL(0.2054070861), FN_DECIMAL(0.055960522), FN_DECIMAL(-0.995827561), FN_DECIMAL(0.893409165), FN_DECIMAL(-0.931516824), FN_DECIMAL(0.328969469), FN_DECIMAL(-0.3193837488), FN_DECIMAL(0.7314755657), FN_DECIMAL(-0.7913517714), FN_DECIMAL(-0.2204109786), FN_DECIMAL(0.9955900414), FN_DECIMAL(-0.7112353139), FN_DECIMAL(-0.7935008741), FN_DECIMAL(-0.9961918204), FN_DECIMAL(-0.9714163995), FN_DECIMAL(-0.9566188669), FN_DECIMAL(0.2748495632), FN_DECIMAL(-0.4681743221), FN_DECIMAL(-0.9614449642), FN_DECIMAL(0.585194072), FN_DECIMAL(0.4532946061), FN_DECIMAL(-0.9916113176), FN_DECIMAL(0.942479587), FN_DECIMAL(-0.9813704753), FN_DECIMAL(-0.6538429571), FN_DECIMAL(0.2923335053), FN_DECIMAL(-0.2246660704), FN_DECIMAL(-0.1800781949), FN_DECIMAL(-0.9581216256), FN_DECIMAL(0.552215082), FN_DECIMAL(-0.9296791922), FN_DECIMAL(0.643183699), FN_DECIMAL(0.9997325981), FN_DECIMAL(-0.4606920354), FN_DECIMAL(-0.2148721265), FN_DECIMAL(0.3482070809), FN_DECIMAL(0.3075517813), FN_DECIMAL(0.6274756393), FN_DECIMAL(0.8910881765), FN_DECIMAL(-0.6397771309), FN_DECIMAL(-0.4479080125), FN_DECIMAL(-0.5247665011), FN_DECIMAL(-0.8386507094), FN_DECIMAL(0.3901291416), FN_DECIMAL(0.1458336921), FN_DECIMAL(0.01624613149), FN_DECIMAL(-0.8273199879), FN_DECIMAL(0.5611100679), FN_DECIMAL(-0.8380219841), FN_DECIMAL(-0.9856122234), FN_DECIMAL(-0.861398618), FN_DECIMAL(0.6398413916), FN_DECIMAL(0.2694510795), FN_DECIMAL(0.4327334514), FN_DECIMAL(-0.9960265354), FN_DECIMAL(-0.939570655), FN_DECIMAL(-0.8846996446), FN_DECIMAL(0.7642113189), FN_DECIMAL(-0.7002080528), FN_DECIMAL(0.664508256),}
const FN_DECIMAL CELL_2D_Y[] = {FN_DECIMAL(0.7649700911), FN_DECIMAL(0.9967722885), FN_DECIMAL(0.05734160033), FN_DECIMAL(-0.1610318741), FN_DECIMAL(0.371395799), FN_DECIMAL(-0.7961420628), FN_DECIMAL(0.6076990492), FN_DECIMAL(-0.9371723195), FN_DECIMAL(0.3324056156), FN_DECIMAL(0.07972205329), FN_DECIMAL(-0.4857529277), FN_DECIMAL(-0.9898503007), FN_DECIMAL(0.9036577593), FN_DECIMAL(0.05162417479), FN_DECIMAL(-0.02545330525), FN_DECIMAL(-0.998045976), FN_DECIMAL(-0.7021653386), FN_DECIMAL(-0.4524967717), FN_DECIMAL(-0.9939885256), FN_DECIMAL(-0.4875625128), FN_DECIMAL(-0.9657481729), FN_DECIMAL(-0.7432567015), FN_DECIMAL(0.02515761212), FN_DECIMAL(0.4743044842), FN_DECIMAL(0.5771254669), FN_DECIMAL(0.4449408324), FN_DECIMAL(0.3416365773), FN_DECIMAL(0.9970960285), FN_DECIMAL(0.6994034849), FN_DECIMAL(0.4917517499), FN_DECIMAL(0.286765333), FN_DECIMAL(0.8713868327), FN_DECIMAL(0.6172387009), FN_DECIMAL(0.9941540269), FN_DECIMAL(0.9632339851), FN_DECIMAL(-0.7913613129), FN_DECIMAL(0.847515538), FN_DECIMAL(0.6211056739), FN_DECIMAL(0.5171924952), FN_DECIMAL(-0.8198283277), FN_DECIMAL(-0.1832084353), FN_DECIMAL(0.7054329737), FN_DECIMAL(0.7325597678), FN_DECIMAL(0.9960630973), FN_DECIMAL(0.7419559859), FN_DECIMAL(0.9908355749), FN_DECIMAL(-0.346274329), FN_DECIMAL(0.2192641299), FN_DECIMAL(-0.9060627411), FN_DECIMAL(-0.8683346653), FN_DECIMAL(0.9949314574), FN_DECIMAL(-0.6445220433), FN_DECIMAL(-0.8103794704), FN_DECIMAL(-0.2216977607), FN_DECIMAL(0.7168515217), FN_DECIMAL(0.612202264), FN_DECIMAL(-0.412428616), FN_DECIMAL(0.285325116), FN_DECIMAL(0.56227115), FN_DECIMAL(-0.9653857009), FN_DECIMAL(-0.6290361962), FN_DECIMAL(0.6491672535), FN_DECIMAL(0.443835306), FN_DECIMAL(-0.1791955706), FN_DECIMAL(-0.6792690269), FN_DECIMAL(-0.9763662173), FN_DECIMAL(0.7391782104), FN_DECIMAL(0.8343693968), FN_DECIMAL(0.7238337389), FN_DECIMAL(0.4965557504), FN_DECIMAL(0.8075909592), FN_DECIMAL(-0.4459769977), FN_DECIMAL(-0.9331160806), FN_DECIMAL(-0.5710019572), FN_DECIMAL(0.9566512346), FN_DECIMAL(-0.08357920318), FN_DECIMAL(0.2146116448), FN_DECIMAL(-0.6739348049), FN_DECIMAL(0.8810115417), FN_DECIMAL(0.4467718167), FN_DECIMAL(-0.7196250184), FN_DECIMAL(-0.749462481), FN_DECIMAL(0.9960561112), FN_DECIMAL(0.6600461127), FN_DECIMAL(-0.8465566164), FN_DECIMAL(-0.8525598897), FN_DECIMAL(-0.9732775654), FN_DECIMAL(0.6111293616), FN_DECIMAL(-0.9612584717), FN_DECIMAL(-0.7237870097), FN_DECIMAL(-0.9974830104), FN_DECIMAL(-0.8014006968), FN_DECIMAL(0.9528814544), FN_DECIMAL(-0.6884178931), FN_DECIMAL(-0.1691668301), FN_DECIMAL(0.9843571905), FN_DECIMAL(0.7651544003), FN_DECIMAL(-0.09355982605), FN_DECIMAL(-0.5200134429), FN_DECIMAL(-0.006202125807), FN_DECIMAL(-0.9997683284), FN_DECIMAL(0.4919944954), FN_DECIMAL(-0.9928084436), FN_DECIMAL(-0.1253880012), FN_DECIMAL(-0.4165383308), FN_DECIMAL(-0.6148930171), FN_DECIMAL(-0.1034332049), FN_DECIMAL(-0.9070022917), FN_DECIMAL(-0.9503958117), FN_DECIMAL(0.9151503065), FN_DECIMAL(-0.6486716073), FN_DECIMAL(0.6397687707), FN_DECIMAL(-0.9883386937), FN_DECIMAL(0.3507613761), FN_DECIMAL(0.9857642561), FN_DECIMAL(-0.9342026446), FN_DECIMAL(-0.9082419159), FN_DECIMAL(0.1560587169), FN_DECIMAL(0.4921240607), FN_DECIMAL(-0.453669308), FN_DECIMAL(0.6818037859), FN_DECIMAL(0.7976742329), FN_DECIMAL(0.9098610522), FN_DECIMAL(0.651633524), FN_DECIMAL(0.7177318024), FN_DECIMAL(-0.5528685241), FN_DECIMAL(0.5882467118), FN_DECIMAL(0.6593778956), FN_DECIMAL(0.9371027648), FN_DECIMAL(-0.7168658839), FN_DECIMAL(-0.4757737632), FN_DECIMAL(0.7648291307), FN_DECIMAL(0.7503650398), FN_DECIMAL(0.1705063456), FN_DECIMAL(-0.8071558121), FN_DECIMAL(-0.9951433815), FN_DECIMAL(-0.8253280792), FN_DECIMAL(-0.7982502628), FN_DECIMAL(0.9352738503), FN_DECIMAL(0.8582254747), FN_DECIMAL(-0.3465310238), FN_DECIMAL(0.65000842), FN_DECIMAL(-0.6697422351), FN_DECIMAL(0.7441962291), FN_DECIMAL(-0.9533555), FN_DECIMAL(0.5801940659), FN_DECIMAL(-0.9992862963), FN_DECIMAL(-0.659820211), FN_DECIMAL(0.2575848092), FN_DECIMAL(0.881588113), FN_DECIMAL(-0.9004043022), FN_DECIMAL(-0.7050172826), FN_DECIMAL(0.369126382), FN_DECIMAL(-0.02265088836), FN_DECIMAL(0.5568217228), FN_DECIMAL(-0.3316515286), FN_DECIMAL(0.991098079), FN_DECIMAL(-0.863212164), FN_DECIMAL(-0.9285531277), FN_DECIMAL(0.1695539323), FN_DECIMAL(-0.672402505), FN_DECIMAL(-0.001928841934), FN_DECIMAL(0.9767452145), FN_DECIMAL(-0.8767960349), FN_DECIMAL(0.9103515037), FN_DECIMAL(-0.7648324016), FN_DECIMAL(0.2706960452), FN_DECIMAL(-0.9830446035), FN_DECIMAL(0.8150341657), FN_DECIMAL(-0.9999013716), FN_DECIMAL(-0.8985605806), FN_DECIMAL(0.8533360801), FN_DECIMAL(0.8491442537), FN_DECIMAL(-0.2242541966), FN_DECIMAL(-0.1379635899), FN_DECIMAL(-0.4145572694), FN_DECIMAL(0.1308227633), FN_DECIMAL(0.6140555916), FN_DECIMAL(0.9417041303), FN_DECIMAL(-0.336705587), FN_DECIMAL(-0.6254387508), FN_DECIMAL(0.4631060578), FN_DECIMAL(-0.7578342456), FN_DECIMAL(-0.8172955655), FN_DECIMAL(-0.9959529228), FN_DECIMAL(-0.9760151351), FN_DECIMAL(0.2348380732), FN_DECIMAL(-0.9983612848), FN_DECIMAL(0.5856025746), FN_DECIMAL(-0.9400538266), FN_DECIMAL(-0.7639875669), FN_DECIMAL(0.6244544645), FN_DECIMAL(0.04604054566), FN_DECIMAL(0.5888424828), FN_DECIMAL(0.7708490978), FN_DECIMAL(-0.8114182882), FN_DECIMAL(0.9786766212), FN_DECIMAL(-0.9984329822), FN_DECIMAL(0.09125496582), FN_DECIMAL(-0.4492438803), FN_DECIMAL(-0.3636982357), FN_DECIMAL(0.9443405575), FN_DECIMAL(-0.9476254645), FN_DECIMAL(-0.6818676535), FN_DECIMAL(-0.6113610831), FN_DECIMAL(0.9754070948), FN_DECIMAL(-0.0938108173), FN_DECIMAL(-0.7029540015), FN_DECIMAL(-0.6085691109), FN_DECIMAL(-0.08718862881), FN_DECIMAL(-0.237381926), FN_DECIMAL(0.2913423132), FN_DECIMAL(0.9614872426), FN_DECIMAL(0.8836361266), FN_DECIMAL(-0.2749974196), FN_DECIMAL(-0.8108932717), FN_DECIMAL(-0.8913607575), FN_DECIMAL(0.129255541), FN_DECIMAL(-0.3342637104), FN_DECIMAL(-0.1921249337), FN_DECIMAL(-0.7566302845), FN_DECIMAL(-0.9563164339), FN_DECIMAL(-0.9744358146), FN_DECIMAL(0.9836522982), FN_DECIMAL(-0.2863615732), FN_DECIMAL(0.8337016872), FN_DECIMAL(0.3683701937), FN_DECIMAL(0.7657119102), FN_DECIMAL(-0.02312427772), FN_DECIMAL(0.8875600535), FN_DECIMAL(0.976642191), FN_DECIMAL(0.9374176384), FN_DECIMAL(0.9515313457), FN_DECIMAL(-0.7786361937), FN_DECIMAL(-0.4538302125), FN_DECIMAL(-0.7685604874), FN_DECIMAL(-0.8940796454), FN_DECIMAL(-0.8512462154), FN_DECIMAL(0.5446696133), FN_DECIMAL(0.9207601495), FN_DECIMAL(-0.9893091197), FN_DECIMAL(-0.9998680229), FN_DECIMAL(0.5617309299), FN_DECIMAL(-0.8277411985), FN_DECIMAL(0.545636467), FN_DECIMAL(0.1690223212), FN_DECIMAL(-0.5079295433), FN_DECIMAL(0.7685069899), FN_DECIMAL(-0.9630140787), FN_DECIMAL(0.9015219132), FN_DECIMAL(0.08905695279), FN_DECIMAL(-0.3423550559), FN_DECIMAL(-0.4661614943), FN_DECIMAL(-0.6449659371), FN_DECIMAL(0.7139388509), FN_DECIMAL(0.7472809229),}
const FN_DECIMAL CELL_3D_X[] = {FN_DECIMAL(0.3752498686), FN_DECIMAL(0.687188096), FN_DECIMAL(0.2248135212), FN_DECIMAL(0.6692006647), FN_DECIMAL(-0.4376476931), FN_DECIMAL(0.6139972552), FN_DECIMAL(0.9494563929), FN_DECIMAL(0.8065108882), FN_DECIMAL(-0.2218812853), FN_DECIMAL(0.8484661167), FN_DECIMAL(0.5551817596), FN_DECIMAL(0.2133903499), FN_DECIMAL(0.5195126593), FN_DECIMAL(-0.6440141975), FN_DECIMAL(-0.5192897331), FN_DECIMAL(-0.3697654077), FN_DECIMAL(-0.07927779647), FN_DECIMAL(0.4187757321), FN_DECIMAL(-0.750078731), FN_DECIMAL(0.6579554632), FN_DECIMAL(-0.6859803838), FN_DECIMAL(-0.6878407087), FN_DECIMAL(0.9490848347), FN_DECIMAL(0.5795829433), FN_DECIMAL(-0.5325976529), FN_DECIMAL(-0.1363699466), FN_DECIMAL(0.417665879), FN_DECIMAL(-0.9108236468), FN_DECIMAL(0.4438605427), FN_DECIMAL(0.819294887), FN_DECIMAL(-0.4033873915), FN_DECIMAL(-0.2817317705), FN_DECIMAL(0.3969665622), FN_DECIMAL(0.5323450134), FN_DECIMAL(-0.6833017297), FN_DECIMAL(0.3881436661), FN_DECIMAL(-0.7119144767), FN_DECIMAL(-0.2306979838), FN_DECIMAL(-0.9398873022), FN_DECIMAL(0.1701906676), FN_DECIMAL(-0.4261839496), FN_DECIMAL(-0.003712295499), FN_DECIMAL(-0.734675004), FN_DECIMAL(-0.3195046015), FN_DECIMAL(0.7345307424), FN_DECIMAL(0.9766246496), FN_DECIMAL(-0.02003735175), FN_DECIMAL(-0.4824156342), FN_DECIMAL(0.4245892007), FN_DECIMAL(0.9072427669), FN_DECIMAL(0.593346808), FN_DECIMAL(-0.8911762541), FN_DECIMAL(-0.7657571834), FN_DECIMAL(-0.5268198896), FN_DECIMAL(-0.8801903279), FN_DECIMAL(-0.6296409617), FN_DECIMAL(-0.09492481344), FN_DECIMAL(-0.4920470525), FN_DECIMAL(0.7307666154), FN_DECIMAL(-0.2514540636), FN_DECIMAL(-0.3356210347), FN_DECIMAL(-0.3522787894), FN_DECIMAL(0.87847885), FN_DECIMAL(-0.7424096346), FN_DECIMAL(0.5757585274), FN_DECIMAL(0.4519299338), FN_DECIMAL(0.6420368628), FN_DECIMAL(-0.1128478447), FN_DECIMAL(0.499874883), FN_DECIMAL(0.5291681739), FN_DECIMAL(-0.5098837195), FN_DECIMAL(0.5639583502), FN_DECIMAL(-0.8456386526), FN_DECIMAL(-0.9657134875), FN_DECIMAL(-0.576437342), FN_DECIMAL(-0.5666013014), FN_DECIMAL(0.5667702405), FN_DECIMAL(-0.481316582), FN_DECIMAL(0.7313389916), FN_DECIMAL(-0.3805628566), FN_DECIMAL(-0.6512675909), FN_DECIMAL(-0.2787156951), FN_DECIMAL(0.8648059114), FN_DECIMAL(-0.9730216276), FN_DECIMAL(-0.8335820906), FN_DECIMAL(0.2673159641), FN_DECIMAL(0.231150148), FN_DECIMAL(0.01286214638), FN_DECIMAL(0.6774953261), FN_DECIMAL(0.6542885718), FN_DECIMAL(-0.02545450161), FN_DECIMAL(0.2101238586), FN_DECIMAL(-0.5572105885), FN_DECIMAL(0.813705672), FN_DECIMAL(-0.7546026951), FN_DECIMAL(-0.2502500006), FN_DECIMAL(-0.9979289381), FN_DECIMAL(0.7024037039), FN_DECIMAL(0.08990874624), FN_DECIMAL(0.8170812432), FN_DECIMAL(0.4226980265), FN_DECIMAL(-0.2442153475), FN_DECIMAL(-0.9183326731), FN_DECIMAL(0.6068222411), FN_DECIMAL(0.818676691), FN_DECIMAL(-0.7236735282), FN_DECIMAL(-0.5383903295), FN_DECIMAL(-0.6269337242), FN_DECIMAL(-0.0939331121), FN_DECIMAL(0.9203878539), FN_DECIMAL(-0.7256396824), FN_DECIMAL(0.6292431149), FN_DECIMAL(0.4234156978), FN_DECIMAL(0.006685688024), FN_DECIMAL(-0.2598694113), FN_DECIMAL(0.6408036421), FN_DECIMAL(0.05899871622), FN_DECIMAL(0.7090281418), FN_DECIMAL(-0.5905222072), FN_DECIMAL(0.3128214264), FN_DECIMAL(-0.691925826), FN_DECIMAL(0.3634019349), FN_DECIMAL(-0.6772511147), FN_DECIMAL(-0.3204583896), FN_DECIMAL(-0.3906740409), FN_DECIMAL(-0.3342190395), FN_DECIMAL(-0.517779592), FN_DECIMAL(-0.6817711267), FN_DECIMAL(0.6422383105), FN_DECIMAL(0.4388482478), FN_DECIMAL(0.2968562611), FN_DECIMAL(-0.2019778353), FN_DECIMAL(0.6014865048), FN_DECIMAL(0.9519280722), FN_DECIMAL(0.3398889569), FN_DECIMAL(0.8179709354), FN_DECIMAL(0.2365522154), FN_DECIMAL(0.3262175096), FN_DECIMAL(-0.8060715954), FN_DECIMAL(-0.2068642503), FN_DECIMAL(0.6208057279), FN_DECIMAL(-0.5274282502), FN_DECIMAL(-0.3722334928), FN_DECIMAL(-0.8923412971), FN_DECIMAL(0.5341834201), FN_DECIMAL(-0.3663701513), FN_DECIMAL(-0.6114600319), FN_DECIMAL(0.5026307556), FN_DECIMAL(0.8396151729), FN_DECIMAL(0.9245042467), FN_DECIMAL(-0.7994843957), FN_DECIMAL(-0.5357200589), FN_DECIMAL(-0.6283359739), FN_DECIMAL(-0.61351886), FN_DECIMAL(-0.875632008), FN_DECIMAL(-0.5278879423), FN_DECIMAL(0.9087491985), FN_DECIMAL(-0.03500215466), FN_DECIMAL(-0.261365798), FN_DECIMAL(-0.579523541), FN_DECIMAL(-0.3765052689), FN_DECIMAL(-0.74398252), FN_DECIMAL(0.4257318052), FN_DECIMAL(-0.1214508921), FN_DECIMAL(0.8561809753), FN_DECIMAL(0.6802835104), FN_DECIMAL(-0.5452131039), FN_DECIMAL(-0.1997156478), FN_DECIMAL(0.4562348357), FN_DECIMAL(-0.811704301), FN_DECIMAL(0.67793962), FN_DECIMAL(-0.9237819106), FN_DECIMAL(0.6973511259), FN_DECIMAL(-0.5189506), FN_DECIMAL(0.5517320032), FN_DECIMAL(-0.396710831), FN_DECIMAL(0.5493762815), FN_DECIMAL(-0.2507853002), FN_DECIMAL(0.4788634005), FN_DECIMAL(0.387333516), FN_DECIMAL(-0.2176515694), FN_DECIMAL(0.6749832419), FN_DECIMAL(0.2148283022), FN_DECIMAL(-0.7521815872), FN_DECIMAL(0.4697000159), FN_DECIMAL(0.7890593699), FN_DECIMAL(-0.7606162952), FN_DECIMAL(0.01083397843), FN_DECIMAL(0.5254091908), FN_DECIMAL(-0.6748025877), FN_DECIMAL(0.751091524), FN_DECIMAL(0.05259056135), FN_DECIMAL(0.01889481232), FN_DECIMAL(-0.6037423727), FN_DECIMAL(-0.6542965129), FN_DECIMAL(0.08873301081), FN_DECIMAL(-0.6191345671), FN_DECIMAL(0.4331858488), FN_DECIMAL(-0.3858351946), FN_DECIMAL(-0.1429059747), FN_DECIMAL(0.4118221036), FN_DECIMAL(-0.6247153214), FN_DECIMAL(-0.611423014), FN_DECIMAL(0.5542939606), FN_DECIMAL(-0.9432768808), FN_DECIMAL(-0.4567870451), FN_DECIMAL(-0.7349133547), FN_DECIMAL(0.399304489), FN_DECIMAL(-0.7474927672), FN_DECIMAL(0.02589419753), FN_DECIMAL(0.783915821), FN_DECIMAL(0.6138668752), FN_DECIMAL(0.4276376047), FN_DECIMAL(-0.4347886353), FN_DECIMAL(0.02947841302), FN_DECIMAL(-0.833742746), FN_DECIMAL(0.3817221742), FN_DECIMAL(-0.8743368359), FN_DECIMAL(-0.3823443796), FN_DECIMAL(-0.6829243811), FN_DECIMAL(-0.3681903049), FN_DECIMAL(-0.367626833), FN_DECIMAL(-0.434583373), FN_DECIMAL(0.235891995), FN_DECIMAL(-0.6874880269), FN_DECIMAL(-0.5115661773), FN_DECIMAL(-0.5534962601), FN_DECIMAL(0.5632777056), FN_DECIMAL(0.686191532), FN_DECIMAL(-0.05095871588), FN_DECIMAL(-0.06865785057), FN_DECIMAL(-0.5975288531), FN_DECIMAL(-0.6429790056), FN_DECIMAL(-0.3729361548), FN_DECIMAL(0.2237917666), FN_DECIMAL(0.6046773225), FN_DECIMAL(-0.5041542295), FN_DECIMAL(-0.03972191174), FN_DECIMAL(0.7028828406), FN_DECIMAL(-0.5560856498), FN_DECIMAL(0.5898328456), FN_DECIMAL(-0.9308076766), FN_DECIMAL(0.4617069864), FN_DECIMAL(0.3190983137), FN_DECIMAL(0.9116567753), FN_DECIMAL(-0.45029554), FN_DECIMAL(0.3346334459), FN_DECIMAL(0.8525005645), FN_DECIMAL(0.2528483381), FN_DECIMAL(-0.8306630147), FN_DECIMAL(-0.6880390622), FN_DECIMAL(0.7448684026), FN_DECIMAL(-0.1963355843), FN_DECIMAL(-0.5900257974), FN_DECIMAL(0.9097057294), FN_DECIMAL(-0.2509196808),}
const FN_DECIMAL CELL_3D_Y[] = {FN_DECIMAL(-0.6760585049), FN_DECIMAL(-0.09136176499), FN_DECIMAL(0.1681325679), FN_DECIMAL(-0.6688468686), FN_DECIMAL(-0.4822753902), FN_DECIMAL(-0.7891068824), FN_DECIMAL(-0.1877509944), FN_DECIMAL(0.548470914), FN_DECIMAL(-0.463339443), FN_DECIMAL(-0.4050542082), FN_DECIMAL(0.3218158513), FN_DECIMAL(0.2546493823), FN_DECIMAL(-0.3753271935), FN_DECIMAL(0.4745384887), FN_DECIMAL(0.481254652), FN_DECIMAL(-0.8934416489), FN_DECIMAL(-0.6737085076), FN_DECIMAL(0.7469917228), FN_DECIMAL(0.3826230411), FN_DECIMAL(0.6751013678), FN_DECIMAL(-0.7248119515), FN_DECIMAL(-0.3224276742), FN_DECIMAL(-0.02076190936), FN_DECIMAL(-0.6404268166), FN_DECIMAL(-0.5292028444), FN_DECIMAL(0.7151414636), FN_DECIMAL(-0.6144655059), FN_DECIMAL(-0.369912124), FN_DECIMAL(0.6942067212), FN_DECIMAL(-0.4481558248), FN_DECIMAL(-0.6366894559), FN_DECIMAL(0.5956568471), FN_DECIMAL(0.564274539), FN_DECIMAL(0.7145584688), FN_DECIMAL(0.6871918316), FN_DECIMAL(0.5657918509), FN_DECIMAL(-0.6275978114), FN_DECIMAL(0.4146983062), FN_DECIMAL(0.2638993789), FN_DECIMAL(-0.792633138), FN_DECIMAL(0.5706133514), FN_DECIMAL(0.8606546462), FN_DECIMAL(0.6490900316), FN_DECIMAL(-0.8242699196), FN_DECIMAL(0.6765819124), FN_DECIMAL(0.1959534069), FN_DECIMAL(-0.8426769757), FN_DECIMAL(-0.5917672797), FN_DECIMAL(0.7517364266), FN_DECIMAL(0.03252559226), FN_DECIMAL(0.0883617105), FN_DECIMAL(0.4475064813), FN_DECIMAL(-0.1418643552), FN_DECIMAL(0.7343428473), FN_DECIMAL(0.3870192548), FN_DECIMAL(-0.7716703522), FN_DECIMAL(0.4839898327), FN_DECIMAL(0.7437439055), FN_DECIMAL(-0.5989573348), FN_DECIMAL(-0.8357068955), FN_DECIMAL(0.6086049038), FN_DECIMAL(0.9194627258), FN_DECIMAL(0.4718297238), FN_DECIMAL(-0.2650335884), FN_DECIMAL(-0.6470352599), FN_DECIMAL(-0.5555181303), FN_DECIMAL(0.1222351235), FN_DECIMAL(0.7802044684), FN_DECIMAL(-0.8636947022), FN_DECIMAL(-0.2341352163), FN_DECIMAL(0.683030874), FN_DECIMAL(-0.5005858287), FN_DECIMAL(0.2334616211), FN_DECIMAL(0.2576877608), FN_DECIMAL(0.6666816727), FN_DECIMAL(-0.7663996863), FN_DECIMAL(0.794201982), FN_DECIMAL(0.6189308788), FN_DECIMAL(0.6071033261), FN_DECIMAL(-0.4206058253), FN_DECIMAL(-0.3957336915), FN_DECIMAL(-0.8170257484), FN_DECIMAL(-0.1043240417), FN_DECIMAL(0.0002167596213), FN_DECIMAL(0.1816339018), FN_DECIMAL(-0.6838094939), FN_DECIMAL(-0.2495341969), FN_DECIMAL(-0.7116756954), FN_DECIMAL(-0.03361673621), FN_DECIMAL(-0.3350836431), FN_DECIMAL(0.2137186039), FN_DECIMAL(0.2557996786), FN_DECIMAL(0.7490117093), FN_DECIMAL(0.4942936549), FN_DECIMAL(-0.352686853), FN_DECIMAL(-0.3952445435), FN_DECIMAL(-0.0459964767), FN_DECIMAL(-0.7115787471), FN_DECIMAL(0.08022899756), FN_DECIMAL(0.5362268157), FN_DECIMAL(-0.8258613686), FN_DECIMAL(0.1114171723), FN_DECIMAL(0.3882823051), FN_DECIMAL(-0.7915404457), FN_DECIMAL(0.3250957662), FN_DECIMAL(0.6401346464), FN_DECIMAL(-0.2662724517), FN_DECIMAL(-0.6727907114), FN_DECIMAL(-0.994730818), FN_DECIMAL(-0.3596358977), FN_DECIMAL(0.2344610069), FN_DECIMAL(-0.6645215546), FN_DECIMAL(-0.7107590611), FN_DECIMAL(-0.4646617327), FN_DECIMAL(0.6717191355), FN_DECIMAL(0.5101893498), FN_DECIMAL(0.1185768238), FN_DECIMAL(0.236005093), FN_DECIMAL(-0.7811024061), FN_DECIMAL(0.5089325193), FN_DECIMAL(0.6073187658), FN_DECIMAL(-0.7930732557), FN_DECIMAL(-0.6822767155), FN_DECIMAL(0.3201532885), FN_DECIMAL(0.7545302807), FN_DECIMAL(0.1072664448), FN_DECIMAL(0.6784033173), FN_DECIMAL(-0.6595924967), FN_DECIMAL(0.7276509498), FN_DECIMAL(0.5586689436), FN_DECIMAL(-0.6498636788), FN_DECIMAL(0.6789333174), FN_DECIMAL(0.7105966551), FN_DECIMAL(-0.2872214155), FN_DECIMAL(0.496746217), FN_DECIMAL(-0.3880337977), FN_DECIMAL(0.7324070604), FN_DECIMAL(-0.9326634749), FN_DECIMAL(-0.5867839255), FN_DECIMAL(0.8003043651), FN_DECIMAL(-0.1631882481), FN_DECIMAL(-0.6796374681), FN_DECIMAL(-0.8066678503), FN_DECIMAL(0.4238177418), FN_DECIMAL(0.7715863549), FN_DECIMAL(0.5455367347), FN_DECIMAL(-0.03205115397), FN_DECIMAL(-0.6005545066), FN_DECIMAL(-0.5423640002), FN_DECIMAL(0.3569205906), FN_DECIMAL(-0.582071752), FN_DECIMAL(0.6407354361), FN_DECIMAL(0.7777142984), FN_DECIMAL(-0.09956428618), FN_DECIMAL(0.1100002681), FN_DECIMAL(0.8136349123), FN_DECIMAL(0.2923431904), FN_DECIMAL(0.9735794425), FN_DECIMAL(0.8324974864), FN_DECIMAL(-0.6179617717), FN_DECIMAL(-0.9248386523), FN_DECIMAL(-0.6448780771), FN_DECIMAL(-0.5274402761), FN_DECIMAL(-0.7862170565), FN_DECIMAL(0.2682099744), FN_DECIMAL(-0.5848777694), FN_DECIMAL(-0.6364561467), FN_DECIMAL(-0.7167402514), FN_DECIMAL(-0.8677012494), FN_DECIMAL(0.4205286707), FN_DECIMAL(-0.7007832749), FN_DECIMAL(0.243272451), FN_DECIMAL(-0.1899846085), FN_DECIMAL(-0.6146124977), FN_DECIMAL(-0.8093357692), FN_DECIMAL(-0.03545096987), FN_DECIMAL(-0.7191590868), FN_DECIMAL(0.7478645848), FN_DECIMAL(0.3623517328), FN_DECIMAL(0.8436992512), FN_DECIMAL(-0.2445711729), FN_DECIMAL(0.6897356637), FN_DECIMAL(-0.1708070787), FN_DECIMAL(0.4639272368), FN_DECIMAL(-0.7917186656), FN_DECIMAL(0.02980025428), FN_DECIMAL(0.6334156172), FN_DECIMAL(-0.9815544807), FN_DECIMAL(-0.2307217304), FN_DECIMAL(0.1080823318), FN_DECIMAL(0.5167601798), FN_DECIMAL(-0.845120016), FN_DECIMAL(0.441572562), FN_DECIMAL(0.5876789172), FN_DECIMAL(-0.6365908737), FN_DECIMAL(0.68350166), FN_DECIMAL(0.5849723959), FN_DECIMAL(0.1164114357), FN_DECIMAL(-0.7379813884), FN_DECIMAL(-0.9613237178), FN_DECIMAL(-0.9071943084), FN_DECIMAL(-0.7682111105), FN_DECIMAL(0.639074459), FN_DECIMAL(-0.619358298), FN_DECIMAL(0.2807257131), FN_DECIMAL(-0.01800868791), FN_DECIMAL(0.3776607289), FN_DECIMAL(0.7207567823), FN_DECIMAL(0.5536661486), FN_DECIMAL(-0.9974053117), FN_DECIMAL(-0.02047200006), FN_DECIMAL(-0.6739453804), FN_DECIMAL(-0.5607471297), FN_DECIMAL(0.8815553192), FN_DECIMAL(0.8275977415), FN_DECIMAL(0.3928902456), FN_DECIMAL(0.550991396), FN_DECIMAL(0.4247623676), FN_DECIMAL(-0.3436948871), FN_DECIMAL(-0.3653537677), FN_DECIMAL(0.3181702902), FN_DECIMAL(-0.6067173171), FN_DECIMAL(-0.8984128477), FN_DECIMAL(0.4220839766), FN_DECIMAL(0.7238407199), FN_DECIMAL(-0.7766913695), FN_DECIMAL(0.6460037842), FN_DECIMAL(0.2544775664), FN_DECIMAL(0.6488840578), FN_DECIMAL(0.805016833), FN_DECIMAL(-0.9183807036), FN_DECIMAL(0.4144046357), FN_DECIMAL(0.270587208), FN_DECIMAL(-0.8813684494), FN_DECIMAL(0.6985971877), FN_DECIMAL(-0.7795603017), FN_DECIMAL(-0.8624480731), FN_DECIMAL(0.5532697017), FN_DECIMAL(0.711179521), FN_DECIMAL(-0.7798160574), FN_DECIMAL(0.5225859041), FN_DECIMAL(0.1261859368), FN_DECIMAL(0.3398033582), FN_DECIMAL(-0.7472173667), FN_DECIMAL(-0.4032647119), FN_DECIMAL(-0.4246578154), FN_DECIMAL(0.8481212377), FN_DECIMAL(-0.2144838537), FN_DECIMAL(0.3431714491), FN_DECIMAL(0.5310188231), FN_DECIMAL(0.6682978632), FN_DECIMAL(0.3110433206), FN_DECIMAL(0.9263293599), FN_DECIMAL(-0.6155600569), FN_DECIMAL(0.07169784399), FN_DECIMAL(0.8985888773),}
const FN_DECIMAL CELL_3D_Z[] = {FN_DECIMAL(-0.6341391283), FN_DECIMAL(-0.7207118346), FN_DECIMAL(0.9597866014), FN_DECIMAL(0.3237504235), FN_DECIMAL(-0.7588642466), FN_DECIMAL(-0.01782410481), FN_DECIMAL(0.2515593809), FN_DECIMAL(0.2207257205), FN_DECIMAL(-0.8579541106), FN_DECIMAL(0.3406410681), FN_DECIMAL(0.7669470462), FN_DECIMAL(-0.9431957648), FN_DECIMAL(0.7676171537), FN_DECIMAL(-0.6000491115), FN_DECIMAL(-0.7062096948), FN_DECIMAL(0.2550207115), FN_DECIMAL(0.7347325213), FN_DECIMAL(0.5163625202), FN_DECIMAL(-0.5394270162), FN_DECIMAL(0.3336656285), FN_DECIMAL(-0.0638635111), FN_DECIMAL(-0.6503195787), FN_DECIMAL(0.3143356798), FN_DECIMAL(-0.5039217245), FN_DECIMAL(0.6605180464), FN_DECIMAL(-0.6855479011), FN_DECIMAL(-0.6693185756), FN_DECIMAL(0.1832083647), FN_DECIMAL(-0.5666258437), FN_DECIMAL(0.3576482138), FN_DECIMAL(-0.6571949095), FN_DECIMAL(-0.7522101635), FN_DECIMAL(-0.7238865886), FN_DECIMAL(0.4538887323), FN_DECIMAL(0.2467106257), FN_DECIMAL(0.7274778869), FN_DECIMAL(0.3151170655), FN_DECIMAL(-0.8802293764), FN_DECIMAL(-0.2167232729), FN_DECIMAL(0.5854637865), FN_DECIMAL(0.7019741052), FN_DECIMAL(0.5091756071), FN_DECIMAL(0.1973189533), FN_DECIMAL(0.46743546), FN_DECIMAL(0.05197599597), FN_DECIMAL(0.088354718), FN_DECIMAL(0.5380464843), FN_DECIMAL(-0.6458224544), FN_DECIMAL(-0.5045952393), FN_DECIMAL(0.419347884), FN_DECIMAL(0.8000823542), FN_DECIMAL(-0.07445020656), FN_DECIMAL(-0.6272881641), FN_DECIMAL(-0.428020311), FN_DECIMAL(-0.2747382083), FN_DECIMAL(-0.08987283726), FN_DECIMAL(0.8699098354), FN_DECIMAL(0.4524761885), FN_DECIMAL(-0.3274603257), FN_DECIMAL(0.4882262167), FN_DECIMAL(-0.7189983256), FN_DECIMAL(0.1746079907), FN_DECIMAL(0.0751772698), FN_DECIMAL(-0.6152927202), FN_DECIMAL(0.4998474673), FN_DECIMAL(-0.6979677227), FN_DECIMAL(0.7568667263), FN_DECIMAL(-0.6152612058), FN_DECIMAL(0.06447140991), FN_DECIMAL(-0.8155744872), FN_DECIMAL(-0.5229602449), FN_DECIMAL(0.6567836838), FN_DECIMAL(-0.4799905631), FN_DECIMAL(0.03153534591), FN_DECIMAL(0.4724992466), FN_DECIMAL(-0.3026458097), FN_DECIMAL(-0.2191225827), FN_DECIMAL(-0.620692287), FN_DECIMAL(0.3107552588), FN_DECIMAL(0.8235670294), FN_DECIMAL(0.6474915988), FN_DECIMAL(-0.5047637941), FN_DECIMAL(0.4911488878), FN_DECIMAL(-0.2307138167), FN_DECIMAL(-0.5216800015), FN_DECIMAL(0.6789305939), FN_DECIMAL(0.9403734863), FN_DECIMAL(0.702390397), FN_DECIMAL(0.7347584625), FN_DECIMAL(0.6779567958), FN_DECIMAL(0.9765635805), FN_DECIMAL(-0.9436177661), FN_DECIMAL(-0.358465925), FN_DECIMAL(-0.3058706624), FN_DECIMAL(0.5533414464), FN_DECIMAL(-0.8838306897), FN_DECIMAL(0.04496841812), FN_DECIMAL(0.01687374963), FN_DECIMAL(-0.9927133148), FN_DECIMAL(-0.211752318), FN_DECIMAL(0.3732015249), FN_DECIMAL(0.9632990593), FN_DECIMAL(-0.07682417004), FN_DECIMAL(-0.07232213047), FN_DECIMAL(0.4733721775), FN_DECIMAL(0.2579229713), FN_DECIMAL(0.7995216286), FN_DECIMAL(0.3928189967), FN_DECIMAL(0.04107517667), FN_DECIMAL(0.1534542912), FN_DECIMAL(0.6468965045), FN_DECIMAL(0.4030684878), FN_DECIMAL(-0.5617300988), FN_DECIMAL(-0.885463029), FN_DECIMAL(0.693729985), FN_DECIMAL(-0.5736527866), FN_DECIMAL(-0.9911905409), FN_DECIMAL(-0.66451538), FN_DECIMAL(0.2028855685), FN_DECIMAL(0.8019541421), FN_DECIMAL(-0.3903877149), FN_DECIMAL(-0.4888495114), FN_DECIMAL(-0.2753714057), FN_DECIMAL(-0.8915202143), FN_DECIMAL(0.5273119089), FN_DECIMAL(0.9363714773), FN_DECIMAL(-0.5212228249), FN_DECIMAL(-0.31642672), FN_DECIMAL(0.2409440761), FN_DECIMAL(-0.703776404), FN_DECIMAL(-0.6996810411), FN_DECIMAL(-0.7058714505), FN_DECIMAL(-0.3650566783), FN_DECIMAL(0.1064744278), FN_DECIMAL(0.7985729102), FN_DECIMAL(0.424680257), FN_DECIMAL(-0.6384535592), FN_DECIMAL(0.1540161646), FN_DECIMAL(-0.07702731943), FN_DECIMAL(-0.5627789132), FN_DECIMAL(-0.7667919169), FN_DECIMAL(-0.509815999), FN_DECIMAL(0.4590525092), FN_DECIMAL(0.1552595611), FN_DECIMAL(0.345402042), FN_DECIMAL(0.7537656024), FN_DECIMAL(0.7906259247), FN_DECIMAL(-0.6218493452), FN_DECIMAL(0.02979350071), FN_DECIMAL(-0.1337893489), FN_DECIMAL(-0.1483818606), FN_DECIMAL(0.549965562), FN_DECIMAL(0.01882482408), FN_DECIMAL(-0.7833783002), FN_DECIMAL(0.4702855809), FN_DECIMAL(0.2435827372), FN_DECIMAL(0.2978428332), FN_DECIMAL(0.2256499906), FN_DECIMAL(0.4885036897), FN_DECIMAL(0.5312962584), FN_DECIMAL(0.05401156992), FN_DECIMAL(0.1749922158), FN_DECIMAL(-0.7352273018), FN_DECIMAL(0.6058980284), FN_DECIMAL(0.4416079111), FN_DECIMAL(0.4417378638), FN_DECIMAL(0.5455879807), FN_DECIMAL(-0.6681295324), FN_DECIMAL(0.1973431441), FN_DECIMAL(0.4053292055), FN_DECIMAL(0.2220375492), FN_DECIMAL(0.2957118467), FN_DECIMAL(0.6910913512), FN_DECIMAL(0.5940890106), FN_DECIMAL(-0.2014135283), FN_DECIMAL(-0.9172588213), FN_DECIMAL(-0.4254361401), FN_DECIMAL(-0.6146586825), FN_DECIMAL(-0.7996193253), FN_DECIMAL(-0.3716777111), FN_DECIMAL(-0.9448876842), FN_DECIMAL(-0.2620349924), FN_DECIMAL(0.9615995749), FN_DECIMAL(-0.4679683524), FN_DECIMAL(0.3905937144), FN_DECIMAL(0.613593722), FN_DECIMAL(0.1422937358), FN_DECIMAL(0.1908754211), FN_DECIMAL(0.8189704912), FN_DECIMAL(-0.7300408736), FN_DECIMAL(-0.4108776451), FN_DECIMAL(-0.5319834504), FN_DECIMAL(-0.8970265651), FN_DECIMAL(-0.5386359045), FN_DECIMAL(0.4082255906), FN_DECIMAL(0.7245356676), FN_DECIMAL(0.5239080873), FN_DECIMAL(-0.8937552226), FN_DECIMAL(-0.553637673), FN_DECIMAL(0.2354455182), FN_DECIMAL(-0.0860293075), FN_DECIMAL(-0.1399373318), FN_DECIMAL(-0.4666323327), FN_DECIMAL(0.5560157407), FN_DECIMAL(0.1772619533), FN_DECIMAL(-0.8893937725), FN_DECIMAL(-0.5632714576), FN_DECIMAL(-0.5666264959), FN_DECIMAL(-0.3670263736), FN_DECIMAL(-0.06717242579), FN_DECIMAL(0.6205295181), FN_DECIMAL(-0.4110536264), FN_DECIMAL(0.7090054553), FN_DECIMAL(0.183899597), FN_DECIMAL(-0.5605470555), FN_DECIMAL(0.3879565548), FN_DECIMAL(0.7420893903), FN_DECIMAL(-0.2347595118), FN_DECIMAL(-0.8577217497), FN_DECIMAL(0.6325590203), FN_DECIMAL(-0.8736152276), FN_DECIMAL(0.7048011129), FN_DECIMAL(-0.06317948268), FN_DECIMAL(0.8753285574), FN_DECIMAL(-0.05843650473), FN_DECIMAL(-0.3674922622), FN_DECIMAL(-0.5256624401), FN_DECIMAL(0.7861039337), FN_DECIMAL(0.3287714416), FN_DECIMAL(0.5910593099), FN_DECIMAL(-0.3896960134), FN_DECIMAL(0.6864605361), FN_DECIMAL(0.7164918431), FN_DECIMAL(-0.290014277), FN_DECIMAL(-0.6796169617), FN_DECIMAL(0.1632515592), FN_DECIMAL(0.04485347486), FN_DECIMAL(0.8320545697), FN_DECIMAL(0.01339408056), FN_DECIMAL(-0.2874989857), FN_DECIMAL(0.615630723), FN_DECIMAL(0.3430367014), FN_DECIMAL(0.8193658136), FN_DECIMAL(-0.5829600957), FN_DECIMAL(0.07911697781), FN_DECIMAL(0.7854296063), FN_DECIMAL(-0.4107442306), FN_DECIMAL(0.4766964066), FN_DECIMAL(-0.9045999527), FN_DECIMAL(-0.1673856787), FN_DECIMAL(0.2828077348), FN_DECIMAL(-0.5902737632), FN_DECIMAL(-0.321506229), FN_DECIMAL(-0.5224513133), FN_DECIMAL(-0.4090169985), FN_DECIMAL(-0.3599685311),}
static const FN_DECIMAL F3 = 1 / FN_DECIMAL(3)
static const FN_DECIMAL G3 = 1 / FN_DECIMAL(6)
static const FN_DECIMAL SQRT3 = FN_DECIMAL(1.7320508075688772935274463415059)
static const FN_DECIMAL F2 = FN_DECIMAL(0.5) * (SQRT3 - FN_DECIMAL(1.0))
static const FN_DECIMAL G2 = (FN_DECIMAL(3.0) - SQRT3) / FN_DECIMAL(6.0)
static const unsigned char SIMPLEX_4D[] = {0, 1, 2, 3, 0, 1, 3, 2, 0, 0, 0, 0, 0, 2, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 0, 2, 1, 3, 0, 0, 0, 0, 0, 3, 1, 2, 0, 3, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 3, 0, 0, 0, 0, 1, 3, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 0, 1, 2, 3, 1, 0, 1, 0, 2, 3, 1, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 3, 1, 0, 0, 0, 0, 2, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 2, 3, 0, 2, 1, 0, 0, 0, 0, 3, 1, 2, 0, 2, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 0, 2, 0, 0, 0, 0, 3, 2, 0, 1, 3, 2, 1, 0}
static const FN_DECIMAL F4 = (sqrt(FN_DECIMAL(5)) - 1) / 4
static const FN_DECIMAL G4 = (5 - sqrt(FN_DECIMAL(5))) / 20
const FN_DECIMAL CUBIC_3D_BOUNDING = 1 / (FN_DECIMAL(1.5) * FN_DECIMAL(1.5) * FN_DECIMAL(1.5))
const FN_DECIMAL CUBIC_2D_BOUNDING = 1 / (FN_DECIMAL(1.5) * FN_DECIMAL(1.5))
file File.cpp
#include <fstream>#include <sstream>#include <array>#include “fs/File.hpp”#include <boost/filesystem.hpp>#include “exceptions/FileNotFoundException.hpp”#include “exceptions/InvalidArgumentException.hpp”#include “exceptions/InvalidOperationException.hpp”
file FileSystem.cpp
#include <algorithm>#include “fs/FileSystem.hpp”#include “fs/File.hpp”#include <boost/filesystem/fstream.hpp>#include <exceptions/InvalidArgumentException.hpp>#include <exceptions/FileNotFoundException.hpp>
file GameEngine.cpp
#include <iostream>#include <sstream>#include <utility>#include <functional>#include <algorithm>#include <chrono>#include <boost/archive/text_oarchive.hpp>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>#include <glm/gtc/matrix_transform.hpp>#include <glm/gtx/string_cast.hpp>#include “GameEngine.hpp”#include “Scene.hpp”#include “BindingDelegate.hpp”#include “ScriptFunctionHandleWrapper.hpp”#include “Constants.hpp”#include “ModelLoader.hpp”#include “graphics/model/Animate.hpp”#include “TerrainFactory.hpp”#include “scripting/ScriptingFactory.hpp”#include “graphics/Event.hpp”#include “logger/Logger.hpp”#include “fs/FileSystem.hpp”#include “Image.hpp”#include “resources/EngineResourceManager.MeshHandle.hpp”#include “resources/EngineResourceManager.TextureHandle.hpp”#include “resources/EngineResourceManager.VertexShaderHandle.hpp”#include “exceptions/FileNotFoundException.hpp”#include “exceptions/InvalidArgumentException.hpp”#include “utilities/IoUtilities.hpp”#include “detail/Validation.hpp”

Defines

GLM_FORCE_RADIANS
CATCH_COPY_AND_RETHROW()
file GameFactory.cpp
#include “GameFactory.hpp”#include “GameEngine.hpp”
file GraphicsEngineBindingDelegate.cpp
#include <string>#include <glm/glm.hpp>#include “Platform.hpp”#include “Types.hpp”#include “ModelHandle.hpp”#include “Scene.hpp”#include “IWindowEventListener.hpp”#include “IKeyboardEventListener.hpp”#include “IMouseMotionEventListener.hpp”#include “IMouseButtonEventListener.hpp”#include “IMouseWheelEventListener.hpp”#include “graphics/IGraphicsEngine.hpp”#include “graphics/gui/IGui.hpp”#include “graphics/model/Model.hpp”#include “GraphicsEngineBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”

Defines

GLM_FORCE_RADIANS
GENERIC_COMPONENT_CONTAINER_CLASS_METHODS(name, class)
file IceEngineMotionChangeListener.cpp
#include “IceEngineMotionChangeListener.hpp”#include “Scene.hpp”
file IceEnginePathfindingAgentMotionChangeListener.cpp
#include <IceEnginePathfindingAgentMotionChangeListener.hpp>
file IceEnginePathfindingAgentStateChangeListener.cpp
#include “IceEnginePathfindingAgentStateChangeListener.hpp”
file IceEnginePathfindingMovementRequestStateChangeListener.cpp
#include “IceEnginePathfindingMovementRequestStateChangeListener.hpp”
file Image.cpp
#include <FreeImage.h>#include “Image.hpp”#include “exceptions/RuntimeException.hpp”
file Logger.cpp
#include “logger/Logger.hpp”
file Main.cpp
#include <iostream>#include “Main.hpp”#include “fs/FileSystem.hpp”#include “utilities/Properties.hpp”#include “logger/Logger.hpp”#include “GameFactory.hpp”#include “PluginManager.hpp”

Functions

int main()
file Mesh.cpp
#include <assimp/mesh.h>#include “Mesh.hpp”#include “detail/AssImpUtilities.hpp”#include “detail/Assert.hpp”
file Model.cpp
#include <assimp/cimport.h>#include <assimp/scene.h>#include <assimp/Importer.hpp>#include <assimp/postprocess.h>#include <assimp/DefaultLogger.hpp>#include <assimp/IOStream.hpp>#include <assimp/IOSystem.hpp>#include <assimp/version.h>#include <glm/glm.hpp>#include <glm/gtc/matrix_transform.hpp>#include <glm/gtx/string_cast.hpp>#include “Model.hpp”#include “detail/Format.hpp”#include “detail/Assert.hpp”#include “exceptions/RuntimeException.hpp”

Defines

GLM_FORCE_RADIANS

Variables

std::unique_ptr<fs::IFile> file_
fs::IFileSystem *fileSystem_ = nullptr
logger::ILogger *logger_ = nullptr
file ModelLoader.cpp
#include <vector>#include <memory>#include <iostream>#include <fstream>#include <sstream>#include <assimp/cimport.h>#include <assimp/scene.h>#include <assimp/Importer.hpp>#include <assimp/postprocess.h>#include <assimp/DefaultLogger.hpp>#include <assimp/IOStream.hpp>#include <assimp/IOSystem.hpp>#include <glm/glm.hpp>#include <glm/gtc/matrix_transform.hpp>#include <glm/gtx/string_cast.hpp>#include “ModelLoader.hpp”#include “Model.hpp”#include “Animation.hpp”#include “Mesh.hpp”#include “Texture.hpp”#include “Image.hpp”#include “utilities/IoUtilities.hpp”

Defines

GLM_FORCE_RADIANS
file NetworkingEngineBindingDelegate.cpp
#include “Platform.hpp”#include “Types.hpp”#include “networking/INetworkingEngine.hpp”#include “NetworkingEngineBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”
file OpenGlLoader.cpp
#include “OpenGlLoader.hpp”
file PathfindingEngineBindingDelegate.cpp
#include <string>#include “Platform.hpp”#include “Types.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “PathfindingEngineBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”
file PathfindingTerrain.cpp
#include <glm/glm.hpp>#include “PathfindingTerrain.hpp”#include “detail/GenerateVertices.hpp”

Defines

GLM_FORCE_RADIANS
file PhysicsEngineBindingDelegate.cpp
#include <string>#include “Platform.hpp”#include “Types.hpp”#include “physics/IPhysicsEngine.hpp”#include “PhysicsEngineBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”
file PluginManager.cpp
#include <iterator>#include <vector>#include <boost/dll/import.hpp>#include “PluginManager.hpp”#include “exceptions/Exception.hpp”#include “detail/Format.hpp”#include “utilities/StringUtilities.hpp”
file ResourceCache.cpp
#include “ResourceCache.hpp”
file Scene.cpp
#include <chrono>#include <fstream>#include <sstream>#include <boost/uuid/uuid.hpp>#include <boost/uuid/uuid_generators.hpp>#include <boost/uuid/uuid_io.hpp>#include “exceptions/Throw.hpp”#include <boost/archive/text_oarchive.hpp>#include <glm/gtx/string_cast.hpp>#include “Scene.hpp”#include “ecs/EntityComponentSystem.hpp”#include “EntityComponentSystemEventListener.hpp”#include “IceEngineMotionChangeListener.hpp”#include “IceEnginePathfindingAgentMotionChangeListener.hpp”#include “IceEnginePathfindingAgentStateChangeListener.hpp”#include “IceEnginePathfindingMovementRequestStateChangeListener.hpp”#include “detail/Format.hpp”

Variables

logger::ILogger *logger_
physics::IPhysicsEngine &physicsEngine_
physics::PhysicsSceneHandle physicsSceneHandle_
std::vector<ecs::Entity> &entities_
file SceneBindingDelegate.cpp
#include <string>#include <chrono>#include <glm/glm.hpp>#include “Platform.hpp”#include “Types.hpp”#include “ModelHandle.hpp”#include “Scene.hpp”#include “graphics/IGraphicsEngine.hpp”#include “graphics/gui/IGui.hpp”#include “graphics/model/Model.hpp”#include “physics/IPhysicsEngine.hpp”#include “pathfinding/IPathfindingEngine.hpp”#include “SceneBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”#include “scripting/IScriptingEngine.hpp”#include “GameEngine.hpp”

Defines

GLM_FORCE_RADIANS
file ScriptFunctionHandleWrapper.cpp
#include “ScriptFunctionHandleWrapper.hpp”
file AngelscriptCPreProcessor.cpp
#include “scripting/angel_script/AngelscriptCPreProcessor.hpp”
file debugger.cpp
#include “debugger.h”#include <iostream>#include <sstream>#include <stdlib.h>#include <assert.h>
file scriptarray.cpp
#include <new>#include <stdlib.h>#include <string.h>#include <assert.h>#include <stdio.h>#include <string>#include <algorithm>#include “scriptarray.h”

Defines

UNUSED_VAR(x)
COMPARE(T)
COMPARE(T)

Functions

static void RegisterScriptArray_Native(asIScriptEngine *engine)
static void RegisterScriptArray_Generic(asIScriptEngine *engine)
static void CleanupTypeInfoArrayCache(asITypeInfo *type)
static bool ScriptArrayTemplateCallback(asITypeInfo *ti, bool &dontGarbageCollect)
void RegisterScriptArray(asIScriptEngine *engine, bool defaultArray)
static void ScriptArrayFactory_Generic(asIScriptGeneric *gen)
static void ScriptArrayFactory2_Generic(asIScriptGeneric *gen)
static void ScriptArrayListFactory_Generic(asIScriptGeneric *gen)
static void ScriptArrayFactoryDefVal_Generic(asIScriptGeneric *gen)
static void ScriptArrayTemplateCallback_Generic(asIScriptGeneric *gen)
static void ScriptArrayAssignment_Generic(asIScriptGeneric *gen)
static void ScriptArrayEquals_Generic(asIScriptGeneric *gen)
static void ScriptArrayFind_Generic(asIScriptGeneric *gen)
static void ScriptArrayFind2_Generic(asIScriptGeneric *gen)
static void ScriptArrayFindByRef_Generic(asIScriptGeneric *gen)
static void ScriptArrayFindByRef2_Generic(asIScriptGeneric *gen)
static void ScriptArrayAt_Generic(asIScriptGeneric *gen)
static void ScriptArrayInsertAt_Generic(asIScriptGeneric *gen)
static void ScriptArrayInsertAtArray_Generic(asIScriptGeneric *gen)
static void ScriptArrayRemoveAt_Generic(asIScriptGeneric *gen)
static void ScriptArrayRemoveRange_Generic(asIScriptGeneric *gen)
static void ScriptArrayInsertLast_Generic(asIScriptGeneric *gen)
static void ScriptArrayRemoveLast_Generic(asIScriptGeneric *gen)
static void ScriptArrayLength_Generic(asIScriptGeneric *gen)
static void ScriptArrayResize_Generic(asIScriptGeneric *gen)
static void ScriptArrayReserve_Generic(asIScriptGeneric *gen)
static void ScriptArraySortAsc_Generic(asIScriptGeneric *gen)
static void ScriptArrayReverse_Generic(asIScriptGeneric *gen)
static void ScriptArrayIsEmpty_Generic(asIScriptGeneric *gen)
static void ScriptArraySortAsc2_Generic(asIScriptGeneric *gen)
static void ScriptArraySortDesc_Generic(asIScriptGeneric *gen)
static void ScriptArraySortDesc2_Generic(asIScriptGeneric *gen)
static void ScriptArraySortCallback_Generic(asIScriptGeneric *gen)
static void ScriptArrayAddRef_Generic(asIScriptGeneric *gen)
static void ScriptArrayRelease_Generic(asIScriptGeneric *gen)
static void ScriptArrayGetRefCount_Generic(asIScriptGeneric *gen)
static void ScriptArraySetFlag_Generic(asIScriptGeneric *gen)
static void ScriptArrayGetFlag_Generic(asIScriptGeneric *gen)
static void ScriptArrayEnumReferences_Generic(asIScriptGeneric *gen)
static void ScriptArrayReleaseAllHandles_Generic(asIScriptGeneric *gen)

Variables

static asALLOCFUNC_t userAlloc = asAllocMem
static asFREEFUNC_t userFree = asFreeMem
const asPWORD ARRAY_CACHE = 1000
file scriptbuilder.cpp
#include “scriptbuilder.h”#include <vector>#include <assert.h>#include <stdio.h>

Functions

static BEGIN_AS_NAMESPACE string GetCurrentDir ()
static string GetAbsolutePath(const string &path)
file scriptdictionary.cpp
#include <assert.h>#include <string.h>#include “scriptdictionary.h”#include “../scriptarray/scriptarray.h”

Functions

void ScriptDictionaryFactory_Generic(asIScriptGeneric *gen)
void ScriptDictionaryListFactory_Generic(asIScriptGeneric *gen)
void ScriptDictionaryAddRef_Generic(asIScriptGeneric *gen)
void ScriptDictionaryRelease_Generic(asIScriptGeneric *gen)
void ScriptDictionaryAssign_Generic(asIScriptGeneric *gen)
void ScriptDictionarySet_Generic(asIScriptGeneric *gen)
void ScriptDictionarySetInt_Generic(asIScriptGeneric *gen)
void ScriptDictionarySetFlt_Generic(asIScriptGeneric *gen)
void ScriptDictionaryGet_Generic(asIScriptGeneric *gen)
void ScriptDictionaryGetInt_Generic(asIScriptGeneric *gen)
void ScriptDictionaryGetFlt_Generic(asIScriptGeneric *gen)
void ScriptDictionaryExists_Generic(asIScriptGeneric *gen)
void ScriptDictionaryIsEmpty_Generic(asIScriptGeneric *gen)
void ScriptDictionaryGetSize_Generic(asIScriptGeneric *gen)
void ScriptDictionaryDelete_Generic(asIScriptGeneric *gen)
void ScriptDictionaryDeleteAll_Generic(asIScriptGeneric *gen)
static void ScriptDictionaryGetRefCount_Generic(asIScriptGeneric *gen)
static void ScriptDictionarySetGCFlag_Generic(asIScriptGeneric *gen)
static void ScriptDictionaryGetGCFlag_Generic(asIScriptGeneric *gen)
static void ScriptDictionaryEnumReferences_Generic(asIScriptGeneric *gen)
static void ScriptDictionaryReleaseAllReferences_Generic(asIScriptGeneric *gen)
static void CScriptDictionaryGetKeys_Generic(asIScriptGeneric *gen)
static void CScriptDictionary_opIndex_Generic(asIScriptGeneric *gen)
static void CScriptDictionary_opIndex_const_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_Construct(void *mem)
static void CScriptDictValue_Destruct(CScriptDictValue *obj)
static CScriptDictValue &CScriptDictValue_opAssign(void *ref, int typeId, CScriptDictValue *obj)
static CScriptDictValue &CScriptDictValue_opAssign(const CScriptDictValue &other, CScriptDictValue *obj)
static CScriptDictValue &CScriptDictValue_opAssign(double val, CScriptDictValue *obj)
static CScriptDictValue &CScriptDictValue_opAssign(asINT64 val, CScriptDictValue *obj)
static void CScriptDictValue_opCast(void *ref, int typeId, CScriptDictValue *obj)
static asINT64 CScriptDictValue_opConvInt(CScriptDictValue *obj)
static double CScriptDictValue_opConvDouble(CScriptDictValue *obj)
static void CScriptDictValue_opConvDouble_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_opConvInt_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_opCast_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_opAssign_int64_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_opAssign_double_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_opAssign_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_opCopyAssign_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_Construct_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_Destruct_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_EnumReferences_Generic(asIScriptGeneric *gen)
static void CScriptDictValue_FreeValue_Generic(asIScriptGeneric *gen)
void RegisterScriptDictionary(asIScriptEngine *engine)
void RegisterScriptDictionary_Native(asIScriptEngine *engine)
void RegisterScriptDictionary_Generic(asIScriptEngine *engine)

Variables

const asPWORD DICTIONARY_CACHE = 1003
file scripthandle.cpp
#include “scripthandle.h”#include <new>#include <assert.h>#include <string.h>

Functions

static BEGIN_AS_NAMESPACE void Construct (CScriptHandle *self)
static void Construct(CScriptHandle *self, const CScriptHandle &o)
void Construct(CScriptHandle *self, void *ref, int typeId)
static void Destruct(CScriptHandle *self)
void RegisterScriptHandle_Native(asIScriptEngine *engine)
void CScriptHandle_Construct_Generic(asIScriptGeneric *gen)
void CScriptHandle_ConstructCopy_Generic(asIScriptGeneric *gen)
void CScriptHandle_ConstructVar_Generic(asIScriptGeneric *gen)
void CScriptHandle_Destruct_Generic(asIScriptGeneric *gen)
void CScriptHandle_Cast_Generic(asIScriptGeneric *gen)
void CScriptHandle_Assign_Generic(asIScriptGeneric *gen)
void CScriptHandle_AssignVar_Generic(asIScriptGeneric *gen)
void CScriptHandle_Equals_Generic(asIScriptGeneric *gen)
void CScriptHandle_EqualsVar_Generic(asIScriptGeneric *gen)
void CScriptHandle_EnumReferences_Generic(asIScriptGeneric *gen)
void CScriptHandle_ReleaseReferences_Generic(asIScriptGeneric *gen)
void RegisterScriptHandle_Generic(asIScriptEngine *engine)
void RegisterScriptHandle(asIScriptEngine *engine)
file scripthelper.cpp
#include <string.h>#include “scripthelper.h”#include <assert.h>#include <stdio.h>#include <fstream>#include <set>#include <stdlib.h>

Functions

BEGIN_AS_NAMESPACE int CompareRelation (asIScriptEngine *engine, void *lobj, void *robj, int typeId, int &result)
int CompareEquality(asIScriptEngine *engine, void *lobj, void *robj, int typeId, bool &result)
int ExecuteString(asIScriptEngine *engine, const char *code, asIScriptModule *mod, asIScriptContext *ctx)
int ExecuteString(asIScriptEngine *engine, const char *code, void *ref, int refTypeId, asIScriptModule *mod, asIScriptContext *ctx)
int WriteConfigToFile(asIScriptEngine *engine, const char *filename)
int WriteConfigToStream(asIScriptEngine *engine, ostream &strm)
int ConfigEngineFromStream(asIScriptEngine *engine, istream &strm, const char *configFile, asIStringFactory *stringFactory)
string GetExceptionInfo(asIScriptContext *ctx, bool showStack)
void ScriptThrow(const string &msg)
string ScriptGetExceptionInfo()
void RegisterExceptionRoutines(asIScriptEngine *engine)
file ScriptingEngine.cpp
#include <iostream>#include <stdio.h>#include <glm/gtx/string_cast.hpp>#include <boost/exception/diagnostic_information.hpp>#include “scripting/angel_script/ScriptingEngine.hpp”#include “scripting/angel_script/scripthelper/scripthelper.h”#include “scripting/angel_script/scriptarray/scriptarray.h”#include “scripting/angel_script/scriptstdstring/scriptstdstring.h”#include “scripting/angel_script/scriptdictionary/scriptdictionary.h”#include “scripting/angel_script/scriptvector/scriptvector.hpp”#include “scripting/angel_script/scriptglm/scriptglm.hpp”#include “scripting/angel_script/scriptchrono/scriptchrono.hpp”#include “scripting/angel_script/AngelscriptCPreProcessor.hpp”#include “Platform.hpp”
file scriptstdstring.cpp
#include “scriptstdstring.h”#include <assert.h>#include <sstream>#include <string.h>#include <stdio.h>#include <stdlib.h>#include <locale.h>#include <map>

Defines

UNUSED_VAR(x)

Functions

CStdStringFactory *GetStdStringFactorySingleton()
static void ConstructString(string *thisPointer)
static void CopyConstructString(const string &other, string *thisPointer)
static void DestructString(string *thisPointer)
static string &AddAssignStringToString(const string &str, string &dest)
static bool StringIsEmpty(const string &str)
static string &AssignUInt64ToString(asQWORD i, string &dest)
static string &AddAssignUInt64ToString(asQWORD i, string &dest)
static string AddStringUInt64(const string &str, asQWORD i)
static string AddInt64String(asINT64 i, const string &str)
static string &AssignInt64ToString(asINT64 i, string &dest)
static string &AddAssignInt64ToString(asINT64 i, string &dest)
static string AddStringInt64(const string &str, asINT64 i)
static string AddUInt64String(asQWORD i, const string &str)
static string &AssignDoubleToString(double f, string &dest)
static string &AddAssignDoubleToString(double f, string &dest)
static string &AssignFloatToString(float f, string &dest)
static string &AddAssignFloatToString(float f, string &dest)
static string &AssignBoolToString(bool b, string &dest)
static string &AddAssignBoolToString(bool b, string &dest)
static string AddStringDouble(const string &str, double f)
static string AddDoubleString(double f, const string &str)
static string AddStringFloat(const string &str, float f)
static string AddFloatString(float f, const string &str)
static string AddStringBool(const string &str, bool b)
static string AddBoolString(bool b, const string &str)
static char *StringCharAt(unsigned int i, string &str)
static int StringCmp(const string &a, const string &b)
static int StringFindFirst(const string &sub, asUINT start, const string &str)
static int StringFindFirstOf(const string &sub, asUINT start, const string &str)
static int StringFindLastOf(const string &sub, asUINT start, const string &str)
static int StringFindFirstNotOf(const string &sub, asUINT start, const string &str)
static int StringFindLastNotOf(const string &sub, asUINT start, const string &str)
static int StringFindLast(const string &sub, int start, const string &str)
static void StringInsert(unsigned int pos, const string &other, string &str)
static void StringErase(unsigned int pos, int count, string &str)
static asUINT StringLength(const string &str)
static void StringResize(asUINT l, string &str)
static string formatInt(asINT64 value, const string &options, asUINT width)
static string formatUInt(asQWORD value, const string &options, asUINT width)
static string formatFloat(double value, const string &options, asUINT width, asUINT precision)
static asINT64 parseInt(const string &val, asUINT base, asUINT *byteCount)
static asQWORD parseUInt(const string &val, asUINT base, asUINT *byteCount)
double parseFloat(const string &val, asUINT *byteCount)
static string StringSubString(asUINT start, int count, const string &str)
static bool StringEquals(const std::string &lhs, const std::string &rhs)
void RegisterStdString_Native(asIScriptEngine *engine)
static void ConstructStringGeneric(asIScriptGeneric *gen)
static void CopyConstructStringGeneric(asIScriptGeneric *gen)
static void DestructStringGeneric(asIScriptGeneric *gen)
static void AssignStringGeneric(asIScriptGeneric *gen)
static void AddAssignStringGeneric(asIScriptGeneric *gen)
static void StringEqualsGeneric(asIScriptGeneric *gen)
static void StringCmpGeneric(asIScriptGeneric *gen)
static void StringAddGeneric(asIScriptGeneric *gen)
static void StringLengthGeneric(asIScriptGeneric *gen)
static void StringIsEmptyGeneric(asIScriptGeneric *gen)
static void StringResizeGeneric(asIScriptGeneric *gen)
static void StringInsert_Generic(asIScriptGeneric *gen)
static void StringErase_Generic(asIScriptGeneric *gen)
static void StringFindFirst_Generic(asIScriptGeneric *gen)
static void StringFindLast_Generic(asIScriptGeneric *gen)
static void StringFindFirstOf_Generic(asIScriptGeneric *gen)
static void StringFindLastOf_Generic(asIScriptGeneric *gen)
static void StringFindFirstNotOf_Generic(asIScriptGeneric *gen)
static void StringFindLastNotOf_Generic(asIScriptGeneric *gen)
static void formatInt_Generic(asIScriptGeneric *gen)
static void formatUInt_Generic(asIScriptGeneric *gen)
static void formatFloat_Generic(asIScriptGeneric *gen)
static void parseInt_Generic(asIScriptGeneric *gen)
static void parseUInt_Generic(asIScriptGeneric *gen)
static void parseFloat_Generic(asIScriptGeneric *gen)
static void StringCharAtGeneric(asIScriptGeneric *gen)
static void AssignInt2StringGeneric(asIScriptGeneric *gen)
static void AssignUInt2StringGeneric(asIScriptGeneric *gen)
static void AssignDouble2StringGeneric(asIScriptGeneric *gen)
static void AssignFloat2StringGeneric(asIScriptGeneric *gen)
static void AssignBool2StringGeneric(asIScriptGeneric *gen)
static void AddAssignDouble2StringGeneric(asIScriptGeneric *gen)
static void AddAssignFloat2StringGeneric(asIScriptGeneric *gen)
static void AddAssignInt2StringGeneric(asIScriptGeneric *gen)
static void AddAssignUInt2StringGeneric(asIScriptGeneric *gen)
static void AddAssignBool2StringGeneric(asIScriptGeneric *gen)
static void AddString2DoubleGeneric(asIScriptGeneric *gen)
static void AddString2FloatGeneric(asIScriptGeneric *gen)
static void AddString2IntGeneric(asIScriptGeneric *gen)
static void AddString2UIntGeneric(asIScriptGeneric *gen)
static void AddString2BoolGeneric(asIScriptGeneric *gen)
static void AddDouble2StringGeneric(asIScriptGeneric *gen)
static void AddFloat2StringGeneric(asIScriptGeneric *gen)
static void AddInt2StringGeneric(asIScriptGeneric *gen)
static void AddUInt2StringGeneric(asIScriptGeneric *gen)
static void AddBool2StringGeneric(asIScriptGeneric *gen)
static void StringSubString_Generic(asIScriptGeneric *gen)
void RegisterStdString_Generic(asIScriptEngine *engine)
void RegisterStdString(asIScriptEngine *engine)

Variables

BEGIN_AS_NAMESPACE typedef map< string, int > map_t
static CStdStringFactory *stringFactory = 0
static CStdStringFactoryCleaner cleaner
file scriptstdstring_utils.cpp
#include <assert.h>#include “scriptstdstring.h”#include “../scriptarray/scriptarray.h”#include <stdio.h>#include <string.h>

Functions

static BEGIN_AS_NAMESPACE CScriptArray * StringSplit (const string &delim, const string &str)
static void StringSplit_Generic(asIScriptGeneric *gen)
static string StringJoin(const CScriptArray &array, const string &delim)
static void StringJoin_Generic(asIScriptGeneric *gen)
void RegisterStdStringUtils(asIScriptEngine *engine)
file ScriptingFactory.cpp
#include “scripting/ScriptingFactory.hpp”#include “scripting/angel_script/ScriptingEngine.hpp”
file ScriptingEngineBindingDelegate.cpp
#include <string>#include <chrono>#include <glm/glm.hpp>#include “Platform.hpp”#include “Types.hpp”#include “scripting/IScriptingEngine.hpp”#include “ScriptingEngineBindingDelegate.hpp”#include “BindingDelegateUtilities.hpp”

Defines

GLM_FORCE_RADIANS
file Skeleton.cpp
#include <glm/glm.hpp>#include <assimp/anim.h>#include “Skeleton.hpp”#include “detail/AssImpUtilities.hpp”#include “detail/Assert.hpp”

Defines

GLM_FORCE_RADIANS
file Terrain.cpp
#include <cmath>#include <FreeImage.h>#include “ecs/PositionComponent.hpp”#include “ecs/RigidBodyObjectComponent.hpp”#include “ecs/GraphicsTerrainComponent.hpp”#include “ModelLoader.hpp”#include “Terrain.hpp”#include “Scene.hpp”#include “Heightfield.hpp”#include “Image.hpp”#include “utilities/IoUtilities.hpp”
file TerrainFactory.cpp
#include “TerrainFactory.hpp”#include “Terrain.hpp”
file Texture.cpp
#include <assimp/material.h>#include “Texture.hpp”#include “IResourceCache.hpp”#include “exceptions/FileNotFoundException.hpp”
file ThreadPool.cpp
#include <ctpl.h>#include “ThreadPool.hpp”
file Properties.cpp
#include <iostream>#include <set>#include <exception>#include <fstream>#include <utility>#include <iomanip>#include <cctype>#include <boost/config.hpp>#include <boost/program_options/detail/config_file.hpp>#include <boost/program_options/parsers.hpp>#include “utilities/Properties.hpp”
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/audio
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/autowrapper
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/serialization/std/chrono
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/debugger
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/debugger
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/detail
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/ecs
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/ecs
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/exceptions
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/exceptions
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/graphics/exceptions
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/extras
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/extras
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/fs
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/fs
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/autowrapper/generator
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/serialization/glm
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/glm_bindings
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/graphics
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/graphics/gui
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/handles
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/logger
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/logger
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/graphics/model
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/networking
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/noise
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/pathfinding
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/physics
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/ray
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/resources
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/scriptarray
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptarray
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/scriptbuilder
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptbuilder
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptchrono
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/scriptdictionary
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptdictionary
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptglm
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scripthandle
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/scripthandle
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scripthelper
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/scripthelper
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptstdstring
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/scripting/angel_script/scriptstdstring
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/scripting/angel_script/scriptvector
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/serialization
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/serialization/std
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/include/utilities
dir /home/docs/checkouts/readthedocs.org/user_builds/ice-engine/checkouts/latest/src/utilities