Double Precision Support

VisIt is built on the VTK library, which supports arrays of a variety of built-in types. Over time, VisIt has introduced new data structures and filters that are more geared towards using float than allowing for multiple precisions. This leads to problems in trying to support data at native precision (most importantly at double-precision). Simulation codes usually operate in double precision and write their data in double precision. Simulation users who visualize data with VisIt would like the ability to do data analysis at the native precision of their data to reduce errors.

This project aims to enhance various portions of the VisIt pipeline to support double precision from the time data is read to the time it is rendered on the screen or used in calculations.

This enhancement is being targetted for VisIt 2.5.0.

Helping

The name of the branch is called DoublePrecision and you can check it out using the following command:

co_branch DoublePrecision src -user whitlocb

Plan to fix pipeline

Various filters in the VisIt pipeline cannot use native precision data. This can mean that they either cannot deal with double-precision coordinates and truncate them to float coordinates, or they can't deal with native precision data or introduce some transform that turns the data into float.

VisIt's pipeline and contract system allows all filters to place their admissible datatypes into the contract inside of avtFilter::ModifyContract. Of course, no filters really do this! The avtFilter base class currently adds VTK_FLOAT as the only admissible type in the contract. What this means is that when the data is returned from a plugin, the generic database's transform manager will get the data and convert it to float, possibly storing the other precision data for future use. This means that no matter what precision a database reader plugin provides, the data will be converted to floats.

In starting to determine what it would take to do double-precision calculations throughout the pipeline, I temporarily disabled the transform manager's float conversion code. This causes the data to start flowing through the pipeline in the native precision of the reader involved in reading the data. Of course, I found in the Silo reader right away that it could not handle double-precision coordinates for most mesh types and had other type problems that I've corrected.

Anyway, run "visit -dump" when you plot a dataset that contains double coordinates and double data and inspect the resulting VTK data files to determine which filters are transforming double->float. One by one fix the filters.

Ultimately, once the readers are fixed, the avt filters should be reexamined so they pass their full list of supported types in their admissible types. The pipeline should also be audited so that the contracts are handled consistently. The admissible types for each filter should be saved off and evaluated later in the database so that only the data types present in all filters' admissible types can make it past the transform manager. This may be how it works now but it's not 100% clear to me. It would appear that each filter could modify its input contract and return it, possibly meddling with the values inserted by the last filter. We only want to say datatype X can flow through the pipeline if all filters reported they can operate on type X.

Development

Data

