engine.h

来自「SYMBIAN S60 2ND列车时刻表软件」· C头文件 代码 · 共 70 行

H
70
字号
#ifndef ENGINE_H_
#define ENGINE_H_
#include <e32base.h>
#include <f32file.h>
#include <s32file.h> //RWriteStream
#include "Province.h"
#include "Station.h"
#include "Train.h"
#include "OTResult.h"
#include "OSResult.h"
#include "TSSResult.h"

class CCnvCharacterSetConverter;
class CMagicTrainAppUi;

class Engine : public CBase
{
public:
	static Engine* NewL(CMagicTrainAppUi* aAppUi);
	static Engine* NewLC(CMagicTrainAppUi* aAppUi);
	~Engine();
private:
	void ConstructL();
	Engine(CMagicTrainAppUi* aAppUi);
	void ConstructFilePathL();
	void ConstructFilePathSubL(RFs& fs,RFileReadStream& rs,TFileName& aFilePath,TFileName& aSubFilePath);
	void ConstructStationL();
	void ConstructTrainL();
	void ConstructTrainDetailL();
	void ConstructPosL();
	void ConvGbk2Uni(CCnvCharacterSetConverter* aConverter,TDesC8& original, TDes& res);
	TBool GetStationName(TInt aStationID,TDes& res);
	
	TInt32 iCTrainIndexPos;
	TInt32 iStationTrainIndexPos;
	TInt32 iStationPos;
	TInt32 iStationTrainPos;
	TInt32 iTrainPos;
	TInt32 iCTrainPos;
	TBuf16<256> iPath;
	TInt iStep;
	CMagicTrainAppUi *iAppUi;
	TFileName iStationFilePath;
	TFileName iTrainFilePath;
	TFileName iTrainLineFilePath;
	TInt	  iStationCount;
	TInt	  iTrainCount;
	TInt	  iTrainLineCount;
public:
	//TBool GetCTrain(const TDesC& aTrainName,TrainWay* trainway);
	//TInt GetTrainStation(const TDesC& aStationName1,const TDesC& aStationName2);
	TBool GetTrainByStation(const TDesC& aStation,RPointerArray<COSResult>* aOSResult);
	
	TBool GetTrainByTrainName(const TDesC& aTrainName,RPointerArray<COTResult>* aOTResult);
	TInt GetTrainByTwoStations(const TDesC& aStationName1,const TDesC& aStationName2,RPointerArray<CTSSResult>* aTssResult);
	
	void GetTrainStationSub(TInt i);
	void CompleteTrainStaion();
	CTrain* GetTrainByTrainID(TInt aTrainID);
	Station* GetStationByStationID(TInt aStationID);
public:
	RPointerArray<Province>* iProvinceArray;
	RPointerArray<Station>* iStationArray;
	RPointerArray<CTrain>* iTrainArray;
	RPointerArray<COTResult>* iTrainDetailArray;
	RPointerArray<COTResult>* iOTResultArray;
	RPointerArray<CTSSResult>* iTSSResultArray;
};
#endif /*ENGINE_H_*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?