Remove CopyTensorsEx; keep CreateTensor(+offset) approach for sub-buffer views
CopyTensorsEx is superseded by CreateTensorWithDataAsOrtValueWithByteOffset:
callers now create an offset tensor view once and pass it to regular CopyTensors.
Changes:
- Remove OrtApi::CopyTensorsEx entry and vtable slot (offset 417 freed);
CreateTensorWithDataAsOrtValueWithByteOffset moves to offset 417
- Remove CopyTensorsEx forward decl from ort_apis.h and both implementations
(full build and minimal-build stub) from onnxruntime_c_api.cc
- Remove source_offsets/destination_offsets/sizes params from
OrtDataTransferImpl::CopyTensors in onnxruntime_ep_c_api.h (EP C API)
- Revert plugin_data_transfer.cc to not propagate offset arrays
- Revert framework IDataTransfer: remove CopyTensor/CopyTensorAsync overloads
with offset params; remove source_offset/destination_offset/size from SrcDstPair;
simplify CopyTensors loop back to original; remove CPUDataTransfer offset overload
- Revert WebGPU DataTransfer: remove CopyTensor(+offsets) overload; fold
ByteOffset recovery into single CopyTensor(src,dst) which uses tensor's own
ByteOffset() to recover the base WGPUBuffer and pass correct offsets to
BufferManager::MemCpy/Upload/Download (buffer_manager offsets kept)
- Revert webgpu_provider_factory.cc CopyTensorsImpl to simpler signature and
call CopyTensor(src,dst) directly
- Revert example EP test files (ep_data_transfer.h/.cc x2, utils.h)