#include "vtkUniforms.h" #include "vtkObjectFactory.h" //------------------------------------------------------------------------------ // Return nullptr if no override is supplied. vtkAbstractObjectFactoryNewMacro(vtkUniforms); //------------------------------------------------------------------------------ void vtkUniforms::PrintSelf(ostream& os, vtkIndent indent) { this->Superclass::PrintSelf(os, indent); } std::string vtkUniforms::TupleTypeToString(TupleType tt) { std::string str; switch (tt) { case vtkUniforms::TupleTypeScalar: str = "TupleTypeScalar"; break; case vtkUniforms::TupleTypeVector: str = "TupleTypeVector"; break; case vtkUniforms::TupleTypeMatrix: str = "TupleTypeMatrix"; break; default: str = "TupleTypeInvalid"; break; } return str; } vtkUniforms::TupleType vtkUniforms::StringToTupleType(const std::string& s) { if (s == "TupleTypeScalar") { return vtkUniforms::TupleTypeScalar; } else if (s == "TupleTypeVector") { return vtkUniforms::TupleTypeVector; } else if (s == "TupleTypeMatrix") { return vtkUniforms::TupleTypeMatrix; } return vtkUniforms::TupleTypeInvalid; } /* We only support int and float as internal data types for uniform variables */ std::string vtkUniforms::ScalarTypeToString(int scalarType) { if (scalarType == VTK_INT) { return "int"; } else if (scalarType == VTK_FLOAT) { return "float"; } return "invalid"; } int vtkUniforms::StringToScalarType(const std::string& s) { if (s == "int") { return VTK_INT; } else if (s == "float") { return VTK_FLOAT; } else { return VTK_VOID; } }