TrueReality  v0.1.1912
MessageSystemControl.h
Go to the documentation of this file.
1 /*
2 * True Reality Open Source Game and Simulation Engine
3 * Copyright © 2021 Acid Rain Studios LLC
4 *
5 * This library is free software; you can redistribute it and/or modify it under
6 * the terms of the GNU Lesser General Public License as published by the Free
7 * Software Foundation; either version 3.0 of the License, or (at your option)
8 * any later version.
9 *
10 * This library is distributed in the hope that it will be useful, but WITHOUT
11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
13 * details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this library; if not, write to the Free Software Foundation, Inc.,
17 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 *
19 * @author Maxim Serebrennik
20 */
21 
22 #pragma once
23 
24 #include "Export.h"
25 
26 #include <trManager/MessageBase.h>
27 #include <trCore/SystemControls.h>
28 #include <trBase/UniqueId.h>
29 
30 namespace trCore
31 {
38  {
39  public:
41 
43 
54  MessageSystemControl(const trBase::UniqueId* fromActorID, const trCore::SystemControls &systemControl, double systemValue = 0);
55 
63  virtual const std::string& GetMessageType() const override;
64 
72  virtual const trCore::SystemControls& GetSysControlType() const;
73 
81  virtual double GetSystemValue() const;
82 
83  protected:
84 
91 
92  private:
93 
95  double mSystemValue;
96 
97  };
98 }
99 
#define TR_CORE_EXPORT
Definition: trCore/Export.h:33
This class creates a GUID, or a Unique ID that is used through out TR to identify and distinguish one...
Definition: UniqueId.h:42
A string wrapper that will make sure that all of the strings with the same value will point to the sa...
Definition: RefStr.h:50
ENUM specifying various system control states.
const trCore::SystemControls * mSystemControl
static const trUtil::RefStr MESSAGE_TYPE
Adds an easy and swappable access to the base class.
osg::Referenced BaseClass
Definition: SmrtClass.h:42
A message that lets the system know what state to enable and setup.
This is the base class for all the messages in TR.
Definition: MessageBase.h:40