Listing 13

std::string
GTL::components(UncertainPtr const & u) {
   Set inputs;
   u->dependsOn(inputs);
   std::ostringstream ss;
   const Set::const iterator end( inputs.end() );
   Set::const iterator it;
   for(it=inputs.begin();it!=end;++it) {
      ILeaf const * i = *it;
      ss
         << i->name()
         << " : \t"
         << u->uComponent(i)
         << "\n";
   }
   return ss.str();
}