Panda3D
Public Member Functions | Friends | List of all members
BufferContextChain Class Reference

This class maintains a linked list of BufferContexts that might be allocated on the graphics card in some context. More...

#include "bufferContextChain.h"

Inheritance diagram for BufferContextChain:
LinkedListNode

Public Member Functions

int get_count () const
 Returns the total number of BufferContexts currently assigned to this tracker. More...
 
BufferContextget_first ()
 Returns the first BufferContext object stored in the tracker. More...
 
size_t get_total_size () const
 Returns the total number of bytes represented by the BufferContexts currently assigned to this tracker. More...
 
void take_from (BufferContextChain &other)
 Moves all of the BufferContexts from the other tracker onto this one. More...
 
void write (ostream &out, int indent_level) const
 

Friends

class BufferContext
 

Detailed Description

This class maintains a linked list of BufferContexts that might be allocated on the graphics card in some context.

There is a different BufferContextChain for resident textures, active textures, evicted textures, etc.

The primary purpose of this class is to facilitate PStats reporting of graphics memory usage.

Definition at line 34 of file bufferContextChain.h.

Member Function Documentation

◆ get_count()

int BufferContextChain::get_count ( ) const
inline

Returns the total number of BufferContexts currently assigned to this tracker.

Definition at line 57 of file bufferContextChain.I.

Referenced by get_total_size(), and BufferResidencyTracker::set_levels().

◆ get_first()

BufferContext * BufferContextChain::get_first ( )

Returns the first BufferContext object stored in the tracker.

You can walk through the entire list of objects stored on the tracker by calling get_next() on each returned object, until the return value is NULL.

Definition at line 29 of file bufferContextChain.cxx.

References take_from().

Referenced by BufferResidencyTracker::set_levels().

◆ get_total_size()

size_t BufferContextChain::get_total_size ( ) const
inline

Returns the total number of bytes represented by the BufferContexts currently assigned to this tracker.

Definition at line 46 of file bufferContextChain.I.

References get_count().

Referenced by BufferResidencyTracker::end_frame(), and BufferResidencyTracker::set_levels().

◆ take_from()

void BufferContextChain::take_from ( BufferContextChain other)

Moves all of the BufferContexts from the other tracker onto this one.

Definition at line 46 of file bufferContextChain.cxx.

Referenced by get_first(), and BufferResidencyTracker::set_levels().


The documentation for this class was generated from the following files: