| using System; |
| using System.Threading; |
| using System.Threading.Tasks; |
| namespace OnDeviceAgent.AgentCore |
| { |
|
|
| public sealed class AgentToolContext |
| { |
| public AgentToolContext( |
| CancellationToken cancellationToken, |
| IUnityMainThreadDispatcher dispatcher, |
| ToolApprovalGate approval, |
| ToolTracker tracker, |
| IToolPropertyAccessor properties, |
| IStreamingAssetReader assets, |
| Action<string> log, |
| bool approvalEnabledGlobally, |
| Func<string, Task<bool>> requestApproval) |
| { |
| CancellationToken = cancellationToken; |
| Dispatcher = dispatcher; |
| Approval = approval; |
| Tracker = tracker; |
| Properties = properties; |
| Assets = assets; |
| Log = log; |
| ApprovalEnabledGlobally = approvalEnabledGlobally; |
| RequestApproval = requestApproval; |
| } |
|
|
| public CancellationToken CancellationToken { get; } |
|
|
| public IUnityMainThreadDispatcher Dispatcher { get; } |
|
|
| public ToolApprovalGate Approval { get; } |
|
|
| public ToolTracker Tracker { get; } |
|
|
| public IToolPropertyAccessor Properties { get; } |
|
|
| public IStreamingAssetReader Assets { get; } |
|
|
| public Action<string> Log { get; } |
|
|
| public bool ApprovalEnabledGlobally { get; } |
|
|
| public Func<string, Task<bool>> RequestApproval { get; } |
| } |
| } |
|
|