The <interface_name> class is generated for a particular IDL interface and is intended for use by client applications. This class provides all of the methods defined for a particular IDL interface. When a client uses an object reference to invoke methods on the object, the stub methods are actually invoked. The stub methods allow a client operation request to be packaged, sent to the object implementation, and the results to be reflected. This entire process is transparent to the client application.
The _POA_<class_name> class is an abstract base class generated by the IDL compiler, which is used to derive an object implementation class. Object implementations are usually derived from a servant class, which provides the necessary methods for receiving and interpreting client operation requests.
The _tie_<class_name> class is generated by the IDL compiler to aid in the creation of delegation implementations. The tie class allows you to create an object implementation that delegates all operation requests to another object. This allows you to use existing objects that you do not wish to inherit from the
CORBA::Object class.
The <class_name>_var class is generated for an IDL interface and provides simplified memory management semantics.