VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtProfileNode.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 #include <cstddef>
15 
16 namespace makVrv
17 {
18  typedef unsigned long long DtUInt64;
19 
23  {
24  public:
26  void* operator new(std::size_t size);
27  void operator delete(void* memory);
28 
30  DtProfileNode(const char* name, DtProfileNode* parent);
31 
33  ~DtProfileNode();
34 
38  DtProfileNode* getChildNode( const char * name );
39 
41  DtProfileNode* parent() const;
43  DtProfileNode* sibling() const;
45  DtProfileNode* child() const;
46 
48  DtProfileNode* largestChild() const;
49 
51  void reset();
53  void call();
57  bool finish();
58 
60  const char* name() const;
62  int threadId() const;
64  int totalCalls() const;
66  DtUInt64 totalTime() const;
67 
68  DtUInt64 maxTime() const;
69  DtUInt64 minTime() const;
70 
71  DtUInt64 timeLastFrame() const;
72  int lastFrameCalled() const;
73  int callsLastFrame() const;
74 
75  void nextFrame();
76 
77  static int nodeCount();
78  static int maxNodes();
79 
80  void setUiOpen(bool open);
81  bool uiOpen();
82 
83  protected:
84  const char* myName;
95  DtProfileNode* myParent;
96  DtProfileNode* myChild;
97  DtProfileNode* mySibling;
98 
99  bool myUiOpen;
100  };
101 }
Profile node class stores timing data for a profiled section.
Definition: DtProfileNode.h:22
#define DT_DLL_VRVUTIL
Definition: vrvUtil.h:34
DtProfileNode * mySibling
Definition: DtProfileNode.h:97
int myThreadiId
Definition: DtProfileNode.h:94
voidpf void uLong size
Definition: ioapi.h:39
int myTotalCalls
Definition: DtProfileNode.h:91
int myCallsLastFrame
Definition: DtProfileNode.h:93
DtUInt64 myTimeLastFrame
Definition: DtProfileNode.h:87
DtUInt64 myTotalTime
Definition: DtProfileNode.h:85
Contains DLL export macros.
int myRecursionCounter
Definition: DtProfileNode.h:92
bool myUiOpen
Definition: DtProfileNode.h:99
const char * myName
Definition: DtProfileNode.h:84
DtUInt64 myMaxTime
Definition: DtProfileNode.h:88
DtUInt64 myStartTime
Definition: DtProfileNode.h:86
DtProfileNode * myChild
Definition: DtProfileNode.h:96
DtProfileNode * myParent
Definition: DtProfileNode.h:95
DtUInt64 myMinTime
Definition: DtProfileNode.h:89
unsigned long long DtUInt64
unsigned 64 bit integer
Definition: DtProfileIterator.h:18
int myLastFrameCalled
Definition: DtProfileNode.h:90

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)