Panda3D
 All Classes Functions Variables Enumerations
timerQueryContext.h
1 // Filename: timerQueryContext.h
2 // Created by: rdb (22Aug14)
3 //
4 ////////////////////////////////////////////////////////////////////
5 //
6 // PANDA 3D SOFTWARE
7 // Copyright (c) Carnegie Mellon University. All rights reserved.
8 //
9 // All use of this software is subject to the terms of the revised BSD
10 // license. You should have received a copy of this license along
11 // with this source code in a file named "LICENSE."
12 //
13 ////////////////////////////////////////////////////////////////////
14 
15 #ifndef TIMERQUERYCONTEXT_H
16 #define TIMERQUERYCONTEXT_H
17 
18 #include "pandabase.h"
19 #include "queryContext.h"
20 #include "clockObject.h"
21 #include "pStatCollector.h"
22 
23 ////////////////////////////////////////////////////////////////////
24 // Class : TimerQueryContext
25 // Description :
26 ////////////////////////////////////////////////////////////////////
27 class EXPCL_PANDA_GOBJ TimerQueryContext : public QueryContext {
28 public:
29  INLINE TimerQueryContext(int pstats_index);
30 
31  ALLOC_DELETED_CHAIN(TimerQueryContext);
32 
33  virtual double get_timestamp() const=0;
34 
35  int _frame_index;
36  int _pstats_index;
37 
38 public:
39  static TypeHandle get_class_type() {
40  return _type_handle;
41  }
42  static void init_type() {
43  QueryContext::init_type();
44  register_type(_type_handle, "TimerQueryContext",
45  QueryContext::get_class_type());
46  }
47  virtual TypeHandle get_type() const {
48  return get_class_type();
49  }
50  virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
51 
52 private:
53  static TypeHandle _type_handle;
54 
55  friend class PreparedGraphicsObjects;
56 };
57 
58 #include "timerQueryContext.I"
59 
60 #endif
A table of objects that are saved within the graphics context for reference by handle later...
This is a base class for queries that might require a round-trip to the graphics engine.
Definition: queryContext.h:38
TypeHandle is the identifier used to differentiate C++ class types.
Definition: typeHandle.h:85