using System;
using System.Collections;
using System.Collections.Generic;
using ObjectScripts;
using UnityEngine;
using CSVReader;
public abstract class AbstractObjectHandler : MonoBehaviour
{
///
/// Dicitionary to keep track of each GameObject corresponding to input.ID
///
public Dictionary ObjectDictionary;
///
/// Prefab EventType Human
///
[SerializeField] public GameObject prefabHuman;
///
/// Prefab EventType Car
///
[SerializeField] public GameObject prefabCar;
///
/// Prefab EventType Truck
///
[SerializeField] public GameObject prefabTruck;
///
/// Prefab EventType Bike
///
[SerializeField] public GameObject prefabBike;
///
/// Manager to get inputs to handle
///
[SerializeField] public AbstractManager ManagerObject;
///
/// UpdateRat: velocity/managerUpdateRate
///
public float UpdateRate { get; set; }
///
/// Velocity of the simulation/Game
///
public float GameVelocity { get; set; }
///
/// Simulation runs forward
///
public bool Forward { get; set; }
///
/// Method to handle the Input given by the Manager
///
public abstract void Handle(List InputBuffer);
///
/// Method to start the delete process
///
public abstract void DeleteObject(DataObject dataObject);
///
/// Deletes every Object
///
public abstract void ClearAll();
}