PrintIntervalTrue.cc 4.61 KB
/**
 * PrintIntervalTrue.cc
 *
 *  Created on: Jan 8, 2013
 *      Author: AKKA IS
 */

#include "PrintIntervalTrue.hh"
#include "DownloadLogger.hh"
#include "TimeUtil.hh"
#include "ParamData.hh"

using namespace AMDA::Parameters;
namespace AMDA {
	namespace ParamOutputImpl {
		namespace Download {

PrintIntervalTrue::PrintIntervalTrue(ParamDataIndexInfo pParamDataIndexInfo, std::ofstream  &pCurrentfile) :
	_paramDataIndexInfo(pParamDataIndexInfo),
	_currentfile(pCurrentfile),
	_valCurrent(false)
	{

}

PrintIntervalTrue::~PrintIntervalTrue() {
}

/**
 * @overload VisitorOfParamData::visit(ParamDataScalaireShort *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataScalaireShort* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataScalaireFloat *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataScalaireFloat* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")

}

/**
 * @overload VisitorOfParamData::visit(ParamDataScalaireDouble *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataScalaireDouble* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataScalaireLongDouble *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataScalaireLongDouble* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataScalaireInt *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataScalaireInt* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataLogicalData *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataLogicalData* pParamData) {

	 _valCurrent = false;
	for (unsigned int index = _paramDataIndexInfo._startIndex; index < _paramDataIndexInfo._nbDataToProcess + _paramDataIndexInfo._startIndex; ++index) {
		if(!_valCurrent && pParamData->get(index) == True) {
			_valCurrent = true;
			TimeUtil::formatTimeDateInIso(pParamData->getTime(index), _currentfile);
			_currentfile << " ";
		} else if(_valCurrent && pParamData->get(index) != True) {
			_valCurrent = false;
			TimeUtil::formatTimeDateInIso(pParamData->getTime(index), _currentfile);
		  _currentfile << std::endl;

		}
	}
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab1DShort *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataTab1DShort* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab1DFloat *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataTab1DFloat* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab1DDouble *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataTab1DDouble* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab1DLongDouble *)
 */
void PrintIntervalTrue::visit(
		AMDA::Parameters::ParamDataTab1DLongDouble* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab1DInt *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab1DInt* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab1DLogicalData *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab1DLogicalData* /*pParamData*/) {

	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab2DShort *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab2DShort *) {
	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab2DFloat *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab2DFloat *) {
	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab2DDouble *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab2DDouble *) {
	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab2DLongDouble *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab2DLongDouble *) {
	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab2DInt *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab2DInt *) {
	ERROR_EXCEPTION("Not Implemented!")
}

/**
 * @overload VisitorOfParamData::visit(ParamDataTab2DLogicalData *)
 */
void PrintIntervalTrue::visit(AMDA::Parameters::ParamDataTab2DLogicalData *) {
	ERROR_EXCEPTION("Not Implemented!")
}

} // namespace Download
} // namespace ParamOutputImpl
} /* namespace AMDA */