#ifndef INC_vrml97lexer_hpp_
#define INC_vrml97lexer_hpp_

#include <antlr/config.hpp>
/* $ANTLR 2.7.7 (20070104): "vrml97.g" -> "vrml97lexer.hpp"$ */
#include <antlr/CommonToken.hpp>
#include <antlr/InputBuffer.hpp>
#include <antlr/BitSet.hpp>
#include "vrml97parserTokenTypes.hpp"
#include <antlr/CharScanner.hpp>
#line 2 "vrml97.g"

#include <xdkwrl/fieldtypes/sfbool.h>
#include <xdkwrl/fieldtypes/sfcolor.h>
#include <xdkwrl/fieldtypes/sffloat.h>
#include <xdkwrl/fieldtypes/sfimage.h>
#include <xdkwrl/fieldtypes/sfint32.h>
#include <xdkwrl/fieldtypes/sfnode.h>
#include <xdkwrl/fieldtypes/sfrotation.h>
#include <xdkwrl/fieldtypes/sfstring.h>
#include <xdkwrl/fieldtypes/sftime.h>
#include <xdkwrl/fieldtypes/sfvec2f.h>
#include <xdkwrl/fieldtypes/sfvec3f.h>
#include <xdkwrl/fieldtypes/mfcolor.h>
#include <xdkwrl/fieldtypes/mffloat.h>
#include <xdkwrl/fieldtypes/mfint32.h>
#include <xdkwrl/fieldtypes/mfnode.h>
#include <xdkwrl/fieldtypes/mfrotation.h>
#include <xdkwrl/fieldtypes/mfstring.h>
#include <xdkwrl/fieldtypes/mftime.h>
#include <xdkwrl/fieldtypes/mfvec2f.h>
#include <xdkwrl/fieldtypes/mfvec3f.h>
#include <xdkwrl/proto.h>
#include <xdkwrl/script.h>
#include <iostream>
#include <string>
#include <stack>
#include <map>

#line 41 "vrml97lexer.hpp"
class CUSTOM_API vrml97lexer : public ANTLR_USE_NAMESPACE(antlr)CharScanner, public vrml97parserTokenTypes
{
#line 1 "vrml97.g"
#line 45 "vrml97lexer.hpp"
private:
	void initLiterals();
public:
	bool getCaseSensitiveLiterals() const
	{
		return true;
	}
public:
	vrml97lexer(ANTLR_USE_NAMESPACE(std)istream& in);
	vrml97lexer(ANTLR_USE_NAMESPACE(antlr)InputBuffer& ib);
	vrml97lexer(const ANTLR_USE_NAMESPACE(antlr)LexerSharedInputState& state);
	ANTLR_USE_NAMESPACE(antlr)RefToken nextToken();
	public: void mLBRACKET(bool _createToken);
	public: void mRBRACKET(bool _createToken);
	public: void mLBRACE(bool _createToken);
	public: void mRBRACE(bool _createToken);
	protected: void mDOT(bool _createToken);
	protected: void mROOTFLOAT(bool _createToken);
	protected: void mNOROOTFLOAT(bool _createToken);
	protected: void mFLOAT(bool _createToken);
	protected: void mABS_INT(bool _createToken);
	protected: void mINT(bool _createToken);
	public: void mFLOAT_OR_INT_OR_DOT(bool _createToken);
	protected: void mESC(bool _createToken);
	protected: void mSTRING_INTERNAL(bool _createToken);
	public: void mSTRING(bool _createToken);
	protected: void mIdFirstChar(bool _createToken);
	protected: void mIdRestChar(bool _createToken);
	public: void mId(bool _createToken);
	public: void mWS(bool _createToken);
	protected: void mCOMMENT(bool _createToken);
	protected: void mHEADER(bool _createToken);
	public: void mCOMMENT_OR_HEADER(bool _createToken);
private:
	
	static const unsigned long _tokenSet_0_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_0;
	static const unsigned long _tokenSet_1_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_1;
	static const unsigned long _tokenSet_2_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_2;
	static const unsigned long _tokenSet_3_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_3;
	static const unsigned long _tokenSet_4_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_4;
	static const unsigned long _tokenSet_5_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_5;
	static const unsigned long _tokenSet_6_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_6;
};

#endif /*INC_vrml97lexer_hpp_*/
