VR-Forces Development_Version 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();
72 
74  static double instantFrameTime();
75  static double averageFrameTime();
76 
78  static DtProfileIterator* profileIterator();
79 
81  static DtProfileIterator* statIterator();
82 
84  static void releaseIterator(DtProfileIterator* iterator );
85 
86  private:
91  {
92  public:
93  Initializer();
94  };
95  friend class Initializer;
97 
99  static DtThreadProfileData* getCurrentProfileNode();
100  static DtThreadProfileData* getCurrentPerformanceStatNode();
101 
104 
105  static bool theShouldReset;
106  static int theFrameCounter;
109 
111  static int theFrameTimeIndex;
112 
113  static int theClientCount;
114  };
115 }
116 
117 

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)