#ifndef HM_MANAGER_H
#define HM_MANAGER_H

#include <vector>
#include <string>
#include "device.h"

namespace hm {
    void StartManager();

    bool managerGetFaceDevices(std::vector<std::string> &devices, std::string &msg);

    bool managerGetFaceDeviceUsers(const std::string &seq, std::vector<std::string> &user, std::string &msg);

    bool managerInsertFaceDeviceUser(const std::string &seq, const User &user, std::string &msg);

    bool managerRemoveFaceDeviceUser(const std::string &seq, const std::string &uid, std::string &msg);

    bool managerGetCarDevices(std::vector<std::string> &devices, std::string &msg);

    bool managerGetCarDeviceWoBList(
            const std::string &seq, const bool &isBlack, std::vector<std::string> &list, std::string &msg
    );

    bool managerInsertCarDeviceWoBList(
            const std::string &seq, const bool &isBlack, std::vector<Plate> &list, std::string &msg
    );

    bool managerRemoveCarDeviceWoBList(
            const std::string &seq, const bool &isBlack, std::vector<int> &cids, std::string &msg
    );

    void StopManager();
}


#endif //HM_MANAGER_H
