Foo represents a user-defined data-type that is intended to be distributed using DDS.
The type Foo is usually defined using IDL syntax and placed in a ".idl" file that is then processed using rtiddsgen. The rtiddsgen utility generates the helper classes FooSeq as well as the necessary code for DDS to manipulate the type (serialize it so that it can be sent over the network) as well as the implied FooDataReader and FooDataWriter types that allow the application to send and receive data of this type.