blob: da32d47486bce5bf159da00756b12ff3407b7c51 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
//
// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// DisplayImpl.cpp: Implementation methods of egl::Display
#include "libANGLE/renderer/DisplayImpl.h"
#include "libANGLE/Display.h"
#include "libANGLE/Surface.h"
namespace rx
{
DisplayImpl::DisplayImpl(const egl::DisplayState &state)
: mState(state), mExtensionsInitialized(false), mCapsInitialized(false), mBlobCache(nullptr)
{}
DisplayImpl::~DisplayImpl()
{
ASSERT(mState.surfaceSet.empty());
}
const egl::DisplayExtensions &DisplayImpl::getExtensions() const
{
if (!mExtensionsInitialized)
{
generateExtensions(&mExtensions);
mExtensionsInitialized = true;
}
return mExtensions;
}
egl::Error DisplayImpl::validateClientBuffer(const egl::Config *configuration,
EGLenum buftype,
EGLClientBuffer clientBuffer,
const egl::AttributeMap &attribs) const
{
UNREACHABLE();
return egl::EglBadDisplay() << "DisplayImpl::validateClientBuffer unimplemented.";
}
egl::Error DisplayImpl::validateImageClientBuffer(const gl::Context *context,
EGLenum target,
EGLClientBuffer clientBuffer,
const egl::AttributeMap &attribs) const
{
UNREACHABLE();
return egl::EglBadDisplay() << "DisplayImpl::validateImageClientBuffer unimplemented.";
}
const egl::Caps &DisplayImpl::getCaps() const
{
if (!mCapsInitialized)
{
generateCaps(&mCaps);
mCapsInitialized = true;
}
return mCaps;
}
} // namespace rx
|