Hash :
ed7c31c7
        
        Author :
  
        
        Date :
2023-11-29T18:31:43
        
      
OpenCL: Replace error-passing APIs to use angle::Result Part 2 of Issue 8435: This part replaces existing error handling for all CL APIs that return CL objects to now use "angle::Result". Bug: angleproject:8435 Change-Id: I75e41c7cbb06220cabec7cc9f9cb5107a3b6bd6d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5075773 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
//
// Copyright 2021 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.
//
// CLBuffer.cpp: Implements the cl::Buffer class.
#include "libANGLE/CLBuffer.h"
namespace cl
{
cl_mem Buffer::createSubBuffer(MemFlags flags,
                               cl_buffer_create_type createType,
                               const void *createInfo)
{
    const cl_buffer_region ®ion = *static_cast<const cl_buffer_region *>(createInfo);
    return Object::Create<Buffer>(*this, flags, region.origin, region.size);
}
Buffer::~Buffer() = default;
Buffer::Buffer(Context &context, PropArray &&properties, MemFlags flags, size_t size, void *hostPtr)
    : Memory(*this, context, std::move(properties), flags, size, hostPtr)
{}
Buffer::Buffer(Buffer &parent, MemFlags flags, size_t offset, size_t size)
    : Memory(*this, parent, flags, offset, size)
{}
}  // namespace cl