45 lines
1.4 KiB
C++
45 lines
1.4 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2013-2013
|
|
//----------------------------------------------------------------------------
|
|
// File : EgnScan.h Data : 20.11.13 Versione : 1.3a1
|
|
// Contenuto : Dichiarazione della classe CScan.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 20.11.13 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include <string>
|
|
#include <fstream>
|
|
|
|
//----------------------- 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 Scanner
|
|
{
|
|
public :
|
|
EGN_EXPORT Scanner( void) ;
|
|
EGN_EXPORT ~Scanner( void) ;
|
|
EGN_EXPORT bool Init( const std::string& sCmdFile, const char* szRemInit = NULL) ;
|
|
EGN_EXPORT bool Terminate( void) ;
|
|
EGN_EXPORT bool GetLine( std::string& sLine) ;
|
|
EGN_EXPORT int GetCurrLineNbr( void) { return m_nLineNbr ; }
|
|
EGN_EXPORT const std::string& GetFilePath( void) { return m_sFName ; }
|
|
|
|
private :
|
|
std::ifstream m_InFile ;
|
|
std::string m_sFName ;
|
|
std::string m_sRemInit ;
|
|
int m_nLineNbr ;
|
|
} ;
|