Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
|
Convenience wrapper around CPreprocessor. More...
#include <PreprocessorWrapper.h>
Public Types | |
using | IncludeRetrieverCallback = std::function< bool(const CStr &, CStr &out)> |
Public Member Functions | |
CPreprocessorWrapper () | |
CPreprocessorWrapper (const IncludeRetrieverCallback &includeCallback) | |
void | AddDefine (const char *name, const char *value) |
void | AddDefines (const CShaderDefines &defines) |
bool | TestConditional (const CStr &expr) |
CStr | ResolveIncludes (const CStr &source) |
CStr | Preprocess (const CStr &input) |
Static Public Member Functions | |
static void | PyrogenesisShaderError (int iLine, const char *iError, const Ogre::CPreprocessor::Token *iToken) |
Private Attributes | |
Ogre::CPreprocessor | m_Preprocessor |
IncludeRetrieverCallback | m_IncludeCallback |
std::unordered_map< CStr, CStr > | m_IncludeCache |
Convenience wrapper around CPreprocessor.
using CPreprocessorWrapper::IncludeRetrieverCallback = std::function<bool(const CStr&, CStr& out)> |
CPreprocessorWrapper::CPreprocessorWrapper | ( | ) |
CPreprocessorWrapper::CPreprocessorWrapper | ( | const IncludeRetrieverCallback & | includeCallback | ) |
void CPreprocessorWrapper::AddDefine | ( | const char * | name, |
const char * | value | ||
) |
void CPreprocessorWrapper::AddDefines | ( | const CShaderDefines & | defines | ) |
CStr CPreprocessorWrapper::Preprocess | ( | const CStr & | input | ) |
|
static |
CStr CPreprocessorWrapper::ResolveIncludes | ( | const CStr & | source | ) |
bool CPreprocessorWrapper::TestConditional | ( | const CStr & | expr | ) |
|
private |
|
private |
|
private |