We're in the process of 'unclassing' parts of PolyVox and replacing them with simple function calls instead. So you don't need to create an instance of 'raycastWithDirection', you simply call it as a function. From the unit test in TestRaycast.cpp:
Code:
RaycastTestFunctor raycastTestFunctor;
RaycastResult result = raycastWithDirection(&volData, start, randomUnitVectors[ct % 1024] * 1000.0f, raycastTestFunctor);
Note that RaycastTestFunctor is an example of a callback which you can provide yourself, which is executed for each voxel on the ray and which detemines whether traversal should continue.
However, if you are using it for picking then you might find the new 'pickVoxel' function easier as you don't need to worry about providing a callback. Instead you give it an example of an empty voxel. See TestPicking.cpp to see it being used.