//---------------------------------------------------------------------------- // EgalTech 2013-2013 //---------------------------------------------------------------------------- // File : EgnCmdParser.h Data : 25.11.13 Versione : 1.3a1 // Contenuto : Dichiarazione della interfaccia ICmdParser. // // // // Modifiche : 25.11.13 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include class ICmdExecutor ; class ILogger ; //----------------------- Macro per import/export ----------------------------- #undef EGN_EXPORT #if defined( I_AM_EGN) // da definirsi solo nella DLL #define EGN_EXPORT __declspec( dllexport) #else #define EGN_EXPORT __declspec( dllimport) #endif //---------------------------------------------------------------------------- class __declspec( novtable) ICmdParser { public : virtual ~ICmdParser( void) {} virtual bool Init( ICmdExecutor* pCmdExec, int nLev = 0) = 0 ; virtual bool Run( const std::string& sCmdFile) = 0 ; virtual bool AddVariable( const std::string& sName, int nVal) = 0 ; virtual bool SetVariable( const std::string& sName, int nVal) = 0 ; virtual bool GetVariable( const std::string& sName, int& nVal) = 0 ; virtual bool EraseVariable( const std::string& sName) = 0 ; } ; //----------------------------------------------------------------------------- EGN_EXPORT ICmdParser* CreateCmdParser( void) ;