BodiesAbstract.h 1.23 KB
#ifndef BODIESABSTRACT_H
#define BODIESABSTRACT_H

#include <list>

#include "BodiesRequest.h"
#include "BodiesResult.h"
#include "../Application/Application.h"
#include "../File/FileWriterBodies.h"
#include "../RequestManager/RequestAbstract.h"

using namespace std;
using namespace TREPS::Application;
using namespace TREPS::RequestManager;

namespace TREPS
{
	namespace Bodies
	{
		class BodiesAbstractClass
		{
			public :
				BodiesAbstractClass(RequestAbstractClass *trepsRequest);

				virtual ~BodiesAbstractClass(void) = 0;

				//init request
				bool init(const bool isSc, const t_Time *startTime, const t_Time *endTime);

				//get list of available bodies for this engine
				//virtual t_StringList getBodies(const t_Time *startTime, const t_Time *endTime) = 0;

				//run request
				virtual bool run() = 0;

				//write request result
				bool writeResult(const char *resultPath);

				//get last error message
				string getLastError(void);

			protected :
				ApplicationClass *app;

				RequestAbstractClass *trepsRequest;

				string errorMsg;

				//get source vector list
				//t_VectorList getSrcVectorsList(const char *vectorsDef, const char *srcFrame);

				BodiesRequestClass *request;

				BodiesResultClass *result;
		};
	}
}

#endif