Some double-precision Silo files exist on the CZ.

  • /usr/gapps/visit/data/noise_double.silo (The meshes, scalars, and material are double.
  • /usr/gapps/visit/data/doubleprecision.silo (2D and 3D meshes with large and small extents, variables with large and small extents)

Temporary Changes

In order to make it more likely that we'll run into problems, I've made some temporary changes on the DoublePrecision branch. These changes make debugging easier and will not be merged into the trunk.

Turn off DBForceSingle

This is easily enough done with an option when opening a Silo file but it's easier to temporarily disable force single in the reader than it is to set the DB read options all the time.

avtSiloFileFormat.C

#if 1
// Hack for double debugging
void force_single_do_nothing(int) { }
#define DBForceSingle force_single_do_nothing
#endif

Turn off conversion to float in Transform manager

Few filters indicate their accepted types so transform manager wants to convert everything to float. Let's not let it by temporarily turning off the float conversion.

avtTransformManager.C

// FOR NOW        ds = NativeToFloat(md, d_spec, ds, domain);

Debugging

With float conversion disabled, doubles will be free to seep into the pipelines. Make plots, apply operators, see what works and what doesn't work. If a feature doesn't work then run visit -dump to examine the VTK datasets to see where in the pipeline the problem occurred. You also want to look for any places where double data were converted to float.

Design Patterns

Convert method bodies to template functions and instantiate the template for various precisions. Also provide a "General" backup that accesses data arrays via the GetTuple methods.

Original:

double
avtSomethingFilter::Method()
{
    float *arr = (float *)input->GetCellData()->GetScalars()->GetVoidPointer(0); // bad! it assumes float

    // lots of setup code

    float sum = 0.0f;
    for(int i = 0; i < arr->GetNumberOfTuples(); ++i)
       sum += arr[i];

    // lots of epilog code

    return sum;
}

For the above example, you might simply add a case that handles the data as doubles as well and that would be adequate.

double
avtSomethingFilter::Method()
{
    vtkDataArray *arr = (float *)input->GetCellData()->GetScalars();

    // lots of setup code

    double sum = 0.;
    if(arr->GetDataType() == VTK_FLOAT)
    {
       const float *f = (const float *)arr->GetVoidPointer(0);
       for(vtkIdType i = 0; i < arr->GetNumberOfTuples(); ++i)
          sum += f[i];
    }
    else if(arr->GetDataType() == VTK_DOUBLE)
    {
       const double *d = (const double *)arr->GetVoidPointer(0);
       for(vtkIdType i = 0; i < arr->GetNumberOfTuples(); ++i)
          sum += d[i];
    }
    else
    {
       for(vtkIdType i = 0; i < arr->GetNumberOfTuples(); ++i)
          sum += arr->GetTuple1(i);
    }

    // lots of epilog code

    return sum;
}

If your method has a lot of code that sets things up or maybe there are different classes that use the same type of cell traversal (vtkSlicer, vtkVisItContourFilter) then you might generalize the traversal to a template function whose actual work is done by a functor. This lets you reuse the complex traversal code but instantiate it to different types of jobs:

//
// Operate on the data as a raw array in its native data type. Fast path.
//
template <typename T>
class SumFunctor
{
public:
   SumFunctor(vtkDataArray *a) { arr = (const T *)a->GetVoidPointer(0); }
   inline T operator()() const
   {
       T sum = static_cast<T>(0.0);
       for(int i = 0; i < arr->GetNumberOfTuples(); ++i)
           sum += arr[i];
       return sum;
   }
private:
   const T *arr;
};

//
// Operate on the data in double, using GetTuple to access the data. Slower path.
//
class GeneralSumFunctor
{
public:
   GeneralSumFunctor(vtkDataArray *a) { arr = a; }
   inline double operator()() const
   {
       double sum = 0.0;
       for(int i = 0; i < arr->GetNumberOfTuples(); ++i)
           sum += arr->GetTuple1(i);
       return sum;
   }
private:
   vtkDataArray *arr;
};

//
// Template function that contains the bulk of the work but accesses data 
// and does some work through the functor. This pattern lets this code be
// pretty general, so much so, that different functors can be passed in to
// do different things.
//
template <typename T, typename Functor>
inline T
avtSomethingFilter_Method_Helper(Functor &f)
{
    // lots of setup code

    T sum = f();

    // lots of epilog code

    return sum;
}

//
// The original method calls the helper function and initializes some functors
// to pass into the template helper function.
//
double
avtSomethingFilter::Method()
{
    vtkDataArray *arr = input->GetCellData()->GetScalars();

    if(arr->GetDataType() == VTK_FLOAT)
        return avtSomethingFilter_Method_Helper<float, SumFunctor<float> >(SumFunctor<float>(arr));
    else if(arr->GetDataType() == VTK_DOUBLE)
        return avtSomethingFilter_Method_Helper<double, SumFunctor<double> >(SumFunctor<double>(arr));
    return avtSomethingFilter_Method_Helper<double, GeneralSumFunctor>(GeneralSumFunctor(arr));
}

VTK changes

Some additional VTK changes are needed. I'm going to keep track of some of them here until I can put them into VTK.

vtkContourFilter

This filter blindly creates a new vtkPoints object and does not take into account the precision of the input coordinates. This breaks double-precision coordinates for 2D meshes since we use this filter for 1D and 2D meshes.

Additions around line 416

    // Determine the output coordinate type based on the input coordinates
    int coordDataType = VTK_FLOAT;
    vtkRectilinearGrid *rgrid = vtkRectilinearGrid::SafeDownCast(input);
    if (rgrid != NULL)
      {
      if(rgrid->GetXCoordinates() != NULL)
        {
        coordDataType = rgrid->GetXCoordinates()->GetDataType();
        }
      }
    vtkPointSet *ps = vtkPointSet::SafeDownCast(input);
    if (ps != NULL)
      {
      coordDataType = ps->GetPoints()->GetDataType();
      }

    newPts = vtkPoints::New(coordDataType);

Areas of concern

This section attempts to identify areas of VisIt's source code that should be checked for its support of different precisions. Actually, a good way to locate these areas of concern is to disable the transform manager and then see where the code crashes.

Readers

Readers such as Silo often convert data to float instead of passing back doubles, ints, etc. Whenever possible, we should pass back the native precision of the arrays as they were stored in the file. The transform manager exists to handle the cases where a particular data type are not supported in the pipeline. We don't have to worry about precision in a reader. This means that for mesh coordinates, we can pass back float or double. For variables, we can pass back any subclass of vtkDataArray.

Filters

Filters have a couple of problems. First, many filters assume data arrays will be float and so they access the data using GetVoidPointer(0) and cast the pointer to be a float pointer. This is good for performance but it is not general. Such code could be templated to support float and double ( accessors could be a good approach or there is a VTK type macro that could be used to instantiate template code for different vtkDataArray subclasses). Or, the routines (if not too speed critical) could be reformulated in terms of GetTuple() calls on the vtkDataArray.

The second problem with filters is that while they do provide a nice method to indicate which data types they support, only the filter base class overrides this method and it only indicates support for VTK_FLOAT. There are actually a large number of filters that operate on data using GetTuple() and those filters are safe for any datatype and should thus override their avtFilter::ModifyContract method to indicate that all data types are supported. The avtFilter::ModifyContract method is called on all filters in the pipeline to determine whether data from the database can be used unmodified in the pipeline or whether conversion to float is needed. Returning only float in the avtFilter::ModifyContract method in the avtFilter base class makes sense while float-only support is the dominant type of filter. However, it could make sense to enable all data types in the base class and then have filters provide overrides of the method when they only work on a subset of data types. We should adopt whichever practice results in less code.

Filters that are not data-type safe can often be identified by their use of GetVoidPointer(0) so we can audit the code for its use.

Filters that currently assume single precision

The following table contains filters known to only work with single precision. This is not a complete list by any means.

Class More information Status
visit_vtk/lightweight/vtkPolyDataRelevantPointsFilter.C The coordinate type has to be float Brad Done

Code that is using GetVoidPointer in a way that may assume float

This section contains a listing of places in the code, excluding database plugins, that are using GetVoidPointer(0) in order to access the data in the vtkDataArray.

Developers will choose from among the available work groups and perform the following:

  • Record that you're working on the section here in the wiki so no duplication of effort takes place
  • Audit each use of GetVoidPointer(0) to see if its use is valid for supporting both float and double.
  • If the code was float-specific then provide a double implementation as well.
Group of files Developer Status
operators/Ftle/avtFTLEFilter.C:            float *origvals = (float *) component->GetVoidPointer(0);
plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:            varArrayValues.push_back(((float *)dataArray->GetVoidPointer(0))
plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:            varArrayValues.push_back((float *)dataArray->GetVoidPointer(0));
plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:                varArrayValues.push_back(((float *)dataArray->GetVoidPointer(0))
plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:                varArrayValues.push_back((float *)dataArray->GetVoidPointer(0));
plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:        unsigned int *ptr = (unsigned int *) ocn->GetVoidPointer(0);
plots/Poincare/avtPoincareFilter.C:    float *points_ptr = (float *) points->GetVoidPointer(0);
))
plots/Scatter/avtScatterFilter.C:    float *coord = (float *)pts->GetVoidPointer(0);
plots/Scatter/avtScatterFilter.C:        coord = (float *)pts->GetVoidPointer(0);
plots/Scatter/avtScatterFilter.C:        coord = (float *)pts->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *scalar = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::colorvarArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *param = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::paramArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        opacity = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::opacityArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        tangents = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::tangentsArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        t = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::thetaArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *s = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::colorvarArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        o = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::opacityArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *s = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::colorvarArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        o = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::opacityArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *s = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::colorvarArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *p = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::paramArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        t = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::thetaArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        o = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::opacityArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *p = (float *)poly->GetPoints()->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *n = (float *)poly->GetPointData()->GetNormals()->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *s = (float *)poly->GetPointData()->GetArray(avtStreamlinePolyDataFilter::colorvarArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:    float *param = (float *)poly->GetPointData()->GetArray(avtStreamlinePolyDataFilter::paramArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        o = (float *)poly->GetPointData()->GetArray(avtStreamlinePolyDataFilter::opacityArrayName.c_str())->GetVoidPointer(0);
plots/Streamline/avtOpenGLStreamlineRenderer.C:        opacity = (float *)data->GetPointData()->GetArray(avtStreamlinePolyDataFilter::opacityArrayName.c_str())->GetVoidPointer(0);
plots/Volume/avtLowerResolutionVolumeFilter.C:                                (float *)gm->GetVoidPointer(0),
plots/Volume/avtLowerResolutionVolumeFilter.C:                                (float *)gm->GetVoidPointer(0),
plots/Volume/avtOpenGLSLIVRVolumeRenderer.C:        dptr[0] = (float *)data->GetVoidPointer(0);
plots/Volume/avtOpenGLSLIVRVolumeRenderer.C:        dptr[1] = (float *)opac->GetVoidPointer(0);
plots/Volume/avtOpenGLSLIVRVolumeRenderer.C:        float *fdata = (float *)data->GetVoidPointer(0);
plots/Volume/avtOpenGLSLIVRVolumeRenderer.C:        nrrdWrap_nva(context->data, data->GetVoidPointer(0), nrrdTypeFloat, 
plots/Volume/avtOpenGLTuvokVolumeRenderer.C:    vol.SetData(static_cast<float*>(data->GetVoidPointer(0)),
not done
Group of files Developer Status
avt/Pipeline/Data/avtImageRepresentation.C:       memcpy(zbuffer, zArray->GetVoidPointer(0), size * sizeof(float));
avt/MIR/Discrete/DiscreteMIR.C:        float *pts_buff = (float *) outPts->GetVoidPointer(0);
avt/MIR/Discrete/DiscreteMIR.C:            int *origNodeArray = (int*)origNodes->GetVoidPointer(0);
avt/MIR/Discrete/DiscreteMIR.C:        float *outBuff = (float *) arr->GetVoidPointer(0);
avt/MIR/Discrete/DiscreteMIR.C:        float *ptr = (float *) ps->GetPoints()->GetVoidPointer(0);
avt/MIR/Tet/TetMIR.C:        float *pts_buff = (float *) outPts->GetVoidPointer(0);
avt/MIR/Tet/TetMIR.C:        float *outBuff = (float *) arr->GetVoidPointer(0);
avt/MIR/Tet/TetMIR.C:        float *ptr = (float *) ps->GetPoints()->GetVoidPointer(0);
avt/MIR/Zoo/ZooMIR.C:        float *pts_buff = (float *) outPts->GetVoidPointer(0);
avt/MIR/Zoo/ZooMIR.C:            int *origNodeArray = (int*)origNodes->GetVoidPointer(0);
avt/MIR/Zoo/ZooMIR.C:        float *outBuff = (float *) arr->GetVoidPointer(0);
avt/MIR/Zoo/ZooMIR.C:        float *ptr = (float *) ps->GetPoints()->GetVoidPointer(0);
avt/Database/Ghost/avtIsenburgSGG.C:    void *data = in_array->GetVoidPointer(0);
avt/Database/Ghost/avtIsenburgSGG.C:    void *ptr = out_array->GetVoidPointer(0);
avt/Filters/avtFacelistFilter.C:        unsigned int *cellPtr = (unsigned int*)cells->GetVoidPointer(0); // valid use
avt/Filters/avtMassVoxelExtractor.C:        ghosts = (unsigned char *) arr->GetVoidPointer(0);  // valid use
avt/Filters/avtMassVoxelExtractor.C:        cell_arrays[ncell_arrays++] = arr->GetVoidPointer(0);
avt/Filters/avtMassVoxelExtractor.C:        pt_arrays[npt_arrays++] = arr->GetVoidPointer(0);
avt/Filters/avtMassVoxelExtractor.C:        cell_arrays.push_back(arr->GetVoidPointer(0));
avt/Filters/avtMassVoxelExtractor.C:        pt_arrays.push_back(arr->GetVoidPointer(0));
avt/Filters/avtMeshLogFilter.C:            float *x = (float*)((vtkFloatArray*)xc)->GetVoidPointer(0);
avt/Filters/avtMeshLogFilter.C:            float *y = (float*)((vtkFloatArray*)yc)->GetVoidPointer(0);
avt/Filters/avtMeshLogFilter.C:        float *pts = (float*)((vtkFloatArray*)points)->GetVoidPointer(0);
avt/Filters/avtMissingDataFilter.C:            memset(missingData->GetVoidPointer(0), 0,  /* valid use */
avt/Filters/avtMissingDataFilter.C:            memset(missingData->GetVoidPointer(0), 0,  /* valid use */
avt/Filters/avtMissingDataFilter.C:    unsigned char *mdptr = (unsigned char *)missingData->GetVoidPointer(0); // valid use
avt/Filters/avtRExtremesFilter.C:    float *vals = (float *) scalars->GetVoidPointer(0);
avt/Filters/avtResampleFilter.C:            float *ptr = (float *) vars[i]->GetVoidPointer(0);
avt/Filters/avtResampleFilter.C:            float *ptr = (float *) vars[i]->GetVoidPointer(0);
avt/Filters/avtThresholdFilter.C:        valueArray = (float *)dataArray->GetVoidPointer(0);
avt/Filters/avtThresholdFilter.C:        varValues = (float *)dataArray->GetVoidPointer(0);
avt/Filters/avtXRayFilter.C:        float *pts = (float *) points->GetVoidPointer(0);
avt/Filters/avtXRayFilter.C:        float *pts = (float *) points->GetVoidPointer(0);
plots/MultiCurve/avtMultiCurveFilter.C:  float *vals = vtkFloatArray::SafeDownCast(var)->GetPointer(0);
plots/MultiCurve/avtMultiCurveFilter.C:  vals2 = vtkFloatArray::SafeDownCast(var2)->GetPointer(0);
plots/MultiCurve/avtMultiCurveFilter.C:  vals3 = vtkFloatArray::SafeDownCast(var3)->GetPointer(0);
plots/Truecolor/avtTruecolorFilter.C:        unsigned char *pixels = (unsigned char *)color_array->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        const float *src = (const float *)linear->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        float *dest = (float *)log->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        const float *src = (const float *)linear->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        float *dest = (float *)skew->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        const float *fopac = (const float *)opac->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        const float *fopac = (const float *)opac->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:    const float *fopac = (const float *)opac->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        const float *scalar = (const float *)data->GetVoidPointer(0);
plots/Volume/VolumeFunctions.C:        const float *magnitude = (const float *)gm->GetVoidPointer(0);
visit_vtk/full/vtkRectilinearGridFacelistFilter.C:  float *p = (float *) pts->GetVoidPointer(0);
visit_vtk/full/vtkRectilinearLinesNoDataFilter.C:    float *p = (float *) pts->GetVoidPointer(0);
visit_vtk/full/vtkConnectedTubeFilter.C:    pts             = (float*)(points->GetVoidPointer(0));
visit_vtk/full/vtkConnectedTubeFilter.C:    float *pts = (float*)(inPts->GetVoidPointer(0));
visit_vtk/full/vtkVisItCellDataToPointData.C:       vars_in[i] = (float *) inPD->GetArray(i)->GetVoidPointer(0);
visit_vtk/full/vtkVisItCellDataToPointData.C:                                               ->GetVoidPointer(0);
Kathleen / Brad Done
Group of files Developer Status
avt/IVP/MemStream.C:    unsigned char *ptr = (unsigned char *)array->GetVoidPointer(0);
avt/IVP/avtIVPM3DC1Field.C:  //  return (type*) array->GetVoidPointer(0);
avt/IVP/avtIVPM3DC1Field.C:    int* ptr = (int*) array->GetVoidPointer(0);
avt/IVP/avtIVPM3DC1Field.C:    float* ptr = (float*) array->GetVoidPointer(0);
avt/IVP/avtIVPM3DC1Field.C:    double* ptr = (double*) array->GetVoidPointer(0);
avt/IVP/avtIVPNIMRODField.C:    int* ptr = (int*) array->GetVoidPointer(0);
avt/IVP/avtIVPNIMRODField.C:    float* ptr = (float*) array->GetVoidPointer(0);
avt/IVP/avtIVPNIMRODField.C:    double* ptr = (double*) array->GetVoidPointer(0);
Handled Correctly Done
Group of files Developer Status
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *normals  = (float*)n->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *textures = (float*)t->GetVoidPointer(0); 
avt/Plotter/avtOpenGLSurfaceAndWireframeRenderer.C:    const float *vertices = (float*)p->GetVoidPointer(0);
Kathleen Done


Group of files Developer Status
avt/Plotter/avtTransparencyActor.C:        unsigned char *ptr = (unsigned char *) colors->GetVoidPointer(0);
avt/Plotter/avtTransparencyActor.C:            unsigned char *ptr = (unsigned char *) colors->GetVoidPointer(0);
avt/Plotter/avtTransparencyActor.C:              (unsigned char *) mappedColors->GetVoidPointer(0);
avt/Plotter/avtTransparencyActor.C:            unsigned char *ptr = (unsigned char *) colors->GetVoidPointer(0);
avt/Plotter/avtTransparencyActor.C:              (unsigned char *) mapper->MapScalars(opacity)->GetVoidPointer(0);
avt/Plotter/avtTransparencyActor.C:                const float *cn = (float *) cell_normals->GetVoidPointer(0);
avt/Plotter/avtTransparencyActor.C:                float *newNormalPtr = (float*)newNormals->GetVoidPointer(0);
avt/Plotter/vtk/vtkOpenGLRectilinearGridMapper.C:            GetVoidPointer(0);
avt/Plotter/vtk/vtkOpenGLStructuredGridMapper.C:   float *pts = (float *) input->GetPoints()->GetVoidPointer(0);
avt/Plotter/vtk/vtkOpenGLStructuredGridMapper.C:       n = (float *) normals->GetVoidPointer(0);
avt/Plotter/vtk/vtkOpenGLStructuredGridMapper.C:            GetVoidPointer(0);
Brad Done


Group of files Developer Status
avt/Database/Database/avtGenericDatabase.C:            float *np = (float *) newPts->GetVoidPointer(0);
avt/Database/Database/avtGenericDatabase.C:            float *p  = (float *) pts->GetVoidPointer(0);
avt/Database/Database/avtTransformManager.C:        float *newBuf = (float*) newArr->GetVoidPointer(0);
avt/Database/Database/avtTransformManager.C:        void *oldBuf = oldArr->GetVoidPointer(0);
avt/Database/Database/avtTransformManager.C:    const void *buf = da->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *oldvals = (float*)scalars[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *oldvals = (float*)scalars[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *newvals = (float*)out[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     int *oldvals = (int*)scalars[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     int *oldvals = (int*)scalars[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     int *newvals = (int*)out[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *oldvals = (float*)vectors[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *oldvals = (float*)vectors[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *newvals = (float*)out[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     int *oldvals = (int*)vectors[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     int *oldvals = (int*)vectors[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     int *newvals = (int*)out[d]->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *oldcoord = (float*)mesh->GetPoints()->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *oldcoord = (float *)mesh->GetPoints()->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *newcoord = (float *)outp->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *newx = (float *)x->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *newy = (float *)y->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:     float *newz = (float *)z->GetVoidPointer(0);
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   float *oldcoord = (float *)mesh->GetPoints()->GetVoidPointer(0);
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   float *newcoord = (float *)outp->GetVoidPointer(0);
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   int *ptr = (int*)(materialArrays[i]->GetVoidPointer(0));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   int *matPtr = (int *)(result[i]->GetVoidPointer(0));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   T * origPtr = (T*)(data[i]->GetVoidPointer(0));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   T * ptr = (T *)(out[i]->GetVoidPointer(refIndex * nComponents));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:                                      ->GetVoidPointer(0));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:                                      ->GetVoidPointer(0));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   T * origPtr = (T*)(data[i]->GetVoidPointer(0));
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:   T * origPtr = (T*)(data[dIndex]->GetVoidPointer(0));
Done
Group of files Developer Status
avt/Expressions/Derivations/avtStrainAlmansiExpression.C:        (unsigned char *) (ghost_data ? ghost_data->GetVoidPointer(0) : 0);
avt/Expressions/Derivations/avtStrainGreenLagrangeExpression.C:        (unsigned char *) (ghost_data ? ghost_data->GetVoidPointer(0) : 0);
avt/Expressions/Derivations/avtStrainInfinitesimalExpression.C:        (unsigned char *) (ghost_data ? ghost_data->GetVoidPointer(0) : 0);
avt/Expressions/Derivations/avtStrainRateExpression.C:        (unsigned char *) (ghost_data ? ghost_data->GetVoidPointer(0) : 0);
avt/Expressions/General/avtDominantMaterialExpression.C:    int *ptr = (int *) zn->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:        float *ptr = (float *) results->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *x = (float *) xc->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *y = (float *) yc->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *z = (float *) zc->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *in  = (float *) s->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *out = (float *) out_array->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *pts = (float *) vtkpts->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *in  = (float *) s->GetVoidPointer(0);
avt/Expressions/General/avtGradientExpression.C:    float *out = (float *) out_array->GetVoidPointer(0);
avt/Expressions/General/avtMagnitudeExpression.C:    dtype *x   = (dtype*)vectorValues->GetVoidPointer(0); \
avt/Expressions/General/avtMagnitudeExpression.C:    dtype *r   = (dtype*)results->GetVoidPointer(0); \
avt/Expressions/General/avtNMatsExpression.C:    int *ptr = (int *) zn->GetVoidPointer(0);
avt/Expressions/General/avtNeighborEvaluatorExpression.C:    float *r_ptr = (float *) results->GetVoidPointer(0);
avt/Expressions/General/avtNeighborEvaluatorExpression.C:    float *ptr = (float *) input->GetVoidPointer(0);
avt/Expressions/General/avtResradExpression.C:    float *var = (float *) in1->GetVoidPointer(0);
avt/Expressions/General/avtResradExpression.C:    float *newvar = (float *) out->GetVoidPointer(0);
avt/Expressions/Math/avtIdentityExpression.C:    void *out_ptr = out->GetVoidPointer(0);
avt/Expressions/Math/avtIdentityExpression.C:        void *in_ptr = in->GetVoidPointer(0);
avt/Expressions/MeshQuality/avtSideVolume.C:        float *pts_ptr = (float *) pts->GetVoidPointer(0);
avt/Expressions/MeshQuality/avtSideVolume.C:        float *pts_ptr = (float *) pts->GetVoidPointer(0);
avt/Expressions/TimeIterators/avtValueAtExtremaExpression.C:    float *out_var_ptr = (float *) outVar->GetVoidPointer(0);
avt/Expressions/TimeIterators/avtValueAtExtremaExpression.C:    float *d_ptr = (float *) d->GetVoidPointer(0);
Done
Group of files Developer Status
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((char*) da->GetVoidPointer(0), nvals, exts, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((unsigned char*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((short*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((unsigned short*) da->GetVoidPointer(0), nvals,exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((int*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((unsigned int*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((long*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((unsigned long*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((float*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((double*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetScalarRange((vtkIdType*) da->GetVoidPointer(0), nvals, exts,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((char*) da->GetVoidPointer(0), ntuples,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((unsigned char*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((short*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((unsigned short*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((int*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((unsigned int*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((long*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((unsigned long*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((float*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((double*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetComponentRange((vtkIdType*) da->GetVoidPointer(0),
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((char*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((unsigned char*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((short*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((unsigned short*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((int*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((unsigned int*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((long*) da->GetVoidPointer(0), nvals, 
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((unsigned long*) da->GetVoidPointer(0), nvals,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((float*) da->GetVoidPointer(0), nvals,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((double*) da->GetVoidPointer(0), nvals,
avt/Pipeline/Data/avtCommonDataFunctions.C:   GetMagnitudeRange((vtkIdType*) da->GetVoidPointer(0), nvals,
avt/Pipeline/Data/avtCommonDataFunctions.C:   float *ptr = (float *) da->GetVoidPointer(0);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((char*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((unsigned char*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((short*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((unsigned short*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((int*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((unsigned int*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((long*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((unsigned long*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((float*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((double*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Pipeline/Data/avtCommonDataFunctions.C:   PopulateHistogram((vtkIdType*) arr->GetVoidPointer(0), ntups, nbins, min, max, numVals);
avt/Queries/Queries/avtXRayImageQuery.C:      float *image = (float *) leaves[i]->GetPointData()->GetArray("Image")->GetVoidPointer(0);
avt/Queries/Queries/avtXRayImageQuery.C:      float *image = (float *) leaves[i]->GetPointData()->GetArray("Image")->GetVoidPointer(0);
avt/Pipeline/Pipeline/avtNamedSelection.C:    unsigned int *ptr = (unsigned int *)ocn->GetVoidPointer(0);
avt/Pipeline/Pipeline/avtNamedSelection.C:    unsigned int *ptr = (unsigned int *)arr->GetVoidPointer(0);
avt/Pipeline/Pipeline/avtNamedSelectionExtension.C:         if (arr->GetVoidPointer(0) == NULL)
Done
Group of files Developer Status
visit_vtk/full/vtkSlicer.C:    float *pts_ptr = (float *) inPts->GetVoidPointer(0);
visit_vtk/full/vtkSlicer.C:    float *pts_ptr = (float *) inPts->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:        scalarArray = (float *) array->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:            pts_ptr = (float*)sg->GetPoints()->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:        pts_ptr = (float*)ug->GetPoints()->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:        pts_ptr = (float*)pg->GetPoints()->GetVoidPointer(0);
visit_vtk/full/vtkVisItContourFilter.C:    return (float *) arr->GetVoidPointer(0);
visit_vtk/full/vtkVisItContourFilter.C:    float *pts_ptr = (float *) inPts->GetVoidPointer(0);
visit_vtk/full/vtkVisItContourFilter.C:    float *pts_ptr = (float *) inPts->GetVoidPointer(0);
visit_vtk/full/vtkVisItScalarTree.C:                                    ->GetVoidPointer(0));
visit_vtk/full/vtkVisItSplitter.C:        scalarArray = (float *) array->GetVoidPointer(0);
visit_vtk/full/vtkVisItSplitter.C:            pts_ptr = (float*)sg->GetPoints()->GetVoidPointer(0);
visit_vtk/full/vtkVisItSplitter.C:        pts_ptr = (float*)ug->GetPoints()->GetVoidPointer(0);
visit_vtk/full/vtkVisItSplitter.C:        pts_ptr = (float*)pg->GetPoints()->GetVoidPointer(0);
visit_vtk/lightweight/vtkPolyDataRelevantPointsFilter.C:  float *in_ptr = (float *) inPts->GetVoidPointer(0);
visit_vtk/lightweight/vtkPolyDataRelevantPointsFilter.C:  float *out_ptr = (float *) newPts->GetVoidPointer(0);
visit_vtk/lightweight/vtkUnstructuredGridBoundaryFilter.C:    int *cellData = (int*)(boundaryArray->GetVoidPointer(0));
visit_vtk/lightweight/vtkVisItUtility.C:        float *p = (float *) pts->GetVoidPointer(0);
visit_vtk/lightweight/vtkVisItUtility.C:        unsigned char *gz = (unsigned char*)ghosts->GetVoidPointer(0); 
visit_vtk/lightweight/vtkVisItUtility.C:        double *pts_ptr = (double *) pts->GetVoidPointer(0);
Brad Done
Group of files Developer Status
operators/CracksClipper/avtCracksDensityFilter.C:    float *volp = (float*)vol->GetVoidPointer(0);
operators/CracksClipper/avtCracksDensityFilter.C:    float *emsp = (float*)ems->GetVoidPointer(0);
operators/CracksClipper/avtCracksDensityFilter.C:    int *cozp   = (int*)coz->GetVoidPointer(0);
operators/CracksClipper/avtRemoveCracksFilter.C:    float *s = (float*)strain->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:    this->scalarArray = (float *) array->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:  float *pts_ptr = (float *) inPts->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:  float        *X      = (float* ) rg->GetXCoordinates()->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:  float        *Y      = (float* ) rg->GetYCoordinates()->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:  float        *Z      = (float* ) rg->GetZCoordinates()->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:  float *pts_ptr = (float *) inPts->GetVoidPointer(0);
operators/CracksClipper/vtkCracksClipper.C:  float *pts_ptr = (float *) inPts->GetVoidPointer(0);
operators/Extrude/avtExtrudeFilter.C:    float *pts = (float *) points->GetVoidPointer(0);
operators/Extrude/avtExtrudeFilter.C:        float *pts = (float *) points->GetVoidPointer(0);

avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:    float *orig_pts = (float *) sgrid->GetPoints()->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        float *new_pts = (float *) pts->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:    float *pts_ptr = (float *) pts->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        float *orig_pts = (float *) sgrid->GetPoints()->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:            unsigned char *vals = (unsigned char *) arr->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        unsigned char *vals = (unsigned char *) arr->GetVoidPointer(0);
Kathleen Done
Group of files Developer Status

operators/IndexSelect/avtIndexSelectFilter.C:                amri = (int*)amrdims->GetVoidPointer(0);
operators/IndexSelect/avtIndexSelectFilter.C:            gz = (unsigned char *)ghosts->GetVoidPointer(0);
operators/Isovolume/avtIsovolumeFilter.C:        vals = (float *) in_ds->GetPointData()->GetScalars()->GetVoidPointer(0);
operators/Isovolume/avtIsovolumeFilter.C:        vals = (float *) in_ds->GetCellData()->GetScalars()->GetVoidPointer(0);
Brad Done
Group of files Developer Status
/* valid use case -- for data created internally */
operators/LineSampler/avtLineSamplerFilter.C:  (float*) out_ds->GetPointData()->GetScalars()->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  (float*) out_ds->GetPointData()->GetScalars()->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  (float*) tmp_ds->GetPointData()->GetScalars()->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  (float *points_ptr = (float *) points->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  (float*) out_ds->GetPointData()->GetScalars()->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  (float *) out_ug->GetPoints()->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  (float *) out_pd->GetPoints()->GetVoidPointer(0);
operators/LineSampler/avtLineSamplerFilter.C:  float *points_ptr = (float *) points->GetVoidPointer(0);
Done
Group of files Developer Status
operators/ModelFit/avtModelFitFilter.C:  scalars = (float *)darray->GetVoidPointer(0); /* filter creates the arrays */
operators/ModelFit/avtModelFitFilter.C:  scalars = (float *)darray->GetVoidPointer(0); /* as float */
operators/ModelFit/avtModelFitFilter.C:  scalars = (float *)darray->GetVoidPointer(0); /* so these are valid */
operators/ModelFit/avtModelFitFilter.C:  scalars= (float *)darray->GetVoidPointer(0);           
operators/Project/avtProjectFilter.C:    float *points = (float*)new_pts->GetVoidPointer(0); // Assume float
operators/Project/avtProjectFilter.C:    float *inptr  = (float*)in->GetVoidPointer(0);
operators/Project/avtProjectFilter.C:    float *outptr = (float*)out->GetVoidPointer(0);
operators/Reflect/avtReflectFilter.C:        float *c = (float*)coords->GetVoidPointer(0);
operators/Reflect/avtReflectFilter.C:        float *n = (float*)newcoords->GetVoidPointer(0);
operators/Reflect/avtReflectFilter.C:        double *c = (double*)coords->GetVoidPointer(0);
operators/Reflect/avtReflectFilter.C:        double *n = (double*)newcoords->GetVoidPointer(0);
operators/Reflect/avtReflectFilter.C:        float *ptr = (float *) da->GetVoidPointer(0);
operators/Reflect/avtReflectFilter.C:        float *ptr = (float *) da->GetVoidPointer(0);
operators/Replicate/avtReplicateFilter.C:        float *c = (float*)coords->GetVoidPointer(0);
operators/Replicate/avtReplicateFilter.C:        float *n = (float*)newcoords->GetVoidPointer(0);
operators/Replicate/avtReplicateFilter.C:        double *c = (double*)coords->GetVoidPointer(0);
operators/Replicate/avtReplicateFilter.C:        double *n = (double*)newcoords->GetVoidPointer(0);
operators/Revolve/avtRevolveFilter.C:    float *ptr = (float *) pts->GetVoidPointer(0);
operators/SiloDump/avtSiloDumpFilter.C:          array[d] = ((float*)in_cs->GetVoidPointer(0))[c]; /* operator is no */
operators/SiloDump/avtSiloDumpFilter.C:           oat*)in_ps->GetVoidPointer(0),                   /* longer used */
operators/SubdivideQuads/avtSubdivideQuadsFilter.C:    float *p = (float *) arr->GetVoidPointer(0);
operators/SubdivideQuads/avtSubdivideQuadsFilter.C:    float *old_pts_ptr = (float *) input->GetPoints()->GetVoidPointer(0);
operators/SubdivideQuads/avtSubdivideQuadsFilter.C:    float *new_pts_ptr = (float *) new_pts->GetVoidPointer(0);
Kathleen Done
Group of files Developer Status
plots/Curve/avtOpenGLCurveRenderer.C:    const float *ptr = (const float *)input->GetPoints()->GetVoidPointer(0);
plots/Curve/avtOpenGLCurveRenderer.C:    const float *ptr = (const float *)input->GetPoints()->GetVoidPointer(0);
plots/Curve/avtOpenGLCurveRenderer.C:    const float *pt = (const float *)input->GetPoints()->GetVoidPointer(0);
plots/Curve/avtOpenGLCurveRenderer.C:        const float *pts = (const float *)input->GetPoints()->GetVoidPointer(0);
plots/Curve/avtOpenGLCurveRenderer.C:        pts = (const float*)input->GetPoints()->GetVoidPointer((nPts-1)*3);
plots/Curve/avtOpenGLCurveRenderer.C:            const float *pt = (const float *)input->GetPoints()->GetVoidPointer(0);
plots/Label/CellLabels_body.C:                unsigned char *label = (unsigned char *)data->GetVoidPointer(0);
plots/Label/CellLabels_body.C:                const float *fptr = (const float *)data->GetVoidPointer(0);
plots/Label/CellLabels_body.C:            const int *iptr2 = (const int *)rDims->GetVoidPointer(0);
plots/Label/CellLabels_body.C:            const unsigned int *iptr = (const unsigned int *)sDims->GetVoidPointer(0);
plots/Label/NodeLabels_body.C:                unsigned char *label = (unsigned char *)data->GetVoidPointer(0);
plots/Label/NodeLabels_body.C:                const float *fptr = (const float *)data->GetVoidPointer(0);
plots/Label/NodeLabels_body.C:            const unsigned int *iptr = (const unsigned int *)rDims->GetVoidPointer(0);
plots/Label/NodeLabels_body.C:            const unsigned int *iptr = (const unsigned int *)sDims->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:            unsigned int *dest = (unsigned int*)newCellNos->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:            unsigned int *src = (unsigned int*)originalCellNumbers->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:            unsigned int *dest = (unsigned int*)newNodeNos->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:            int *src = (int*)originalNodeNumbers->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:        unsigned int *cellNumbers = (d != 0) ? (unsigned int *)d->GetVoidPointer(0) : 0;
plots/Label/avtLabelFilter.C:            unsigned char *quant = (unsigned char *)quantNodeNormals->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:                quant = (unsigned char *)quantNodeNormals->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:                    GetVoidPointer(0);
plots/Label/avtLabelFilter.C:            unsigned char *quant = (unsigned char *)quantCellNormals->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:            quant = (unsigned char *)quantCellNormals->GetVoidPointer(0);
plots/Label/avtLabelFilter.C:                    GetVoidPointer(0);
plots/Label/avtOpenGLLabelRenderer.C:    const float *pts = (const float *)fa->GetVoidPointer(0);
plots/Label/avtOpenGLLabelRenderer.C:            (const unsigned char *)qnna->GetVoidPointer(0): 0;
plots/Label/avtOpenGLLabelRenderer.C:    const float *pts = (const float *)cellCenters->GetVoidPointer(0);
plots/Label/avtOpenGLLabelRenderer.C:            (const unsigned char *)qcna->GetVoidPointer(0): 0;
plots/Label/avtOpenGLLabelRenderer.C:        (const unsigned char *)qcna->GetVoidPointer(0): 0;
plots/Label/avtOpenGLLabelRenderer.C:        (const unsigned char *)qnna->GetVoidPointer(0): 0;
plots/Molecule/avtMoleculeFilter.C:        float *scalar = (float*)primary->GetVoidPointer(0);
plots/Molecule/avtOpenGLMoleculeRenderer.C:    float *scalar = (float*)primary->GetVoidPointer(0);
plots/Molecule/avtOpenGLMoleculeRenderer.C:    float *elementnos = element ? (float*)element->GetVoidPointer(0) : NULL;
plots/Molecule/avtOpenGLMoleculeRenderer.C:            radiusvar = (float*)radius_array->GetVoidPointer(0);
plots/Molecule/avtOpenGLMoleculeRenderer.C:    float *scalar = (float*)primary->GetVoidPointer(0);
plots/Molecule/avtOpenGLMoleculeRenderer.C:    float *elementnos = element ? (float*)element->GetVoidPointer(0) : NULL;
plots/Molecule/avtOpenGLMoleculeRenderer.C:            radiusvar = (float*)radius_array->GetVoidPointer(0);
plots/Spreadsheet/SpreadsheetTable.C:          GetVoidPointer(0);
plots/Spreadsheet/SpreadsheetTable.C:          (const unsigned char *)missingDataArray->GetVoidPointer(0);
plots/Spreadsheet/SpreadsheetViewer.C:         missingData = (unsigned char *)missingDataArray->GetVoidPointer(0);
plots/Spreadsheet/SpreadsheetViewer.C:         ghostZones = (unsigned char *)ghostArray->GetVoidPointer(0);
plots/Spreadsheet/SpreadsheetViewer.C:         missingData = (unsigned char *)missingDataArray->GetVoidPointer(0);
plots/Spreadsheet/avtOpenGLSpreadsheetTraceRenderer.C:  glVertexPointer(3, GL_FLOAT, 0, sgrid->GetPoints()->GetData()->GetVoidPointer(0));
plots/Spreadsheet/avtOpenGLSpreadsheetTraceRenderer.C:  const float *fptr = (const float*)sgrid->GetPoints()->GetData()->GetVoidPointer(0);
plots/Spreadsheet/avtOpenGLSpreadsheetTraceRenderer.C:  glVertexPointer(3, GL_DOUBLE, 0, sgrid->GetPoints()->GetData()->GetVoidPointer(0));
Done

Code that assumes float coordinates

These are done:

avt/Filters/avtMassVoxelExtractor.C:    float *x = (float *) rgrid->GetXCoordinates()->GetVoidPointer(0);
avt/Filters/avtMassVoxelExtractor.C:    float *y = (float *) rgrid->GetYCoordinates()->GetVoidPointer(0);
avt/Filters/avtMassVoxelExtractor.C:    float *z = (float *) rgrid->GetZCoordinates()->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        float *oldx = (float *)mesh->GetXCoordinates()->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        float *oldy = (float *)mesh->GetYCoordinates()->GetVoidPointer(0);
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        float *oldz = (float *)mesh->GetZCoordinates()->GetVoidPointer(0);
avt/Expressions/General/avtMeshCoordinateExpression.C:        float *X = (float *) rg->GetXCoordinates()->GetVoidPointer(0);
avt/Expressions/General/avtMeshCoordinateExpression.C:        float *Y = (float *) rg->GetYCoordinates()->GetVoidPointer(0);
avt/Expressions/General/avtMeshCoordinateExpression.C:        float *Z = (float *) rg->GetZCoordinates()->GetVoidPointer(0);
avt/Expressions/General/avtResradExpression.C:    float *X = (float *) rgrid->GetXCoordinates()->GetVoidPointer(0);
avt/Expressions/General/avtResradExpression.C:    float *Y = (float *) rgrid->GetYCoordinates()->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        float *x = (float *) rgrid->GetXCoordinates()->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        float *y = (float *) rgrid->GetYCoordinates()->GetVoidPointer(0);
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        float *z = (float *) rgrid->GetZCoordinates()->GetVoidPointer(0);
avt/Plotter/vtk/vtkOpenGLRectilinearGridMapper.C:       texCoords = (const float *)this->ColorCoordinates->GetVoidPointer(0);
avt/Plotter/vtk/vtkOpenGLStructuredGridMapper.C:       texCoords = (const float *)this->ColorCoordinates->GetVoidPointer(0);
visit_vtk/full/vtkSlicer.C:    float        *X      = (float* ) rg->GetXCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkSlicer.C:    float        *Y      = (float* ) rg->GetYCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkSlicer.C:    float        *Z      = (float* ) rg->GetZCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:            X = (float* ) rg->GetXCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:            Y = (float* ) rg->GetYCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItClipper.C:            Z = (float* ) rg->GetZCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItContourFilter.C:    float        *X      = (float* ) rg->GetXCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItContourFilter.C:    float        *Y      = (float* ) rg->GetYCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItContourFilter.C:    float        *Z      = (float* ) rg->GetZCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItSplitter.C:            X = (float* ) rg->GetXCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItSplitter.C:            Y = (float* ) rg->GetYCoordinates()->GetVoidPointer(0);
visit_vtk/full/vtkVisItSplitter.C:            Z = (float* ) rg->GetZCoordinates()->GetVoidPointer(0);

Code that creates single precision coordinates

vtkPoints::New() creates a vtkPoints object that uses float coordinates. If double precision coordinates were present in the input then we should be calling vtkPoints::New(dataType) where dataType is the precision of the input dataset's coordinates.

This may make double-precision coordinates too difficult to support. VTK suffers from this problem as well, causing the coordinates of some filters to emerge as float when the input precision had been double.

May be valid use-case (eg creating points with no need for double precision)

avt/Filters/avtLineScanFilter.C:            pts[i] = vtkPoints::New();
avt/Filters/avtLineScanFilter.C:    vtkPoints *ipts = vtkPoints::New();
avt/Filters/avtLineScanFilter.C:    vtkPoints *cpts = vtkPoints::New();
avt/Filters/avtLineScanFilter.C:    vtkPoints *pts = vtkPoints::New();
avt/Filters/avtLineScanFilter.C:    vtkPoints *pts = vtkPoints::New();
avt/Filters/avtPointToGlyphFilter.C:        vtkPoints *pts = vtkPoints::New();
avt/Filters/avtPointToGlyphFilter.C:        vtkPoints *pts2D = vtkPoints::New();
avt/Filters/avtPointToGlyphFilter.C:        vtkPoints *pts = vtkPoints::New();
avt/Filters/avtPointToGlyphFilter.C:        vtkPoints *pts2D = vtkPoints::New();
avt/Filters/avtPointToGlyphFilter.C:        vtkPoints *pts = vtkPoints::New();
avt/Filters/avtPointToGlyphFilter.C:        vtkPoints *pts2D = vtkPoints::New();
avt/Plotter/avtLabelActor.C:    vtkPoints *points = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts2D = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts2D = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts2D = vtkPoints::New();
avt/Plotter/avtPointGlypher.C:        vtkPoints *pts = vtkPoints::New();
avt/Database/Database/avtTransformManager.C:   vtkPoints *newpts = vtkPoints::New(); /* valid, in routine converting to FLOAT */
avt/Pipeline/Data/avtDataRepresentation.C:    vtkPoints           *dummyPoints = vtkPoints::New();
avt/Plotter/vtk/vtkBackgroundActor.C:        vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkBackgroundActor.C:        vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkLineLegend.C:  vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkLineLegend.C:  vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkMultiFontVectorText.C:    vtkPoints *newPoints = vtkPoints::New();
avt/Plotter/vtk/vtkTimeSliderActor.C:    vtkPoints *points = vtkPoints::New();
avt/Plotter/vtk/vtkVisItScalarBarActor.C:  vtkPoints *ticPts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItScalarBarActor.C:  vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItScalarBarActor.C:  vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItScalarBarWithOpacityActor.C:  vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Interactors/Lineout2D.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Interactors/Zoom2D.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Interactors/Zoom2D.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Interactors/ZoomInteractor.C:    vtkPoints *pts = vtkPoints::New();

Done (Modified to preserve coordinate type):

avt/Filters/avtCoordSystemConvert.C:    vtkPoints *newPts = vtkPoints::New();
avt/Filters/avtCoordSystemConvert.C:    vtkPoints *new_pts = vtkPoints::New();
avt/Filters/avtDisplaceFilter.C:        vtkPoints *pts = vtkPoints::New();
avt/Filters/avtFacelistFilter.C:    vtkPoints *pts = vtkPoints::New();
avt/Filters/avtFeatureEdgesFilter.C:        vtkPoints *pts = vtkPoints::New();
avt/Filters/avtLineoutFilter.C:    vtkPoints *pts = vtkPoints::New();
avt/Filters/avtThresholdFilter.C:    vtkPoints *outMeshPoints = vtkPoints::New();
avt/Filters/avtTransform.C:    vtkPoints *pts = vtkPoints::New();
avt/Filters/avtWarpFilter.C:    vtkPoints *pts = vtkPoints::New();
avt/Plotter/avtTransparencyActor.C:            vtkPoints *pts = vtkPoints::New();
avt/Database/Database/avtGenericDatabase.C:    vtkPoints *pts = vtkPoints::New();
avt/Database/Database/avtGenericDatabase.C:            vtkPoints *newPts = vtkPoints::New();
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        vtkPoints            *outp  = vtkPoints::New();
avt/Database/Ghost/avtUnstructuredDomainBoundaries.C:      vtkPoints            *outp  = vtkPoints::New();
avt/MIR/Discrete/DiscreteMIR.C:        outPts = vtkPoints::New();
avt/MIR/Tet/TetMIR.C:        outPts = vtkPoints::New();
avt/MIR/Youngs/vtkYoungsMaterialInterface.C:    vtkPoints *pts = vtkPoints::New();
avt/MIR/Youngs/vtkYoungsMaterialInterface.C:        vtkPoints* points = vtkPoints::New();
avt/MIR/Zoo/ZooMIR.C:        outPts = vtkPoints::New();
avt/Pipeline/Data/avtCommonDataFunctions.C:        vtkPoints *pts = vtkPoints::New();
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        vtkPoints *pts = vtkPoints::New();
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:    vtkPoints *pts = vtkPoints::New();
avt/Queries/Pick/avtCurvePickQuery.C:        vtkPoints *pts = vtkPoints::New();
avt/Queries/Queries/avtLineScanQuery.C:    vtkPoints *outPts = vtkPoints::New();
operators/AMRStitchCell/avtAMRStitchCellFilter.C:    vtkPoints *stitchCellPts = vtkPoints::New();
operators/Box/avtBoxFilter.C:    vtkPoints *pts = vtkPoints::New();
operators/Cone/avtConeFilter.C:    vtkPoints *newPts = vtkPoints::New();
operators/CoordSwap/avtCoordSwapFilter.C:        vtkPoints *out_pts = vtkPoints::New();
operators/CreateBonds/avtCreateBondsFilter.C:    vtkPoints    *outPts   = vtkPoints::New();
operators/CreateBonds/avtCreateBondsFilter.C:    vtkPoints    *outPts   = vtkPoints::New();
operators/DeformSphereGlyph/avtDeformSphereGlyphFilter.C:    vtkPoints *pts = vtkPoints::New();
operators/Extrude/avtExtrudeFilter.C:    vtkPoints *points = vtkPoints::New();
operators/Extrude/avtExtrudeFilter.C:        points = vtkPoints::New();
operators/IndexSelect/avtIndexSelectFilter.C:     vtkPoints *new_pts = vtkPoints::New();
operators/MetricThreshold/avtMetricThresholdFilter.C:    vtkPoints *pts = vtkPoints::New();
operators/Project/avtProjectFilter.C:    vtkPoints *pts = vtkPoints::New();
operators/Reflect/avtReflectFilter.C:    vtkPoints *outPts = vtkPoints::New();
operators/Replicate/avtReplicateFilter.C:    vtkPoints *outPts = vtkPoints::New();
operators/Replicate/avtReplicateFilter.C:    vtkPoints    *outPts   = vtkPoints::New();
operators/Revolve/avtRevolveFilter.C:    vtkPoints *pts = vtkPoints::New();
operators/SubdivideQuads/avtSubdivideQuadsFilter.C:    vtkPoints *new_pts = vtkPoints::New();
operators/ToroidalPoloidalProjection/avtToroidalPoloidalProjectionFilter.C:    vtkPoints *outPts = vtkPoints::New();
plots/MultiCurve/avtMultiCurveFilter.C:        vtkPoints *points = vtkPoints::New();
avt/Plotter/vtk/vtkParallelImageSpaceRedistributor.C:            vtkPoints *newPts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItAxisActor.C:  this->minorTickPts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItAxisActor.C:  this->majorTickPts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItAxisActor.C:  this->gridlinePts  = vtkPoints::New();
avt/Plotter/vtk/vtkVisItAxisActor.C:  vtkPoints *pts = vtkPoints::New();
avt/Plotter/vtk/vtkVisItAxisActor2D.C:  vtkPoints *pts = vtkPoints::New();
avt/QtVisWindow/vtk/vtkDashedXorGridMapper2D_body.C:        displayPts = vtkPoints::New();
avt/QtVisWindow/vtk/vtkRubberBandMapper2D_body.C:        displayPts = vtkPoints::New();
avt/VisWindow/Colleagues/VisWinTools.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Colleagues/avtLine2DColleague.C:    vtkPoints* points = vtkPoints::New();
avt/VisWindow/Colleagues/avtLine2DColleague.C:    vtkPoints* pointsBegin = vtkPoints::New();
avt/VisWindow/Colleagues/avtLine2DColleague.C:    vtkPoints* pointsEnd = vtkPoints::New();
avt/VisWindow/Tools/VisitBoxTool.C:            vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Tools/VisitLineTool.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Tools/VisitPlaneTool.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Tools/VisitPlaneTool.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Tools/VisitPlaneTool.C:    vtkPoints *pts = vtkPoints::New();
avt/VisWindow/Tools/VisitPointTool.C:    vtkPoints *pts = vtkPoints::New();
visit_vtk/full/vtkConnectedTubeFilter.C:    vtkPoints     *newPts     = vtkPoints::New();
visit_vtk/full/vtkLineoutFilter.C:  vtkPoints *outPts = vtkPoints::New();
visit_vtk/full/vtkOnionPeelFilter.C:    vtkPoints           *newGridPts = vtkPoints::New();
visit_vtk/full/vtkPolyDataOnionPeelFilter.C:    vtkPoints           *newGridPts = vtkPoints::New();
visit_vtk/full/vtkRectilinearGridFacelistFilter.C:  vtkPoints *pts = vtkPoints::New();
visit_vtk/full/vtkRectilinearGridFacelistFilter.C:  vtkPoints *pts = vtkPoints::New();
visit_vtk/full/vtkRectilinearLinesNoDataFilter.C:    vtkPoints *pts = vtkPoints::New();
visit_vtk/full/vtkSurfaceFilter.C:  vtkPoints *outPoints = vtkPoints::New();
visit_vtk/full/vtkSurfaceFilter.C:  vtkPoints *outPoints = vtkPoints::New();
visit_vtk/full/vtkSurfaceFromVolume.C:    vtkPoints *outPts = vtkPoints::New()
visit_vtk/full/vtkTensorReduceFilter.C:  vtkPoints *outpts = vtkPoints::New();;
visit_vtk/full/vtkUniqueFeatureEdges.C:  newPts = vtkPoints::New();
visit_vtk/full/vtkUnstructuredGridRelevantPointsFilter.C:  vtkPoints *newPts = vtkPoints::New();
visit_vtk/full/vtkVectorReduceFilter.C:  vtkPoints *outpts = vtkPoints::New();
visit_vtk/full/vtkVertexFilter.C:  vtkPoints *outPts  = vtkPoints::New();
visit_vtk/full/vtkVisItCutter.C:  newPoints = vtkPoints::New();
visit_vtk/full/vtkVisItCutter.C:  newPoints = vtkPoints::New();
visit_vtk/full/vtkVisItFeatureEdges.C:  newPts = vtkPoints::New();
visit_vtk/full/vtkVisItTubeFilter.C:    newPts = vtkPoints::New();
visit_vtk/full/vtkVolumeFromVolume.C:    vtkPoints *outPts = vtkPoints::New();
visit_vtk/lightweight/vtkEnumThreshold.C:    newPoints = vtkPoints::New();
visit_vtk/lightweight/vtkEnumThreshold.C:                            vtkPoints *dummyPoints = vtkPoints::New();
visit_vtk/lightweight/vtkPolyDataRelevantPointsFilter.C:  vtkPoints *newPts = vtkPoints::New();
visit_vtk/lightweight/vtkVisItUtility.C:            pts = vtkPoints::New();
visit_vtk/lightweight/vtkVisItUtility.C:        pts = vtkPoints::New();

To be modified:

avt/Filters/avtSamplePointToSurfaceFilter.C:        vtkPoints *pts = vtkPoints::New();
avt/Filters/avtStreamlinePolyDataFilter.C:    vtkPoints     *points   = vtkPoints::New();
operators/FiveFoldTetSubdivision/avtFiveFoldTetSubdivisionFilter.C:    vtkPoints *points = vtkPoints::New(); 
operators/LineSampler/avtLineSamplerFilter.C:          uGrid->SetPoints( vtkPoints::New() );
operators/LineSampler/avtLineSamplerFilter.C:              vtkPoints *points = vtkPoints::New();
operators/LineSampler/avtLineSamplerFilter.C:  vtkPoints *points = vtkPoints::New();
operators/LineSampler/avtLineSamplerFilter.C:    vtkPoints *points = vtkPoints::New();
operators/LineSampler/avtLineSamplerFilter.C:    vtkPoints *points = vtkPoints::New();
operators/LineSampler/avtLineSamplerFilter.C:  vtkPoints *points = vtkPoints::New();
operators/LineSurface/avtLineSurfaceFilter.C:    vtkPoints   *pts = vtkPoints::New();
operators/PersistentParticles/avtPersistentParticlesFilter.C:          particlePathData->SetPoints( vtkPoints::New() );
plots/Histogram/avtHistogramFilter.C:        vtkPoints *pts = vtkPoints::New();
plots/Histogram/avtHistogramFilter.C:        vtkPoints *pts = vtkPoints::New();

plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:        histPoints[i] = vtkPoints::New();
plots/ParallelCoordinates/avtParallelCoordinatesFilter.C:    dataCurvePoints = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:    vtkPoints *pt = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:        vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:                vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:              vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:              vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:                vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:    vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:        points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:    vtkPoints *points = vtkPoints::New();
plots/Poincare/avtPoincareFilter.C:    vtkPoints *points = vtkPoints::New();
plots/Scatter/avtScatterFilter.C:    vtkPoints *pts = vtkPoints::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:        vtkPoints *pts = vtkPoints::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkPoints *pts = vtkPoints::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkPoints *pts = vtkPoints::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkPoints *pts = vtkPoints::New();
plots/WellBore/avtWellBoreFilter.C:    vtkPoints *points = vtkPoints::New();

Still to be checked:

visit_vtk/full/vtkCSGGrid.C:    vtkPoints *boxPoints = vtkPoints::New();
visit_vtk/full/vtkCSGGrid.C:    vtkPoints *boxPoints = vtkPoints::New();
visit_vtk/full/vtkCSGGrid.C:    vtkPoints *points = vtkPoints::New();
visit_vtk/full/vtkVectorGlyph.C:    vtkPoints *pts = vtkPoints::New();
visit_vtk/full/vtkVisItGlyph3D.C:    vtkPoints *defaultPoints = vtkPoints::New();
visit_vtk/full/vtkVisItGlyph3D.C:  newPts = vtkPoints::New();
visit_vtk/full/vtkVisItPolyDataNormals.C:    vtkPoints *outPts = vtkPoints::New();
visit_vtk/full/vtkVisItPolyDataNormals.C:    vtkPoints *outPts = vtkPoints::New();
visit_vtk/full/vtkVisItStreamLine.C:    newPts  = vtkPoints::New();
visit_vtk/full/vtkVisItTensorGlyph.C:  newPts = vtkPoints::New();
visit_vtk/lightweight/vtkVisItCellLocator.C:  pts = vtkPoints::New();
visit_vtk/lightweight/vtkVisItPointLocator.C:  pts = vtkPoints::New();

Code that creates vtkFloatArray

Here is some code that creates a vtkFloatArray. Depending on the filter's input precision these places may need to instead create vtkDoubleArray. We'll have to audit these sources.

Still to be checked:

avt/DataBinning/avtDataBinning.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/DataBinning/avtDataBinning.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/DataBinning/avtUniformBinningScheme.C:        vtkFloatArray *arr = vtkFloatArray::New();
avt/VisWindow/Colleagues/avtLine2DColleague.C:    vtkFloatArray* pcoords = vtkFloatArray::New();
avt/VisWindow/Colleagues/avtLine2DColleague.C:    vtkFloatArray* pcoordsBegin = vtkFloatArray::New();
avt/VisWindow/Colleagues/avtLine2DColleague.C:    vtkFloatArray* pcoordsEnd = vtkFloatArray::New();
operators/ChannelComm/avtChannelCommFilter.C:    vtkFloatArray *x = vtkFloatArray::New();
operators/ChannelComm/avtChannelCommFilter.C:    vtkFloatArray *y = vtkFloatArray::New();
operators/ChannelComm/avtChannelCommFilter.C:    vtkFloatArray *z = vtkFloatArray::New();
operators/ChannelComm/avtChannelCommFilter.C:    vtkFloatArray *arr = vtkFloatArray::New();
operators/Cone/avtConeFilter.C:    vtkFloatArray *x = vtkFloatArray::New();
operators/Cone/avtConeFilter.C:    vtkFloatArray *y = vtkFloatArray::New();
operators/Cone/avtConeFilter.C:    vtkFloatArray *z = vtkFloatArray::New();
operators/Cone/avtConeFilter.C:    vtkFloatArray *x = vtkFloatArray::New();
operators/Cone/avtConeFilter.C:    vtkFloatArray *y = vtkFloatArray::New();
operators/Cone/avtConeFilter.C:    vtkFloatArray *z = vtkFloatArray::New();
operators/ExtremeValueAnalysis/avtRExtremesFilter.C    vtkFloatArray *outVar = vtkFloatArray::New();
operators/FFT/avtFFTFilter.C    vtkFloatArray *vals = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:    vtkFloatArray *component = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:    vtkFloatArray *arr = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:    vtkFloatArray *arr = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:        vtkFloatArray* lxcoord = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:        vtkFloatArray* lycoord = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:        vtkFloatArray* lzcoord = vtkFloatArray::New();
operators/Ftle/avtFTLEFilter.C:        vtkFloatArray *component = vtkFloatArray::New();
operators/Lagrangian/avtLagrangianFilter.C    vtkFloatArray *vals = vtkFloatArray::New();
operators/LineSampler/avtLineSamplerFilter.C:              vtkFloatArray *scalars = vtkFloatArray::New();
operators/LineSampler/avtLineSamplerFilter.C:  vtkFloatArray *scalars = (allocateScalars ? vtkFloatArray::New() : NULL );
operators/LineSampler/avtLineSamplerFilter.C:    vtkFloatArray *scalars = (allocateScalars ? vtkFloatArray::New() : NULL );
operators/LineSampler/avtLineSamplerFilter.C:    vtkFloatArray *scalars = (allocateScalars ? vtkFloatArray::New() : NULL );
operators/LineSampler/avtLineSamplerFilter.C:  vtkFloatArray *scalars = (allocateScalars ? vtkFloatArray::New() : NULL );
operators/ModelBasedClustering/avtRModelBasedClustering.C:    vtkFloatArray *outVar = vtkFloatArray::New();
operators/ModelFit/avtModelFitFilter.C:        arr = vtkFloatArray::New();
operators/ModelFit/avtModelFitFilter.C:        arr2 = vtkFloatArray::New();
operators/PDF/avtPDFFilter.C:    vtkFloatArray *x = vtkFloatArray::New();
operators/PDF/avtPDFFilter.C:    vtkFloatArray *y = vtkFloatArray::New();
operators/PDF/avtPDFFilter.C:    vtkFloatArray *z = vtkFloatArray::New();
operators/PDF/avtPDFFilter.C:    vtkFloatArray *densityV = vtkFloatArray::New();
operators/PeaksOverThreshold/avtRPOTFilter.C:  vtkFloatArray *outVar = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:    vtkFloatArray *arr = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:        vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:                vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:              vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:              vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:                vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:    vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:        scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:    vtkFloatArray *scalars = vtkFloatArray::New();
plots/Poincare/avtPoincareFilter.C:    vtkFloatArray *scalars = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:        vtkFloatArray *normals = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *scalars = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *params = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:        thetas = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:        opacity = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *norms = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *scalars = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *params = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *norms = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *scalars = vtkFloatArray::New();
plots/Streamline/avtOpenGLStreamlineRenderer.C:    vtkFloatArray *params = vtkFloatArray::New();
plots/WellBore/avtWellBoreFilter.C:        normals = vtkFloatArray::New();
plots/Volume/avtLowerResolutionVolumeFilter.C:        vtkFloatArray *gm = vtkFloatArray::New();

These have been verified and/or modified:

avt/FileWriter/avtDatasetFileWriter.C:        vtkFloatArray *tcoords = vtkFloatArray::New();
avt/Filters/avtCoordSystemConvert.C:    vtkFloatArray *x = vtkFloatArray::New();
avt/Filters/avtCoordSystemConvert.C:    vtkFloatArray *y = vtkFloatArray::New();
avt/Filters/avtCoordSystemConvert.C:    vtkFloatArray *z = vtkFloatArray::New();
avt/Filters/avtNamedSelectionFilter.C:        vtkFloatArray *arr = vtkFloatArray::New();
avt/Filters/avtRExtremesFilter.C:        vtkFloatArray *outVar = vtkFloatArray::New();
avt/Filters/avtResampleFilter.C:        vars[i] = vtkFloatArray::New();
avt/Filters/avtResampleFilter.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Filters/avtSamplePointToSurfaceFilter.C:        vtkFloatArray *arr = vtkFloatArray::New();
avt/Filters/avtSamplePointToSurfaceFilter.C:        vtkFloatArray *cell_valid = vtkFloatArray::New();
avt/Filters/avtShiftCenteringFilter.C:                vtkFloatArray *fa = vtkFloatArray::New();
avt/Filters/avtShiftCenteringFilter.C:                vtkFloatArray *fa = vtkFloatArray::New();
avt/Filters/avtSimilarityTransformFilter.C:        vtkFloatArray *transScalars = vtkFloatArray::New();
avt/Filters/avtStreamlinePolyDataFilter.C:    vtkFloatArray *scalars  = vtkFloatArray::New();
avt/Filters/avtStreamlinePolyDataFilter.C:    vtkFloatArray *params   = vtkFloatArray::New();
avt/Filters/avtStreamlinePolyDataFilter.C:    vtkFloatArray *tangents = vtkFloatArray::New();
avt/Filters/avtStreamlinePolyDataFilter.C:        thetas = vtkFloatArray::New();
avt/Filters/avtStreamlinePolyDataFilter.C:        opacity = vtkFloatArray::New();
avt/Filters/avtStreamlinePolyDataFilter.C:        scaleTubeRad = vtkFloatArray::New();
avt/Filters/avtSurfaceFilter.C:    vtkFloatArray *outScalars  = vtkFloatArray::New();
avt/Filters/avtTransform.C:        vtkFloatArray *ct = vtkFloatArray::New();
avt/Filters/avtXRayFilter.C:            vtkFloatArray *imageArray = vtkFloatArray::New();
avt/IVP/MemStream.C:        array = vtkFloatArray::New();
avt/Plotter/avtTransparencyActor.C:                newNormals = vtkFloatArray::New();
avt/Database/Database/avtGenericDatabase.C:    vtkFloatArray *allOnes = vtkFloatArray::New();
avt/Database/Database/avtGenericDatabase.C:                out[i] = vtkFloatArray::New();
avt/Database/Database/avtTransformManager.C:        newArr = vtkFloatArray::New();
avt/Database/Database/avtTransformManager.C:            rv = vtkFloatArray::New();
avt/Database/Ghost/avtIsenburgSGG.C:    vtkFloatArray *X = vtkFloatArray::New();
avt/Database/Ghost/avtIsenburgSGG.C:    vtkFloatArray *Y = vtkFloatArray::New();
avt/Database/Ghost/avtIsenburgSGG.C:    vtkFloatArray *Z = vtkFloatArray::New();
avt/Database/Ghost/avtIsenburgSGG.C:    vtkFloatArray *out_array = vtkFloatArray::New();
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        out[d] = vtkFloatArray::New(); 
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        out[d] = vtkFloatArray::New(); 
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        vtkFloatArray         *x     = vtkFloatArray::New();
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        vtkFloatArray         *y     = vtkFloatArray::New();
avt/Database/Ghost/avtStructuredDomainBoundaries.C:        vtkFloatArray         *z     = vtkFloatArray::New();
avt/Expressions/Abstract/avtUnaryMathExpression.C:        dv = vtkFloatArray::New();
avt/Expressions/CMFE/avtPosCMFEAlgorithm.C:        vtkFloatArray *addarr = vtkFloatArray::New();
avt/Expressions/Derivations/avtCurvatureExpression.C:    vtkFloatArray *flt_curvature = vtkFloatArray::New();
avt/Expressions/Derivations/avtDisplacementExpression.C:    vtkFloatArray *out = vtkFloatArray::New();
avt/Expressions/Derivations/avtLocalizedCompactnessExpression.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/Derivations/avtStrainAlmansiExpression.C:    vtkFloatArray *out = vtkFloatArray::New();
avt/Expressions/Derivations/avtStrainGreenLagrangeExpression.C:    vtkFloatArray *out = vtkFloatArray::New();
avt/Expressions/Derivations/avtStrainInfinitesimalExpression.C:    vtkFloatArray *out = vtkFloatArray::New();
avt/Expressions/Derivations/avtStrainRateExpression.C:    vtkFloatArray *out = vtkFloatArray::New();
avt/Expressions/General/avtApplyEnumerationExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtApplyMapExpression.C:        vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtArrayComposeExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtArrayComposeWithBinsExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtArrayDecomposeExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtConstantFunctionExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtCoordinateExtremaExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtDataIdExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtDegreeExpression.C:    vtkFloatArray *dv = vtkFloatArray::New();
avt/Expressions/General/avtDominantMaterialExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtFindExternalExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtGeodesicVectorQuantizeExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtGradientExpression.C:        vtkDataArray *results = vtkFloatArray::New();
avt/Expressions/General/avtGradientExpression.C:            vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtGradientExpression.C:            vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtGradientExpression.C:    vtkDataArray *results = vtkFloatArray::New();
avt/Expressions/General/avtGradientExpression.C:    vtkFloatArray *res_vec= vtkFloatArray::New();
avt/Expressions/General/avtGradientExpression.C:    vtkFloatArray *cellGrad = vtkFloatArray::New();
avt/Expressions/General/avtKeyAggregatorExpression.C:    vtkFloatArray *res_array = vtkFloatArray::New();
avt/Expressions/General/avtMIRvfExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtMatvfExpression.C:        vtkFloatArray *dummy = vtkFloatArray::New();
avt/Expressions/General/avtMatvfExpression.C:    vtkFloatArray *vf_for_orig_cells = vtkFloatArray::New();
avt/Expressions/General/avtMatvfExpression.C:        rv = vtkFloatArray::New();
avt/Expressions/General/avtMeshCoordinateExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtNMatsExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtNeighborEvaluatorExpression.C:    vtkDataArray *results = vtkFloatArray::New();
avt/Expressions/General/avtPerMaterialValueExpression.C:    vtkFloatArray *res = vtkFloatArray::New();
avt/Expressions/General/avtProcessorIdExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtRandomExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/General/avtResampleExpression.C:        vtkFloatArray *newVar = vtkFloatArray::New();
avt/Expressions/General/avtSpecMFExpression.C:        vtkFloatArray *dummy = vtkFloatArray::New();
avt/Expressions/General/avtSpecMFExpression.C:    vtkFloatArray *mf_for_orig_cells = vtkFloatArray::New();
avt/Expressions/General/avtSpecMFExpression.C:    mf_for_orig_cells = vtkFloatArray::New();
avt/Expressions/General/avtSpecMFExpression.C:        vtkFloatArray *dummy = vtkFloatArray::New();
avt/Expressions/General/avtSpecMFExpression.C:        rv = vtkFloatArray::New();
avt/Expressions/General/avtSurfaceNormalExpression.C:    vtkFloatArray *n = vtkFloatArray::New();
avt/Expressions/General/avtViscousStressExpression.C:    vtkFloatArray *res_tensor = vtkFloatArray::New();
avt/Expressions/General/avtZoneTypeExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/Management/avtConstantCreatorExpression.C:        return vtkFloatArray::New();
avt/Expressions/Management/avtTimeExpression.C:        return vtkFloatArray::New();
avt/Expressions/Math/avtCylindricalCoordinatesExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/Math/avtCylindricalRadiusExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/Math/avtPolarCoordinatesExpression.C:    vtkFloatArray *rv = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtCornerAngle.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtEdgeLength.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtFacePlanarity.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtNeighborExpression.C:    vtkFloatArray *data = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtNodeDegreeExpression.C:    vtkFloatArray *dv = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtRevolvedSurfaceArea.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtRevolvedVolume.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtSideVolume.C:    vtkFloatArray *arr = vtkFloatArray::New();
avt/Expressions/MeshQuality/avtVerdictExpression.C:    vtkFloatArray *dv = vtkFloatArray::New();
avt/Expressions/TimeIterators/avtTimeIteratorDataTreeIteratorExpression.C:            vtkFloatArray *arr = vtkFloatArray::New();
avt/MIR/Base/MIR.C:    vtkFloatArray  *var         = vtkFloatArray::New();
avt/MIR/Youngs/YoungsMIR.C:        vf[m] = vtkFloatArray::New();
avt/MIR/Youngs/vtkYoungsMaterialInterface.C:            Mats[m].outPointArrays[nPointData-1] = vtkFloatArray::New();
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        vtkFloatArray *newX = vtkFloatArray::New();
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        vtkFloatArray *newY = vtkFloatArray::New();
avt/Pipeline/AbstractFilters/avtStructuredMeshChunker.C:        vtkFloatArray *newZ = vtkFloatArray::New();
avt/Pipeline/Data/avtImageRepresentation.C:       vtkFloatArray *zArray = vtkFloatArray::New();
avt/Queries/Misc/avtQueryOverTimeFilter.C:        vtkFloatArray *sc = vtkFloatArray::New();
avt/Queries/Misc/avtQueryOverTimeFilter.C:        vtkFloatArray *sc = vtkFloatArray::New();
avt/Queries/Misc/avtQueryOverTimeFilter.C:            vtkFloatArray *sc = vtkFloatArray::New();
operators/AMRStitchCell/avtAMRStitchCellFilter.C:        caseArray = vtkFloatArray::New();
operators/AMRStitchCell/avtAMRStitchCellFilter.C:    vtkFloatArray *xCoords = vtkFloatArray::New();
operators/AMRStitchCell/avtAMRStitchCellFilter.C:    vtkFloatArray *yCoords = vtkFloatArray::New();
operators/AMRStitchCell/avtAMRStitchCellFilter.C:        vtkFloatArray *zCoords = vtkFloatArray::New();
operators/AMRStitchCell/avtAMRStitchCellFilter.C:    vtkFloatArray *res_coords = vtkFloatArray::New();
operators/Context/avtContextFilter.C:    vtkFloatArray *outVar = vtkFloatArray::New();
operators/CracksClipper/avtCracksDensityFilter.C:    vtkFloatArray *den = vtkFloatArray::New();
operators/CracksClipper/vtkCrackWidthFilter.C:  vtkFloatArray *crack1Width = vtkFloatArray::New();
operators/CracksClipper/vtkCrackWidthFilter.C:  vtkFloatArray *crack2Width = vtkFloatArray::New();
operators/CracksClipper/vtkCrackWidthFilter.C:  vtkFloatArray *crack3Width = vtkFloatArray::New();
operators/CracksClipper/vtkCrackWidthFilter.C:  vtkFloatArray *cellCenters = vtkFloatArray::New();
operators/DualMesh/avtDualMeshFilter.C:    vtkFloatArray *res_coords = vtkFloatArray::New();
operators/DualMesh/avtDualMeshFilter.C:    vtkFloatArray *res_coords = vtkFloatArray::New();
operators/Extrude/avtExtrudeFilter.C:        coords[2] = vtkFloatArray::New();
operators/FiveFoldTetSubdivision/avtFiveFoldTetSubdivisionFilter.C:        minIdArray = vtkFloatArray::New();
operators/FiveFoldTetSubdivision/avtFiveFoldTetSubdivisionFilter.C:        maxIdArray = vtkFloatArray::New();
operators/FiveFoldTetSubdivision/avtFiveFoldTetSubdivisionFilter.C:        sIdArray = vtkFloatArray::New();
operators/FiveFoldTetSubdivision/avtFiveFoldTetSubdivisionFilter.C:        selectedArray = vtkFloatArray::New();
operators/FiveFoldTetSubdivision/avtFiveFoldTetSubdivisionFilter.C:        highlightedArray = vtkFloatArray::New();
operators/IndexSelect/avtIndexSelectFilter.C:       vtkDataArray *coor_new = vtkFloatArray::New();
operators/InverseGhostZone/avtInverseGhostZoneFilter.C:    vtkFloatArray *retainThese = vtkFloatArray::New();
plots/Label/avtLabelFilter.C:        vtkFloatArray *cellCenters = vtkFloatArray::New();
plots/Spreadsheet/avtSpreadsheetRenderer.C:        bounds=vtkFloatArray::New();
plots/Topology/avtTopologyFilter.C:        rv[i] = vtkFloatArray::New();
plots/Topology/avtTopologyFilter.C:    vtkDataArray *results = vtkFloatArray::New();

Filters which were changed from Double to Single

This was done so the filter in question would generate data compatible with the rest of the VisIt pipeline. However, the changes should be undone once the pipeline can support the desired data type.

  • vtkYoungsMaterialInterface.C: there's a line around 385 which looks like:
 Mats[m].outPointArrays[nPointData-1] = vtkFloatArray::New();

This was originally vtkDoubleArray::New().

Expressions

I think a lot of expressions use vtkFloatArray. We may need to make expressions smarter about which vtkDataArray type they return. For example, if a binary expression used a float array and a double array in a calculation, which type should it return? Also, if both inputs were double arrays then we should use double precision versions of math library functions if we are not already doing so.

Data structures that force the use of float

Some data structures in AVT only support float data, requiring uses of the classes to convert double data to float data. This conversion often happens in a database reader when assembling an instance of the class. It might be possible to use vtkDataArray instead of raw arrays in the data structures that do this to provide support for both float/double. There are ways of increasing performance in these cases to the previous raw level such as using avtAccessor and templates.

Class More information Status
avtMaterial internal volume fraction representation is float not started
avtSpecies internal mass fraction representation is float not started

Rendering

With VTK 5.8, VisIt's rendering system was largely replaced using VTK's new painter-based rendering system. With the change, support for rendering coordinates of different precisions was improved. We'll need to audit VisIt's custom renderers in plots and our mappers in the Plotter/vtk directory to make sure that they can at least support both float and double coordinates. When using double coordinates, double precision GL calls should be used (glVertex3d and the like).

Cosmological simulations and GIS datasets (ESRI shapefiles) often need double precision coordinates to represent shapes accurately so those types of datasets would be good test cases.