XFA/Using Transfers
Since the transfer architecture is designed to be used from Perl, this document describes the Perl API. The C interface is similar, and the comments and declarations in xfer.h and xfer-element.h should provide enough detail to translate this article into C.
Available Transfer Elements
Amanda makes a wide array of transfer elements available. They are categorized as source, destination, or filter, and listed in the perldoc for Amanda::Xfer. Each has a constructor with arguments particular to the element. Some elements may have additional methods, which are also described in the perldoc.
my $src = Amanda::Xfer::Source::Random->new(10240, 0xF00);
Any combination of transfer elements can become a transfer, as long as the first element is a source, the last is a destination, and any intervening elements are filters. The XFA will select the most efficient means of connecting the elements.