Exemple #1
0
    bool SendLoadPlan(string guid, byte pathNumber)
    {
        LoadPlan loadPlan = new LoadPlan();

        loadPlan.indexPath = pathNumber;
        guid = guid + "\0";
        return(clientUnity.client.sendTwoPartCommand(loadPlan, guid));
    }
Exemple #2
0
 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));
 }
Exemple #3
0
            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);
            }
Exemple #4
0
 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);
         }
     }
 }
Exemple #5
0
    /// <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);
    }
Exemple #6
0
 public ObjectViewRequest(LoadPlan plan, string requestedObjectViewName)
 {
     this.Plan = plan;
     this.RequestedObjectViewName = requestedObjectViewName;
 }
 public override void PrepareLoadPlan(LoadPlan plan, DataSession session)
 {
 }
Exemple #8
0
 internal abstract void PrepareLoadPlan(LoadPlan plan, DataSession session);
Exemple #9
0
 internal override void PrepareLoadPlan(LoadPlan plan, DataSession session)
 {
 }