from annotation cimport Detection


cdef class InferenceEngine:
    cdef public int max_batch_size
    cdef public str engine_name
    cdef tuple get_input_shape(self)
    cdef run(self, input_data)
    cdef preprocess(self, list frames)
    cdef list postprocess(self, output, object ai_config)
    cdef list remove_overlapping(self, list[Detection] detections, float threshold)
    cpdef list process_frames(self, list frames, object ai_config)
