int Ng_GetSolidList (ClientData clientData, Tcl_Interp * interp, int argc, tcl_const char *argv[]) { CSGeometry * geometry = dynamic_cast<CSGeometry*> (ng_geometry.get()); if (!geometry) { Tcl_SetResult (interp, err_needscsgeometry, TCL_STATIC); return TCL_ERROR; } tcl_const char * valuevar = argv[1]; int i; stringstream vst; for (i = 1; i <= geometry->GetNSolids(); i++) { const Solid * sol = geometry->GetSolid(i); if (!sol->GetPrimitive()) vst << sol->Name() << " "; } cout << "solnames = " << vst.str() << endl; Tcl_SetVar (interp, valuevar, (char*)vst.str().c_str(), 0); return TCL_OK; }