2020-11-18 22:56:47 +00:00
|
|
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
|
|
// Licensed under the MIT License.
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
|
|
#include "robuffer.h"
|
|
|
|
|
|
#include "winrt/Windows.Storage.Streams.h"
|
|
|
|
|
|
|
|
|
|
|
|
namespace _winml {
|
|
|
|
|
|
|
2023-07-26 04:56:50 +00:00
|
|
|
|
class vector_backed_buffer
|
|
|
|
|
|
: public winrt::implements<vector_backed_buffer, wss::IBuffer, Windows::Storage::Streams::IBufferByteAccess> {
|
2020-11-18 22:56:47 +00:00
|
|
|
|
public:
|
|
|
|
|
|
vector_backed_buffer(size_t size);
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t Capacity() const;
|
|
|
|
|
|
uint32_t Length() const;
|
|
|
|
|
|
void Length(uint32_t /*value*/);
|
|
|
|
|
|
|
|
|
|
|
|
STDMETHOD(Buffer)(uint8_t** value);
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
std::vector<BYTE> buffer_;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
2023-07-26 04:56:50 +00:00
|
|
|
|
} // namespace _winml
|