#include <iostream>
#include <mindManager/mindManager.h>
#include <deviceManager/deviceManager.h>
#include <senseApis/senseApiManager.h>
#include <salmanoff.h>


namespace smo {

void initializeSalmanoff(void)
{
	std::cout << __func__ << ": Entered." << std::endl;

	mind::MindManager::getInstance().initialize();
	sense_api::SenseApiManager::getInstance().initialize();
	device::DeviceManager::getInstance().initialize();
	device::DeviceManager::getInstance().collateAllDapSpecs();
	device::DeviceManager::getInstance().parseAllDapSpecs();
	std::cout << device::DeviceManager::stringifyDeviceSpecs() << std::endl;
}

void shutdownSalmanoff(void)
{
	std::cout << __func__ << ": Entered." << std::endl;
	device::DeviceManager::getInstance().finalize();
	sense_api::SenseApiManager::getInstance().finalize();
	mind::MindManager::getInstance().finalize();
}

} // namespace smo
