diff --git a/src/conversion/vtk/adaptor/foamVtkTools.H b/src/conversion/vtk/adaptor/foamVtkTools.H index 91ee3f178bb3b0c02443187224d690f316de5be6..935c75801d9ad2d2eee424f7799fa52c65afe75d 100644 --- a/src/conversion/vtk/adaptor/foamVtkTools.H +++ b/src/conversion/vtk/adaptor/foamVtkTools.H @@ -222,11 +222,19 @@ namespace Tools template<class Type> inline static void remapTuple(float data[]) {} + //- Template specialization for symmTensor ordering + template<> + inline void remapTuple<symmTensor>(float data[]); + //- Remapping for some OpenFOAM data types (eg, symmTensor) // \param data[in,out] The data to be remapped in-place template<class Type> inline static void remapTuple(double data[]) {} + //- Template specialization for symmTensor ordering + template<> + inline void remapTuple<symmTensor>(double data[]); + //- Copy/transcribe OpenFOAM data types to VTK format // This allows a change of data type (float vs double) as well as // addressing any swapping issues (eg, symmTensor) @@ -282,13 +290,18 @@ namespace Tools const label size ); }; +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace vtk +} // End namespace Foam + // Specializations //- Template specialization for symmTensor ordering template<> -inline void Tools::remapTuple<Foam::symmTensor>(float data[]) +void Foam::vtk::Tools::remapTuple<Foam::symmTensor>(float data[]) { std::swap(data[1], data[3]); // swap XY <-> YY std::swap(data[2], data[5]); // swap XZ <-> ZZ @@ -297,18 +310,13 @@ inline void Tools::remapTuple<Foam::symmTensor>(float data[]) //- Template specialization for symmTensor ordering template<> -inline void Tools::remapTuple<Foam::symmTensor>(double data[]) +void Foam::vtk::Tools::remapTuple<Foam::symmTensor>(double data[]) { std::swap(data[1], data[3]); // swap XY <-> YY std::swap(data[2], data[5]); // swap XZ <-> ZZ } -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace vtk -} // End namespace Foam - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //