using UnityEngine;

namespace FishROV.AvoidanceBenchmark
{
    public interface IAvoidanceAdapter
    {
        string Name { get; }
        bool IsAvailable { get; }
        string Status { get; }
        void Initialize(AvoidanceBenchmarkConfig config);
        BenchmarkAgent CreateAgent(BenchmarkAgentSpawnInfo spawnInfo, Transform parent);
        void SetPreferredVelocity(BenchmarkAgent agent, Vector3 preferredVelocity);
        void SetTarget(BenchmarkAgent agent, Vector3 target);
        void Tick(float deltaTime);
        void Dispose();
    }
}
