VR-Exchange 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
statisticsManager.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2013 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <broker/dllExport.h>
13 
14 #include <broker/frameTimer.h>
15 
16 class DtString;
17 
18 namespace MAKVrExchange
19 {
20 
21  class DtPortalConnection;
22  class DtStatisticsReportMessage;
23 
27  {
28  public:
29 
31  typedef DtStatisticsManager* (*DtStatisticsManagerCreator)( DtPortalConnection* );
32 
33  public:
34 
39  static DtStatisticsManagerCreator theStatisticsManagerCreator;
40 
43  static DtStatisticsManager* create( DtPortalConnection* pConn );
44 
46  virtual ~DtStatisticsManager();
47 
51  virtual void setReportingInterval( DtTime interval );
52 
54  virtual void setPrintStatisticsToLog( bool doit );
55 
58 
60  virtual void startFrame();
61 
63  virtual void endFrame();
64 
66  virtual void startSection( DtFrameTimer::FrameSectionType type );
67 
69  virtual void endSection( DtFrameTimer::FrameSectionType type );
70 
72 
75  virtual void setInteractionCount( unsigned int count );
76 
78  virtual unsigned int interactionCount() const;
79 
81  virtual void setObjectCount( unsigned int count );
82 
84  virtual unsigned int objectCount() const;
85 
87  virtual void tick();
88 
89  protected:
90 
94 
97  virtual DtStatisticsReportMessage generateInitializationMessage();
98 
102  virtual DtStatisticsReportMessage generateReportMessage();
103 
104  protected:
105 
107  typedef std::map<DtFrameTimer::FrameSectionType,DtString> DisplayNamesMap;
109 
111  typedef std::map<DtFrameTimer::FrameSectionType,DtString> UnitsMap;
113 
116 
117  unsigned int myObjectCount;
118  unsigned int myInteractionCount;
119 
121 
124 
125  };
126 
127 }
unsigned int myObjectCount
Definition: statisticsManager.h:117
Manages statistics gathering and reporting for the broker.
Definition: statisticsManager.h:26
std::map< DtFrameTimer::FrameSectionType, DtString > DisplayNamesMap
Definition: statisticsManager.h:107
DtPortalConnection * myPortalConn
Definition: statisticsManager.h:122
FrameSectionType
Enumerates the default frame section types.
Definition: frameTimer.h:31
std::map< DtFrameTimer::FrameSectionType, DtString > UnitsMap
Definition: statisticsManager.h:111
#define DT_DLL_BROKER
Definition: include/broker/dllExport.h:20
Used by brokers to report timing statistics.
Definition: statisticsReportMessage.h:21
DtFrameTimer * myFrameTimer
Definition: statisticsManager.h:123
Definition: frameTimer.h:23
Contains the DtFrameTimer class declaration.
DtTime myReportingInterval
Definition: statisticsManager.h:115
DisplayNamesMap myDisplayNamesMap
Definition: statisticsManager.h:108
bool myPrintStatisticsToLogFlag
Definition: statisticsManager.h:120
static DtStatisticsManagerCreator theStatisticsManagerCreator
Storage for the method used to create the statistics manager.
Definition: statisticsManager.h:39
Connects a broker to the Portal Data Exchange.
Definition: pConnection.h:49
unsigned int myInteractionCount
Definition: statisticsManager.h:118
DtTime myLastReportTime
Definition: statisticsManager.h:114
UnitsMap myUnitsMap
Definition: statisticsManager.h:112

Document ID: Generated on Mon Apr 19 15:55:22 EDT 2021 from SVN revision 227909
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)