/* Blinker
Copyright 2011 Stefan Schuermans <stefan@blinkenarea.org>
Copyleft GNU public license - http://www.gnu.org/copyleft/gpl.html
a blinkenarea.org project */
#include <iostream>
#include <stdlib.h>
#include <string>
#include <BlinkenLib/BlinkenFrame.h>
#include "CallMgr.h"
#include "Directory.h"
#include "File.h"
#include "Module.h"
#include "Scaler.h"
#include "SettingFile.h"
#include "Size.h"
#include "StreamMgr.h"
#include "StreamRecv.h"
namespace Blinker {
/**
* @brief constructor
* @param[in] callMgr callback manager
* @param[in] streamMgr stream manager
* @param[in] dirBase base directory
*/
Scaler::Scaler(CallMgr &callMgr, StreamMgr &streamMgr,
const Directory &dirBase):
Module(callMgr, streamMgr, dirBase),
m_fileInStream(dirBase.getFile("instream")),
m_fileSize(dirBase.getFile("size")),
m_fileOutStream(dirBase.getFile("outstream")),
m_pInStream(NULL),
m_haveSize(false),
m_pOutStream(NULL)
{
// set up
getInStream();
getSize();
getOutStream();
}
/// virtual destructor
Scaler::~Scaler()
{
// clean up
releaseInStream();
releaseOutStream();