Loading...
Searching...
No Matches
contextArena.h
1
//
2
// Copyright 2020 Pixar
3
//
4
// Licensed under the terms set forth in the LICENSE.txt file available at
5
// https://openusd.org/license.
6
//
7
#ifndef PXR_IMAGING_HGIGL_CONTEXT_ARENA_H
8
#define PXR_IMAGING_HGIGL_CONTEXT_ARENA_H
9
10
#include "
pxr/pxr.h
"
11
#include "pxr/imaging/hgi/handle.h"
12
#include "pxr/imaging/hgiGL/api.h"
13
14
#include <ostream>
15
#include <memory>
16
17
PXR_NAMESPACE_OPEN_SCOPE
18
19
struct
HgiGraphicsCmdsDesc
;
20
class
FramebufferCacheItem;
21
30
class
HgiGLContextArena
final
31
{
32
public
:
33
HGIGL_API
34
~HgiGLContextArena
();
35
36
void
InvalidateCacheItem(std::shared_ptr<FramebufferCacheItem>& item);
37
38
private
:
39
friend
class
HgiGL
;
40
friend
class
HgiGLDevice
;
41
42
HGIGL_API
43
HgiGLContextArena
();
44
46
uint32_t _AcquireFramebuffer(
47
HgiGraphicsCmdsDesc
const
& desc,
48
bool
resolved =
false
);
49
50
HgiGLContextArena
& operator=(
const
HgiGLContextArena
&) =
delete
;
51
HgiGLContextArena
(
const
HgiGLContextArena
&) =
delete
;
52
53
friend
std::ostream&
operator<<
(
54
std::ostream& out,
55
const
HgiGLContextArena
& arena);
56
57
// Implementation detail.
58
class
_FramebufferCache;
59
std::unique_ptr<_FramebufferCache> _framebufferCache;
60
};
61
62
using
HgiGLContextArenaHandle
=
HgiHandle<HgiGLContextArena>
;
63
64
PXR_NAMESPACE_CLOSE_SCOPE
65
66
#endif
HgiGLContextArena
Represents an arena for the HgiGL instance to manage container object resources that are tied to the ...
Definition
contextArena.h:31
HgiGLDevice
OpenGL implementation of GPU device.
Definition
device.h:29
HgiGL
OpenGL implementation of the Hydra Graphics Interface.
Definition
hgi.h:55
HgiHandle
Handle that contains a hgi object and unique id.
Definition
handle.h:33
operator<<
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
pxr.h
HgiGraphicsCmdsDesc
Describes the properties to begin a HgiGraphicsCmds.
Definition
graphicsCmdsDesc.h:45
pxr
imaging
hgiGL
contextArena.h
© Copyright 2026, Pixar Animation Studios. |
Terms of Use
| Generated on Tue Sep 8 2026 12:32:24 by
1.12.0