Panda3D

Public Member Functions | Static Public Member Functions | Friends | List of all members
SamplerContext Class Reference

This is a special class object that holds a handle to the sampler state object given by the graphics back-end for a particular combination of texture sampling settings. More...

`#include "samplerContext.h"`

Inheritance diagram for SamplerContext:

## Public Member Functions
| SamplerContext (const SamplerState &sampler)
virtual TypeHandle | force_init_type ()
virtual TypeHandle | get_type () const
virtual void | output (std::ostream &out) const
virtual void | write (std::ostream &out, int indent_level) const
Public Member Functions inherited from TypedObject
| TypedObject (const TypedObject &copy)=default
TypedObject * | as_typed_object ()
| Returns the object, upcast (if necessary) to a TypedObject pointer. More...
const TypedObject * | as_typed_object () const
| Returns the object, upcast (if necessary) to a TypedObject pointer. More...
int | get_best_parent_from_Set (const std::set< int > &) const
int | get_type_index () const
| Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
bool | is_exact_type (TypeHandle handle) const
| Returns true if the current object is the indicated type exactly. More...
bool | is_of_type (TypeHandle handle) const
| Returns true if the current object is or derives from the indicated type. More...
TypedObject & | operator= (const TypedObject &copy)=default
Public Member Functions inherited from MemoryBase
void | operator delete (void *, void *)
void | operator delete (void *ptr)
void | operator delete[] (void *, void *)
void | operator delete[] (void *ptr)
void * | operator new (size_t size)
void * | operator new (size_t size, void *ptr)
void * | operator new[] (size_t size)
void * | operator new[] (size_t size, void *ptr)
Public Member Functions inherited from SimpleLruPage
| SimpleLruPage (const SimpleLruPage &copy)
| SimpleLruPage (size_t lru_size)
void | dequeue_lru ()
| Removes the page from its SimpleLru. More...
void | enqueue_lru (SimpleLru *lru)
| Adds the page to the LRU for the first time, or marks it recently-accessed if it has already been added. More...
virtual void | evict_lru ()
| Evicts the page from the LRU. More...
SimpleLru * | get_lru () const
| Returns the LRU that manages this page, or NULL if it is not currently managed by any LRU. More...
size_t | get_lru_size () const
| Returns the size of this page as reported to the LRU, presumably in bytes. More...
void | mark_used_lru () const
| To be called when the page is used; this will move it to the tail of the SimpleLru queue it is already on. More...
void | mark_used_lru (SimpleLru *lru)
| To be called when the page is used; this will move it to the tail of the specified SimpleLru queue. More...
void | operator= (const SimpleLruPage &copy)
void | set_lru_size (size_t lru_size)
| Specifies the size of this page, presumably in bytes, although any unit is possible. More...

## Static Public Member Functions
static TypeHandle | get_class_type ()
static void | init_type ()
Static Public Member Functions inherited from SavedContext
static TypeHandle | get_class_type ()
static void | init_type ()
Static Public Member Functions inherited from TypedObject
static TypeHandle | get_class_type ()
static void | init_type ()
| This function is declared non-inline to work around a compiler bug in g++ 2.96. More...

## Friends
class | PreparedGraphicsObjects

## Additional Inherited Members
Public Attributes inherited from TypedObject
| get_type

## Detailed Description

This is a special class object that holds a handle to the sampler state object given by the graphics back-end for a particular combination of texture sampling settings.

Some graphics back-ends (like OpenGL) use mutable sampler objects, whereas others (Direct3D 10+) use immutable ones. In Panda3D, each unique sampler state has its own SamplerContext, which simplifies the implementation and makes redundant sampler objects impossible.

Definition at line 34 of file samplerContext.h.

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

- panda/src/gobj/samplerContext.h
- panda/src/gobj/samplerContext.cxx
- panda/src/gobj/samplerContext.I