public override ServiceSkel CreateSkel(object obj) { string objtype = RobotRaconteurNode.GetTypeString(ServiceSkelUtil.FindParentInterface(obj.GetType())); string objshort; if (CompareNamespace(objtype, out objshort)) { switch (objshort) { case "baseobj": return(new baseobj_skel((baseobj)obj)); case "subobj": return(new subobj_skel((subobj)obj)); default: break; } } else { string ext_service_type = RobotRaconteurNode.SplitQualifiedName(objtype).Item1; return(RobotRaconteurNode.s.GetServiceFactory(ext_service_type).CreateSkel(obj)); } throw new ServiceException("Could not create skel"); }
public override ServiceSkel CreateSkel(object obj) { string objtype = ServiceSkelUtil.UnfixName(ServiceSkelUtil.FindParentInterface(obj.GetType()).ToString()); if (RobotRaconteurNode.SplitQualifiedName(objtype.ToString())[0].TrimEnd(new char[] { '_' }) == "sensors.ati.mini45") { string sobjtype = RemovePath(objtype); switch (sobjtype) { case "ATImini45Host": return(new ATImini45Host_skel((ATImini45Host)obj)); case "ATImini45": return(new ATImini45_skel((ATImini45)obj)); default: break; } } else { string ext_service_type = RobotRaconteurNode.SplitQualifiedName(objtype.ToString())[0].TrimEnd(new char[] { '_' }); return(RobotRaconteurNode.s.GetServiceFactory(ext_service_type).CreateSkel(obj)); } throw new ServiceException("Could not create skel"); }