FileWriterAbstract.h 1004 Bytes
#ifndef FILEWRITERABSTRACT_H
#define FILEWRITERABSTRACT_H

#include "../Common/TREPSTypes.h"
#include "../Application/Application.h"
#include "../DataRecord/DataRecordList.h"

using namespace TREPS::Common;
using namespace TREPS::Application;
using namespace TREPS::DataRecord;

namespace TREPS
{
	namespace File
	{
		class FileWriterAbstractClass
		{
			public :
				FileWriterAbstractClass(void);

				virtual ~FileWriterAbstractClass(void) = 0;

				//file creation + write general attributes
				virtual bool init(const char *file_path, const map<string,string> *attributes) = 0;

				//write fields and data
				virtual bool writeData(const DataRecordListClass *data, t_TimeFormat timeFormat,
							const char *timePattern, const t_FieldList *fields) = 0;

				//save the file
				virtual bool save(void) = 0;

				//close the file
				virtual bool close(void) = 0;

				//test if the file is opened
				virtual bool isOpened(void) = 0;

			protected :
				ApplicationClass *app;
		};
	}
}

#endif