Registered voxel types have some limitations:
Since modules do not inline the code of registered voxel data types, one voxel operation requires one call to the registered operation, i.e., registered data types are slightly slower than built-in data types. This is usually is not a problem because these operations are often complex so that the call itself is not that expensive compared to the real voxel operation. To achieve maximum performance, a module can also implement specialized code that does not work via registered types.
For performance and technical reasons, instances of new
voxel data types must have a constant size, they cannot have
dynamic members, and memcpy
() must be able to
copy them without using copy constructors.
(So-called "POD types", i.e. "plain old data" types.)
© 2024 MeVis Medical Solutions AG