Below the dynamic loading block are two wrapper classes, one for error codes and descriptive text, and the other for the connection handle to disk.

The error wrapper appears in catch and throw statements to simplify error handling across functions.

Wrapper class VixDisk is a clean way to open and close connections to disk. The only time that library functions VixDiskLib_Open() and VixDiskLib_Close() appear elsewhere, aside from dynamic loading, is in the CopyThread() function near the end of the sample program.