reafectored stuff and corrected shit to make everything compiling

This commit is contained in:
Johannes Wendel
2018-11-21 10:30:04 +01:00
parent d2379868ec
commit 03dc3c61ce
26 changed files with 183 additions and 144 deletions

View File

@@ -15,18 +15,12 @@ namespace flippR_driver
namespace output
{
using namespace items;
OutputDriver::OutputDriver(std::map<std::string, std::shared_ptr<ISolenoid>> solenoids, std::map<std::string, std::shared_ptr<ILamp>> lamps, std::map<char, std::shared_ptr<IDisplay>> displays, std::map<std::string, std::shared_ptr<ISound>> sounds)
: solenoids(solenoids), lamps(lamps), displays(displays), sounds(sounds)
{}
std::vector<std::shared_ptr<IOutputtItem>> OutputDriver::get_cabinet_items()
{
std::vector<std::shared_ptr<IOutputtItem>> cabinet_items;
boost::copy(this->cabinet_items | boost::adaptors::map_values, std::back_inserter(cabinet_items));
return cabinet_items;
}
std::vector<std::shared_ptr<ISound>> OutputDriver::get_sounds()
{
@@ -46,9 +40,22 @@ std::vector<std::shared_ptr<IDisplay>> OutputDriver::get_displays()
return displays;
}
std::shared_ptr<IOutputtItem> OutputDriver::get_cabinet_item(std::string name)
std::vector<std::shared_ptr<ILamp>> OutputDriver::get_lamps()
{
return this->cabinet_items.find(name)->second;
std::vector<std::shared_ptr<ILamp>> lamps;
boost::copy(this->lamps | boost::adaptors::map_values, std::back_inserter(lamps));
return lamps;
}
std::vector<std::shared_ptr<ISolenoid>> OutputDriver::get_solenoids()
{
std::vector<std::shared_ptr<ISolenoid>> solenoids;
boost::copy(this->solenoids | boost::adaptors::map_values, std::back_inserter(solenoids));
return solenoids;
}
std::shared_ptr<ISound> OutputDriver::get_sound(std::string name)
@@ -61,5 +68,15 @@ std::shared_ptr<IDisplay> OutputDriver::get_display(char number)
return this->displays.find(number)->second;
}
std::shared_ptr<ILamp> OutputDriver::get_lamp(std::string name)
{
return this->lamps.find(name)->second;
}
std::shared_ptr<ISolenoid> OutputDriver::get_solenoid(std::string name)
{
return this->solenoids.find(name)->second;
}
} /* namespace output */
}
}