Public Types | Public Member Functions | Static Public Member Functions | Public Attributes

mitk::ShaderRepository::Shader::Uniform Class Reference

#include <mitkShaderRepository.h>

List of all members.

Public Types

enum  Type {
  glsl_none, glsl_float, glsl_vec2, glsl_vec3,
  glsl_vec4, glsl_int, glsl_ivec2, glsl_ivec3,
  glsl_ivec4
}
typedef Uniform Self
typedef itk::Object Superclass
typedef itk::SmartPointer< SelfPointer
typedef itk::SmartPointer
< const Self
ConstPointer

Public Member Functions

virtual const char * GetClassName () const
 Uniform ()
 ~Uniform ()
void LoadFromXML (vtkXMLDataElement *e)

Static Public Member Functions

static Pointer New ()

Public Attributes

Type type
std::string name
int defaultInt [4]
float defaultFloat [4]

Detailed Description

Definition at line 57 of file mitkShaderRepository.h.


Member Typedef Documentation

Definition at line 61 of file mitkShaderRepository.h.

Definition at line 61 of file mitkShaderRepository.h.

Definition at line 61 of file mitkShaderRepository.h.

Definition at line 61 of file mitkShaderRepository.h.


Member Enumeration Documentation

Enumerator:
glsl_none 
glsl_float 
glsl_vec2 
glsl_vec3 
glsl_vec4 
glsl_int 
glsl_ivec2 
glsl_ivec3 
glsl_ivec4 

Definition at line 64 of file mitkShaderRepository.h.


Constructor & Destructor Documentation

mitk::ShaderRepository::Shader::Uniform::Uniform (  )

Constructor

Definition at line 180 of file mitkShaderRepository.cpp.

{
}
mitk::ShaderRepository::Shader::Uniform::~Uniform (  )

Destructor

Definition at line 184 of file mitkShaderRepository.cpp.

{
}

Member Function Documentation

virtual const char* mitk::ShaderRepository::Shader::Uniform::GetClassName (  ) const [virtual]
void mitk::ShaderRepository::Shader::Uniform::LoadFromXML ( vtkXMLDataElement *  e )

Definition at line 204 of file mitkShaderRepository.cpp.

References SR_WARN.

{
  //MITK_INFO << "found uniform '" << y->GetAttribute("name") << "' type=" << y->GetAttribute("type");// << " default=" << y->GetAttribute("value");

  name = y->GetAttribute("name");

  const char *sType=y->GetAttribute("type");

  if(!strcmp(sType,"float"))
    type=glsl_float;
  else if(!strcmp(sType,"vec2"))
    type=glsl_vec2;
  else if(!strcmp(sType,"vec3"))
    type=glsl_vec3;
  else if(!strcmp(sType,"vec4"))
    type=glsl_vec4;
  else if(!strcmp(sType,"int"))
    type=glsl_int;
  else if(!strcmp(sType,"ivec2"))
    type=glsl_ivec2;
  else if(!strcmp(sType,"ivec3"))
    type=glsl_ivec3;
  else if(!strcmp(sType,"ivec4"))
    type=glsl_ivec4;
  else
  {
    type=glsl_none;
    SR_WARN << "unknown type for uniform '" << name << "'" ;
  }


  defaultFloat[0]=defaultFloat[1]=defaultFloat[2]=defaultFloat[3]=0;

                                     /*
  const char *sDefault=y->GetAttribute("value");

  switch(type)
  {
    case glsl_float:
      sscanf(sDefault,"%f",&defaultFloat[0]);
      break;

    case glsl_vec2:
      sscanf(sDefault,"%f %f",&defaultFloat[0],&defaultFloat[1]);
      break;

    case glsl_vec3:
      sscanf(sDefault,"%f %f %f",&defaultFloat[0],&defaultFloat[1],&defaultFloat[2]);
      break;

    case glsl_vec4:
      sscanf(sDefault,"%f %f %f %f",&defaultFloat[0],&defaultFloat[1],&defaultFloat[2],&defaultFloat[3]);
      break;
  }           */
}
static Pointer mitk::ShaderRepository::Shader::Uniform::New (  ) [static]

Member Data Documentation

Definition at line 91 of file mitkShaderRepository.h.

Definition at line 90 of file mitkShaderRepository.h.

Definition at line 88 of file mitkShaderRepository.h.

Definition at line 87 of file mitkShaderRepository.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines