Field3D
Todo List
Member Field3DInputFileHDF5::readMetadata (hid_t metadata_id)
Replace char* with std::string
"
Tune the chunk size of the gzip call
Member Field3DFileBase::getScalarLayerNames (std::vector< std::string > &names, const std::string &partitionName) const
Make this really only return scalar layers
Member Field3DFileBase::getVectorLayerNames (std::vector< std::string > &names, const std::string &partitionName) const
Make this really only return vector layers
Member Field3DFileBase::getIntScalarLayerNames (std::vector< std::string > &names, const std::string &intPartitionName) const
Make this really only return scalar layers
Member Field3DFileBase::getIntVectorLayerNames (std::vector< std::string > &names, const std::string &intPartitionName) const
Make this really only return vector layers
"
FIXME!
Member Field3DInputFileHDF5::parseLayer (hid_t loc_id, const std::string &partitionName, const std::string &layerName)
Set some sort of flag if we fail during this call. We can't throw exceptions inside hdf5.
Member Field3DInputFileHDF5::readMetadata (hid_t metadata_id, FieldBase::Ptr field) const
Replace char* with std::string
Class SparseField< Data_T >::iterator
Code duplication between this and const_iterator !!!!!!!!!!!!!
Member Field3DOutputFileHDF5::create (const std::string &filename, CreateMode cm=OverwriteMode)
If the file can't be created hdf5 spits out an ugly error msg, we should make sure that doesn't happen.
Member worldToVoxel (const Field3D::FieldMapping *mapping, const Box3d &wsBounds, Box3d &vsBounds)
Make this integrate over time
"

This is duplicated in FieldMapping.cpp. Fix.

This is duplicated in FieldMapping.cpp. Fix.

File Hdf5Util.cpp
The write attrib calls need some serious cleanup. They should be using scoped objects to open attributes and groups instead of all the replicated close calls.
Member detail::adjustedMIPFieldMapping (const FieldRes *base, const V3i &baseRes, const Box3i &extents, const size_t level)
Update to use MIPField's mipOffset() instead of metadata
"

The valuesPerBlock is wrong. Fix

Tune the chunk size of the gzip call

Member MatrixFieldMapping::localToWorldDir (const V3d &lsV, V3d &wsV) const
Generalize and make time-dependent.
Member FieldRes::FieldRes (const FieldRes &src)
OSS Go over the copy constructing - is it implemented right? 8hr
Member Field3DOutputFileHDF5::createNewPartition (const std::string &partitionName, const std::string &layerName, typename Field< Data_T >::Ptr field)
We should probably remove the group on disk if we can't write the mapping
Class FieldIO
Merge this into ClassFactory.
Class MatrixFieldMapping
Add calls for easily specifying the transform given grid size, offset, rotation, etc.
Class FrustumFieldMapping
Define local perspective space
Member MatrixFieldMapping::worldToVoxelDir (const V3d &wsV, V3d &vsV) const
Generalize and make time-dependent.
Member MatrixFieldMapping::voxelToWorldDir (const V3d &vsV, V3d &wsV) const
Generalize and make time-dependent.
Member MatrixFieldMapping::worldToLocalDir (const V3d &wsV, V3d &lsV) const
Generalize and make time-dependent.
Member isIdentical (typename Field< Data_T >::Ptr a, typename Field< Data_T >::Ptr b)
This should also check the mapping
Member MatrixFieldMapping::getLocalToVoxelMatrix (M44d &result)
Unit test this
Member FrustumFieldMapping::getLocalToVoxelMatrix (M44d &result)
Unit test this
File Hdf5Util.h
Clean up the attribute read/write functions. Make them throw exceptions when failing.
Class PluginLoader
Look into adding maya-style single-plugin load and unload functions
Member intrusive_ptr_release (RefBase *r)
Communicate with the FieldCache to prevent any cache updates from happening while this releases its count.
Class SparseField< Data_T >
Make this class thread safe!
Class SparseField< Data_T >::const_iterator
Code duplication between this and iterator!!!!!!!!!!!!!!!!!!!!!!