X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fglsl%2Fpreprocessor.h;fp=source%2Fglsl%2Fpreprocessor.h;h=969703016ec52519b20e61cf2963363c5d09f564;hb=d3ceb2186dc79130508093b3d0c944771a53534f;hp=0000000000000000000000000000000000000000;hpb=47286086863b6009192ffdb3d3471c83211ee943;p=libs%2Fgl.git diff --git a/source/glsl/preprocessor.h b/source/glsl/preprocessor.h new file mode 100644 index 00000000..96970301 --- /dev/null +++ b/source/glsl/preprocessor.h @@ -0,0 +1,37 @@ +#ifndef MSP_GL_SL_PREPROCESSOR_H_ +#define MSP_GL_SL_PREPROCESSOR_H_ + +#include +#include "syntax.h" + +namespace Msp { +namespace GL { +namespace SL { + +class Tokenizer; + +class Preprocessor +{ +public: + sigc::signal signal_version; + sigc::signal signal_stage_change; + +private: + Tokenizer &tokenizer; + +public: + Preprocessor(Tokenizer &); + + void preprocess(); +private: + void preprocess_version(); + void preprocess_pragma(); + void preprocess_pragma_msp(); + void preprocess_stage(); +}; + +} // namespace SL +} // namespace GL +} // namespace Msp + +#endif