VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtProfileManager.h
Go to the documentation of this file.
1 /*********************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************************/
5 
10 
11 #pragma once
12 
13 #include <vrvUtil/vrvUtil.h>
14 
15 #include <string>
16 
17 namespace makVrv
18 {
20  typedef unsigned long long DtUInt64;
21 
23  struct DtThreadProfileData;
24  class DtProfileIterator;
25  class DtProfileNode;
26 
30  {
31  public:
39  static void incrementClientCount();
40  static void decrementClientCount();
42 
44  static void startProfile(const char* name);
46  static void stopProfile();
47 
49  static void startPerformanceStat(const char* name);
51  static void stopPerformanceStat();
52 
54  static void getTime(DtUInt64& time);
55 
57  static void reset();
60  static void incrementFrameCounter();
62  static int frameCountSinceReset() {return theFrameCounter; }
64  static DtUInt64 timeSinceReset();
66  static DtUInt64 ticksPerSecond();
67 
69  static double averageFps();
71  static double instantFps();
73  static double lowestFps();
74 
76  static double instantFrameTime();
77  static double averageFrameTime();
78  static double highestFrameTime();
79 
81  static DtProfileIterator* profileIterator();
82 
84  static DtProfileIterator* statIterator();
85 
87  static void releaseIterator(DtProfileIterator* iterator );
88 
89  private:
94  {
95  public:
96  Initializer();
97  };
98  friend class Initializer;
100 
102  static DtThreadProfileData* getCurrentProfileNode();
103  static DtThreadProfileData* getCurrentPerformanceStatNode();
104 
107 
108  static bool theShouldReset;
109  static int theFrameCounter;
112 
115  static int theFrameTimeIndex;
116 
117  static int theClientCount;
118  };
119 }
120 
121 

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)