Plasma Engine  2.0
Loading...
Searching...
No Matches
InputConfig.h
1#pragma once
2
3#include <Foundation/Strings/String.h>
4#include <Foundation/Types/Variant.h>
5#include <GameEngine/GameEngineDLL.h>
6
9
10class PL_GAMEENGINE_DLL plGameAppInputConfig
11{
12public:
13 constexpr static plUInt32 MaxInputSlotAlternatives = 3;
14
15 static constexpr const plStringView s_sConfigFile = ":project/RuntimeConfigs/InputConfig.ddl"_plsv;
16
18
19 void Apply() const;
20 void WriteToDDL(plOpenDdlWriter& ref_writer) const;
21 void ReadFromDDL(const plOpenDdlReaderElement* pAction);
22
23 static void ApplyAll(const plArrayPtr<plGameAppInputConfig>& actions);
24 static void WriteToDDL(plStreamWriter& inout_stream, const plArrayPtr<plGameAppInputConfig>& actions);
25 static void ReadFromDDL(plStreamReader& inout_stream, plHybridArray<plGameAppInputConfig, 32>& out_actions);
26
27 plString m_sInputSet;
28 plString m_sInputAction;
29
30 plString m_sInputSlotTrigger[MaxInputSlotAlternatives];
31
32 float m_fInputSlotScale[MaxInputSlotAlternatives];
33
34 bool m_bApplyTimeScaling = true;
35};
This class encapsulates an array and it's size. It is recommended to use this class instead of plain ...
Definition ArrayPtr.h:37
Definition InputConfig.h:11
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
Represents a single 'object' in a DDL document, e.g. either a custom type or a primitives list.
Definition OpenDdlReader.h:11
The base class for OpenDDL writers.
Definition OpenDdlWriter.h:13
Interface for binary in (read) streams.
Definition Stream.h:22
Interface for binary out (write) streams.
Definition Stream.h:107
plStringView represent a read-only sub-string of a larger string, as it can store a dedicated string ...
Definition StringView.h:34