#pragma once

#include <unordered_map>
#include <vector>
#include <memory>

#include <Indoor/geo/Point3.h>

#include "FtmKalman.h"
#include <Indoor/sensors/radio/WiFiMeasurements.h>
#include <Indoor/sensors/radio/model/LogDistanceModel.h>


enum class SensorMode
{
    FTM,
    RSSI
};

double ftmEval(SensorMode UseSensor,
               const Timestamp& currentTime,
               const Point3& particlePos,
               const std::vector<WiFiMeasurement>& measurements,
                     std::shared_ptr<std::unordered_map<MACAddress, Kalman>> ftmKalmanFilters);
