protected override void load(int version, string agentType, List <property_t> properties) { base.load(version, agentType, properties); if (properties.Count > 0) { foreach (property_t p in properties) { if (p.name == "Domains") { m_domains = p.value; } else if (p.name == "DescriptorRefs") { this.m_descriptorRefs = (List <Descriptor_t>)StringUtils.FromString(typeof(List <Descriptor_t>), p.value, false); for (int i = 0; i < this.m_descriptorRefs.Count; ++i) { Descriptor_t d = this.m_descriptorRefs[i]; if (d.Descriptor != null) { d.Descriptor.SetDefaultValue(d.Reference); } } } else { //BEHAVIAC_ASSERT(0, "unrecognised property %s", p.name); } } } }
protected override void load(int version, string agentType, List <property_t> properties) { base.load(version, agentType, properties); if (properties.Count > 0) { foreach (property_t _t in properties) { if (_t.name == "Domains") { this.m_domains = _t.value; } else if (_t.name == "DescriptorRefs") { this.m_descriptorRefs = (List <Descriptor_t>)StringUtils.FromString(typeof(List <Descriptor_t>), _t.value, false); if (this.m_descriptorRefs != null) { for (int i = 0; i < this.m_descriptorRefs.Count; i++) { Descriptor_t _t2 = this.m_descriptorRefs[i]; if (_t2.Descriptor != null) { _t2.Descriptor.SetDefaultValue(_t2.Reference); } } } } } } }
public Descriptor_t Clone() { Descriptor_t descriptor = new Descriptor_t(); descriptor._attribute = (VariableDef)_attribute.Clone(); descriptor._reference = (VariableDef)_reference.Clone(); descriptor._descriptorWeight = _descriptorWeight; return descriptor; }
protected void SetDescriptors(string descriptors) { this.m_descriptors = (List <Descriptor_t>)StringUtils.FromString(typeof(List <Descriptor_t>), descriptors, false); for (int i = 0; i < this.m_descriptors.Count; i++) { Descriptor_t _t = this.m_descriptors[i]; _t.Attribute.SetDefaultValue(_t.Reference); } }
public void SetDescriptors(string descriptors) { this.m_descriptorRefs = (List <Descriptor_t>)StringUtils.FromString(typeof(List <Descriptor_t>), descriptors, false); for (int i = 0; i < this.m_descriptorRefs.Count; ++i) { Descriptor_t d = this.m_descriptorRefs[i]; d.Descriptor.SetDefaultValue(d.Reference); } }
public Descriptor_t Clone() { Descriptor_t descriptor = new Descriptor_t(); descriptor._attribute = (VariableDef)_attribute.Clone(); descriptor._reference = (VariableDef)_reference.Clone(); descriptor._descriptorWeight = _descriptorWeight; return(descriptor); }
public void SetDescriptors(string descriptors) { this.m_descriptorRefs = (List <Descriptor_t>)StringUtils.FromString(typeof(List <Descriptor_t>), descriptors, false); if (this.m_descriptorRefs != null) { for (int i = 0; i < this.m_descriptorRefs.Count; i++) { Descriptor_t _t = this.m_descriptorRefs[i]; _t.Descriptor.SetDefaultValue(_t.Reference); } } }
private static Property FindProperty(Descriptor_t q, List <BehaviorTree.Descriptor_t> c) { for (int i = 0; i < c.Count; i++) { BehaviorTree.Descriptor_t _t = c[i]; if (_t.Descriptor.GetVariableId() == q.Attribute.GetVariableId()) { return(_t.Descriptor); } } return(null); }
protected void SetDescriptors(string descriptors) { this.m_descriptors = (List <Descriptor_t>)StringUtils.FromString(typeof(List <Descriptor_t>), descriptors, false); if (this.m_descriptors == null) { return; } for (int i = 0; i < this.m_descriptors.Count; ++i) { Descriptor_t d = this.m_descriptors[i]; d.Attribute.SetDefaultValue(d.Reference); } }
static Property FindProperty(Descriptor_t q, List <BehaviorTree.Descriptor_t> c) { //BehaviorTree.Descriptor_t descriptor = c.Find(delegate (BehaviorTree.Descriptor_t it) { return it.Descriptor.GetVariableId() == q.Attribute.GetVariableId(); }); for (int i = 0; i < c.Count; ++i) { BehaviorTree.Descriptor_t descriptor = c[i]; if (descriptor.Descriptor.GetVariableId() == q.Attribute.GetVariableId()) { return(descriptor.Descriptor); } } return(null); }
static Property FindProperty(Descriptor_t q, List<BehaviorTree.Descriptor_t> c) { //BehaviorTree.Descriptor_t descriptor = c.Find(delegate (BehaviorTree.Descriptor_t it) { return it.Descriptor.GetVariableId() == q.Attribute.GetVariableId(); }); for (int i = 0; i < c.Count; ++i) { BehaviorTree.Descriptor_t descriptor = c[i]; if (descriptor.Descriptor.GetVariableId() == q.Attribute.GetVariableId()) { return descriptor.Descriptor; } } return null; }
private float ComputeSimilarity(List <Descriptor_t> q, List <BehaviorTree.Descriptor_t> c) { float num = 0f; for (int i = 0; i < q.Count; i++) { Descriptor_t _t = q[i]; Property other = FindProperty(_t, c); if (other != null) { float num3 = _t.Attribute.DifferencePercentage(other); num += (1f - num3) * _t.Weight; } } return(num); }
public override void CheckForErrors(BehaviorNode rootBehavior, List <ErrorCheck> result) { if (this.Domain == string.Empty && this._descriptors.Count == 0) { result.Add(new Node.ErrorCheck(this, ErrorCheckLevel.Error, "Invalid query without domain or any descriptors")); } for (int i = 0; i < this._descriptors.Count; ++i) { Descriptor_t dw = this._descriptors[i]; if (dw.Attribute != null && dw.Weight == 0.0f) { string msg = string.Format("Descriptors[{0}]'s Weight is 0.0f!", i); result.Add(new Node.ErrorCheck(this, ErrorCheckLevel.Error, msg)); } } base.CheckForErrors(rootBehavior, result); }
float ComputeSimilarity(List <Descriptor_t> q, List <BehaviorTree.Descriptor_t> c) { float similarity = 0.0f; for (int i = 0; i < q.Count; ++i) { Descriptor_t qi = q[i]; Property ci = FindProperty(qi, c); if (ci != null) { float dp = qi.Attribute.DifferencePercentage(ci); Debug.Check(dp >= 0.0f && dp <= 1.0f, "dp should be normalized to [0, 1], please check its scale"); similarity += (1.0f - dp) * qi.Weight; } } return(similarity); }
public Descriptor_t(Descriptor_t copy) { Descriptor = copy.Descriptor != null ? copy.Descriptor.clone() : null; Reference = copy.Reference != null ? copy.Reference.clone() : null; }
public Descriptor_t(Descriptor_t copy) { Attribute = copy.Attribute.clone(); Reference = copy.Reference.clone(); Weight = copy.Weight; }
public Descriptor_t(Descriptor_t copy) { Attribute = copy.Attribute; Reference = copy.Reference; Weight = copy.Weight; }
public Descriptor_t(Descriptor_t copy) { Descriptor = copy.Descriptor; Reference = copy.Reference; }
public Descriptor_t(Descriptor_t copy) { Descriptor = copy.Descriptor != null?copy.Descriptor.clone() : null; Reference = copy.Reference != null?copy.Reference.clone() : null; }