bool SendLoadPlan(string guid, byte pathNumber) { LoadPlan loadPlan = new LoadPlan(); loadPlan.indexPath = pathNumber; guid = guid + "\0"; return(clientUnity.client.sendTwoPartCommand(loadPlan, guid)); }
public void Ensure(LoadPlan plan, string objectViewName) { for (int index = 0; index < this.Count; ++index) { LoadPlanBuilder.ObjectViewRequest objectViewRequest = this[index]; if (objectViewRequest.Plan == plan && objectViewRequest.RequestedObjectViewName == objectViewName) { return; } } this.Add((object)new LoadPlanBuilder.ObjectViewRequest(plan, objectViewName)); }
public LoadPlan EnsurePlan(MetadataClass cls) { for (int index = 0; index < this.PlansByClass.Count; ++index) { LoadPlan loadPlan = this.PlansByClass[index]; if (loadPlan.Class == cls) { return(loadPlan); } } LoadPlan loadPlan1 = this.Builder.BuildPlan(cls, this.SourceNode); this.PlansByClass.Add(loadPlan1); return(loadPlan1); }
public override void GetNavigationLoadPlans( DataSession session, LoadPlan sourcePlan, LoadPlanList navigationPlans) { sourcePlan.EnsureProperty(sourcePlan.Class.Properties.Need(this.FAssociationPropertyName)); for (int index = 0; index < sourcePlan.Links.Count; ++index) { AssociationRefLoadPlan link = sourcePlan.Links[index]; if (!(link.Ref.Association.Property.Name != this.FAssociationPropertyName)) { if (this.FRefClass != null && link.Ref.RefClass != this.FRefClass) { break; } navigationPlans.Add(link.Plan); } } }
/// <summary> /// Command to load a plan on the Plan executor /// </summary> /// <param name="loadPlan"></param> /// <param name="guid"></param> /// <returns></returns> public bool sendTwoPartCommand(LoadPlan loadPlan, string guid) { byte[] header_bytes = new byte[4] { (byte)'A', loadPlan.PlanHeader.module, loadPlan.PlanHeader.action, loadPlan.indexPath }; NetMQMessage req_msg = new NetMQMessage(); req_msg.Append(header_bytes); req_msg.Append(guid); NetMQ.Msg resp_msg = new StdMessage(0x00, 0x00).to_Msg(); // it will be filled when receiving the response ## la respuesta de dos partes sigue siendo de este tipo? reqSrv = new ReliableExternalClient( GlobalSettings.Instance.getRequestPort(), TimeSpan.FromMilliseconds(1000), 3); if (!reqSrv.sendAndReceive(ref req_msg, ref resp_msg)) { UnityEngine.Debug.Log("Client: server not respoding"); return(false); } return(true); }
public ObjectViewRequest(LoadPlan plan, string requestedObjectViewName) { this.Plan = plan; this.RequestedObjectViewName = requestedObjectViewName; }
public override void PrepareLoadPlan(LoadPlan plan, DataSession session) { }
internal abstract void PrepareLoadPlan(LoadPlan plan, DataSession session);
internal override void PrepareLoadPlan(LoadPlan plan, DataSession session) { }