55 lines
1.2 KiB
Text
55 lines
1.2 KiB
Text
|
/**
|
||
|
* PANDA 3D SOFTWARE
|
||
|
* Copyright (c) Carnegie Mellon University. All rights reserved.
|
||
|
*
|
||
|
* All use of this software is subject to the terms of the revised BSD
|
||
|
* license. You should have received a copy of this license along
|
||
|
* with this source code in a file named "LICENSE."
|
||
|
*
|
||
|
* @file pStatGPUTimer.I
|
||
|
* @author rdb
|
||
|
* @date 2014-08-21
|
||
|
*/
|
||
|
|
||
|
#ifdef DO_PSTATS
|
||
|
|
||
|
/**
|
||
|
*
|
||
|
*/
|
||
|
INLINE PStatGPUTimer::
|
||
|
PStatGPUTimer(GraphicsStateGuardian *gsg, PStatCollector &collector) :
|
||
|
PStatTimer(collector),
|
||
|
_gsg(gsg)
|
||
|
{
|
||
|
if (gsg->get_timer_queries_active() && collector.is_active()) {
|
||
|
gsg->issue_timer_query(collector.get_index());
|
||
|
// cerr << "issuing " << collector << " active " << collector.is_active()
|
||
|
// << "\n";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
*
|
||
|
*/
|
||
|
INLINE PStatGPUTimer::
|
||
|
PStatGPUTimer(GraphicsStateGuardian *gsg, PStatCollector &collector, Thread *current_thread) :
|
||
|
PStatTimer(collector, current_thread),
|
||
|
_gsg(gsg)
|
||
|
{
|
||
|
if (gsg->get_timer_queries_active() && collector.is_active()) {
|
||
|
gsg->issue_timer_query(collector.get_index());
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
*
|
||
|
*/
|
||
|
INLINE PStatGPUTimer::
|
||
|
~PStatGPUTimer() {
|
||
|
if (_gsg->get_timer_queries_active() && _collector.is_active()) {
|
||
|
_gsg->issue_timer_query(_collector.get_index() | 0x8000);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif
|