2020-11-18 22:56:47 +00:00
|
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
|
// Licensed under the MIT License.
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "IEngine.h"
|
|
|
|
|
|
|
|
|
|
namespace _winml {
|
|
|
|
|
|
|
|
|
|
struct idata {
|
2023-07-26 04:56:50 +00:00
|
|
|
virtual ~idata() {}
|
|
|
|
|
|
2020-11-18 22:56:47 +00:00
|
|
|
virtual size_t num_elements() = 0;
|
|
|
|
|
virtual size_t size_in_bytes() = 0;
|
|
|
|
|
virtual size_t num_buffers() = 0;
|
|
|
|
|
virtual std::vector<wss::IBuffer>& buffers() = 0;
|
|
|
|
|
virtual gsl::span<byte> buffer(bool should_sync_buffer) = 0;
|
|
|
|
|
virtual bool flush() = 0;
|
|
|
|
|
virtual void set(size_t data_size, const byte* data) = 0;
|
|
|
|
|
};
|
|
|
|
|
|
2023-07-26 04:56:50 +00:00
|
|
|
} // namespace _winml
|