Adds output factory-prototypes

This commit is contained in:
Johannes Wendel
2019-12-28 16:39:14 +01:00
parent 89e622381a
commit b558aebe87
14 changed files with 289 additions and 7 deletions

View File

@@ -0,0 +1,27 @@
/*
* DisplayFactory.cpp
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include "DisplayFactory.h"
namespace flippR_driver
{
namespace output
{
DisplayFactory::DisplayFactory(nlohmann::json &object) : Factory(object)
{
}
std::map<std::string, std::shared_ptr<items::Item>> DisplayFactory::getItemMap()
{
return std::map<std::string, std::shared_ptr<items::Item>>();
}
}
}

View File

@@ -0,0 +1,30 @@
/*
* DisplayFactory.h
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#ifndef FLIPPR_DRIVER_DISPLAYFACTORY_H
#define FLIPPR_DRIVER_DISPLAYFACTORY_H
#include "Factory.h"
namespace flippR_driver
{
namespace output
{
class DisplayFactory : Factory
{
public:
explicit DisplayFactory(nlohmann::json & object);
std::map<std::string, std::shared_ptr<items::Item>> getItemMap() override;
};
}
}
#endif //FLIPPR_DRIVER_DISPLAYFACTORY_H

View File

@@ -0,0 +1,22 @@
/*
* Factory.cpp
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include "Factory.h"
namespace flippR_driver
{
namespace output
{
Factory::Factory(nlohmann::json &object) :
object{object}
{
}
}
}

View File

@@ -0,0 +1,35 @@
/*
* Factory.h
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#ifndef FLIPPR_DRIVER_FACTORY_H
#define FLIPPR_DRIVER_FACTORY_H
#include "utility/config.h"
#include "json/json.hpp"
#include "output/items/Item.h"
namespace flippR_driver
{
namespace output
{
class Factory
{
public:
Factory(nlohmann::json &object);
virtual std::map<std::string, std::shared_ptr<items::Item>> getItemMap() = 0;
protected:
nlohmann::json object;
};
}
}
#endif //FLIPPR_DRIVER_FACTORY_H

View File

@@ -0,0 +1,26 @@
/*
* FlipperFactory.cpp
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include "FlipperFactory.h"
namespace flippR_driver
{
namespace output
{
FlipperFactory::FlipperFactory(nlohmann::json &object) : Factory(object)
{
}
std::map<std::string, std::shared_ptr<items::Item>> FlipperFactory::getItemMap()
{
return std::map<std::string, std::shared_ptr<items::Item>>();
}
}
}

View File

@@ -0,0 +1,31 @@
/*
* FlipperFactory.h
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#ifndef FLIPPR_DRIVER_FLIPPERFACTORY_H
#define FLIPPR_DRIVER_FLIPPERFACTORY_H
#include "Factory.h"
#include <string>
namespace flippR_driver
{
namespace output
{
class FlipperFactory : Factory
{
public:
explicit FlipperFactory(nlohmann::json & object);
std::map <std::string, std::shared_ptr<items::Item>> getItemMap() override;
};
}
}
#endif //FLIPPR_DRIVER_FLIPPERFACTORY_H

View File

@@ -0,0 +1,27 @@
/*
* LampFactory.cpp
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include "LampFactory.h"
namespace flippR_driver
{
namespace output
{
LampFactory::LampFactory(nlohmann::json &object) : Factory(object)
{
}
std::map<std::string, std::shared_ptr<items::Item>> LampFactory::getItemMap()
{
return std::map<std::string, std::shared_ptr<items::Item>>();
}
}
}

View File

@@ -0,0 +1,29 @@
/*
* LampFactory.h
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#ifndef FLIPPR_DRIVER_LAMPFACTORY_H
#define FLIPPR_DRIVER_LAMPFACTORY_H
#include "Factory.h"
namespace flippR_driver
{
namespace output
{
class LampFactory : Factory
{
public:
explicit LampFactory(nlohmann::json & object);
std::map<std::string, std::shared_ptr<items::Item>> getItemMap() override;
};
}
}
#endif //FLIPPR_DRIVER_LAMPFACTORY_H

View File

@@ -0,0 +1,24 @@
/*
* SoundFactory.cpp
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include "SoundFactory.h"
namespace flippR_driver
{
namespace output
{
SoundFactory::SoundFactory(nlohmann::json &object) : Factory(object)
{
}
std::map<std::string, std::shared_ptr<items::Item>> SoundFactory::getItemMap()
{
return std::map<std::string, std::shared_ptr<items::Item>>();
}
}
}

View File

@@ -0,0 +1,29 @@
/*
* SoundFactory.h
*
* Created on: December 28, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#ifndef FLIPPR_DRIVER_SOUNDFACTORY_H
#define FLIPPR_DRIVER_SOUNDFACTORY_H
#include "Factory.h"
namespace flippR_driver
{
namespace output
{
class SoundFactory : Factory
{
public:
explicit SoundFactory(nlohmann::json & object);
std::map<std::string, std::shared_ptr<items::Item>> getItemMap() override;
};
}
}
#endif //FLIPPR_DRIVER_SOUNDFACTORY_H