CryptographicTransferHash | Implements ITransferHasher by a user-specified cryptographic hash. |
HashVerificationException | Thrown when hash verification fails. |
TransferDriver | This class is the main entry point for starting transfers. The same instance should be reused for many executions, though not concurrently. This class allocates native memory (the amount depends on the parameters passed to ctor) which is held until disposal. |
TransferStateMachine | Data shared between ITransferWorker and TransferDriver that is used to manage execution. This class cannot be derived from outside of this assembly, but its public properties can be used to inspect the worker's status after execution. |
UnbufferedFile | Common implementation for file reader and writer. Uses unbuffered ("direct") file I/O. |
UnbufferedFileReader | File reader (producer) in a transfer operation. |
UnbufferedFileWriter | File writer (consumer) in a transfer operation. |
XX64TransferHash | Implements XXHash64 algorithm. |
IFileStreamOpenStrategy | Provides methods for creating unbuffered file streams from paths directly accessible to OS. |
ITransferBuffer | Data buffer shared between producer and consumers. |
ITransferConsumer | This interface must be implemented by the consumer-side of a transfer. |
ITransferHasher | This interface must be implemented by hash algorithms. The interface provides s default implementation for Clone, which just invokes Clone. |
ITransferProducer | This interface must be implemented by the producer-side of a transfer. |
ITransferWorker | Common properties and methods shared between ITransferProducer and ITransferConsumer. The implementation of async methods MUST check CancellationToken for cancellation. |