VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtLightPointManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 
17 
18 #include <string>
19 
20 
21 namespace makVrv
22 {
23  class DtDe;
24 
29  {
30  public:
31 
32  friend class DtDeSharedState;
33 
34  typedef std::pair<std::string, int> GroupIdPair;
35  typedef std::map<std::string, int> GroupIdMap;
36 
39 
42  static DtLightPointManager& instance(DtDe& de);
43 
44  static void registerInstance(DtDe& de, DtLightPointManager *manager);
45 
47  static const std::string& theClassName();
48 
50  static float defaultLightPointRange();
51 
54  virtual bool groupExists(const std::string& group) const;
55 
57  virtual DtColorValue groupColor(const std::string& group);
58 
62  virtual int groupId(const std::string& group);
63 
65  virtual int lightPointMaxCode();
66 
69  void setGroupColor(const std::string& group, float colorR, float colorG, float colorB, float colorA);
70 
73  virtual void setGroupColor(const std::string& group, const DtColorValue& color);
74 
76  virtual const GroupIdMap& groupIdMap();
77 
78 
79  protected:
80 
82  virtual ~DtLightPointManager();
83 
86  void local_setGroupColor(const std::string& group, const DtColorValue& color);
87 
88  protected:
89 
91 
93 
94  //Internal light point table. Restricted access. Use light point manager to modify this table.
96 
98 
99  typedef std::vector<DtColorValue> ColorVector;
101 
103 
104  protected:
105 
106  static const std::string theLightFilename;
107  static const std::string theLightTunningFilename;
108  static const std::string theLightDefaultValuesXmlFilename;
109  static const std::string theLightDefaultValuesCsvFilename;
110 
111  };
112 }
int myLastUpdateLightPointMaxCode
Definition: DtLightPointManager.h:102
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
static const std::string theLightFilename
Definition: DtLightPointManager.h:106
DtLightPointTable myLightsTable
Definition: DtLightPointManager.h:95
DtSignalConnectionManager mySignals
Definition: DtLightPointManager.h:90
DtDe & myDe
Definition: DtLightPointManager.h:92
ColorVector myGroupColors
Definition: DtLightPointManager.h:100
Lights Table class, handles loading the light type table default files and keeping track of all the c...
Definition: DtLightPointTable.h:34
Contains makVrv::DtVirtualBaseClass class.
The DtDeSharedState represents all the data that is shared between the master and its slaves...
Definition: DtDeSharedState.h:44
std::pair< std::string, int > GroupIdPair
Definition: DtLightPointManager.h:34
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
static const std::string theLightDefaultValuesXmlFilename
Definition: DtLightPointManager.h:108
Utility class container for light point types.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
static const std::string theLightDefaultValuesCsvFilename
Definition: DtLightPointManager.h:109
static const std::string theLightTunningFilename
Definition: DtLightPointManager.h:107
Base class to provide boost signal/slot management.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
GroupIdMap myGroupIds
Definition: DtLightPointManager.h:97
Template for Color values in [0,1] range.
Definition: DtColorValue.h:20
std::vector< DtColorValue > ColorVector
Definition: DtLightPointManager.h:99
std::map< std::string, int > GroupIdMap
Definition: DtLightPointManager.h:35
Contains DLL export macros.
DtLightPointManager core base class for DtOsgLightPointManger (which does most of the work for light ...
Definition: DtLightPointManager.h:28

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)