Workspace 6.21.5
Classes | Namespaces | Macros
shaderimplementationfactorytraits.h File Reference
#include <QString>
#include "shaderimplementationfactory.h"
Include dependency graph for shaderimplementationfactorytraits.h:
This graph shows which files directly or indirectly include this file:

Classes

class  ShaderImplementationFactoryTraits< T >
 Traits class for shaderimpls of type T. More...
 

Namespaces

namespace  CSIRO
 Top level namespace for all Workspace code.
 
namespace  CSIRO::Application
 Application-level functionality for all workspace applications.
 
namespace  CSIRO::Rendering
 Rendering of meshed models.
 

Macros

#define DECLARE_SHADERIMPLEMENTATION_FACTORY(T, WORKSPACE_EXPORT_SYMBOL)
 

Macro Definition Documentation

◆ DECLARE_SHADERIMPLEMENTATION_FACTORY

#define DECLARE_SHADERIMPLEMENTATION_FACTORY (   T,
  WORKSPACE_EXPORT_SYMBOL 
)
Value:
namespace CSIRO \
{ \
namespace Rendering \
{ \
template<> \
WORKSPACE_EXPORT_SYMBOL const ShaderImplementationFactory& ShaderImplementationFactoryTraits<T>::getInstance(); \
template<> \
WORKSPACE_EXPORT_SYMBOL \
T* \
ShaderImplementationFactoryTraits<T>::create(Shader&); \
} \
}
static const ShaderImplementationFactory & getInstance()
Top level namespace for all Workspace code.
Definition: applicationsupportplugin.cpp:32

This macro is analogous to the DECLARE_WORKSPACE_OPERATION_FACTORY macro. See its detailed description for why we also need a similar macro for shaderimpl factories.