wb_name wb_orepmem::longName() { char str[200]; m_vrep->objectName( this, str); return wb_name( str); }
wb_object wb_volume::object(const char *name) const { pwr_tStatus sts; wb_orep *orep; wb_name n = wb_name(name); if (n.evenSts()) return wb_object(n.sts(), 0); if (!n.hasVolume() || n.volumeIsEqual(m_vrep->name())) // This volume orep = m_vrep->object(&sts, n); else // Other volume orep = m_vrep->erep()->object(&sts, n); wb_object o(sts, orep); return o; }
wb_orep *wb_vrepref::object(pwr_tStatus *sts, wb_name &name) { char cn[200]; char *s; strcpy( cn, name.name(cdh_mName_path | cdh_mName_object)); if ( (s = strchr( cn, '-'))) *s = ':'; wb_name cname(cn); if ( !cname) { *sts = LDH__NOSUCHOBJ; return 0; } wb_cdrep *cdrep = m_merep->cdrep( sts, wb_name(cname)); if ( EVEN(*sts)) return 0; wb_orepref *o = new wb_orepref( this, cdrep->cid()); delete cdrep; return (wb_orep *)o; }
wb_name wb_orepext::longName() { return wb_name( m_extobject.longname()); }
wb_name wb_vrepdbs::longName(pwr_tStatus* sts, const wb_orep* o) { return wb_name(); }