From Crypto++ Wiki
A BlockTransformation provides an interface for hash functions and the data processing portion of Block Ciphers. Since a BlockTransformation derives from BufferedTransformation, it can participate in Pipelining.
Classes derived from BlockTransformation are block ciphers in ECB mode (for example the DES::Encryption class), which are stateless, and they can make assumptions about the memory alignment of their inputs and outputs. These classes should not be used directly, but only in combination with a mode class (see CipherModeDocumentation in modes.h).