onnxruntime/winml/adapter/DmlOrtSessionBuilder.h
Paul McDaniel c615002f5d
Layer dev paulm (#2533)
* commetns for dml graph transformer
fixed ort value passing using the allocatir info

* fixed and coded maps and sequences across the abi

* cleaned up w4's
cleaned up the model info ABI
delayload directml.dll from winml

* cleaned up namepsace aliases.
renamed _winmla to winmla
this was good PR feedback from tiago a while back.

* moved files from inc to lib\api.core
cleaned up some of the cmake

* staged changes
2019-12-03 15:31:22 -08:00

34 lines
No EOL
1,001 B
C++

// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
#pragma once
#include "WinMLAdapter.h"
namespace Windows::AI::MachineLearning::Adapter {
class DmlOrtSessionBuilder : public Microsoft::WRL::RuntimeClass <
Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>,
winmla::IOrtSessionBuilder> {
public:
DmlOrtSessionBuilder(ID3D12Device* device, ID3D12CommandQueue* queue);
HRESULT STDMETHODCALLTYPE CreateSessionOptions(
OrtSessionOptions** options) override;
HRESULT STDMETHODCALLTYPE CreateSession(
OrtSessionOptions* options,
winmla::IInferenceSession** p_session,
onnxruntime::IExecutionProvider** pp_provider) override;
HRESULT STDMETHODCALLTYPE Initialize(
winmla::IInferenceSession* p_session,
onnxruntime::IExecutionProvider* p_provider) override;
private:
winrt::com_ptr<ID3D12Device> device_;
winrt::com_ptr<ID3D12CommandQueue> queue_;
};
} // namespace Windows::AI::MachineLearning::Adapter