/// <summary>Determines if the ID exists in this container</summary>
        /// <param name="sid"></param>
        /// <returns></returns>
        public bool ContainsStringId(StringId sid)
        {
            if (SetIsValid(sid.Set))
            {
                return(SetFromId(sid.Set).Set.ContainsKey(sid));
            }

            return(false);
        }
        string IStringIdContainer.GetStringIdValue(StringId sid)
        {
            string value = GetValue(sid);

            if (value == null)
            {
                throw new KeyNotFoundException(sid.ToString());
            }

            return(value);
        }
Esempio n. 3
0
		public string GetStringIdValue(StringId sid)
		{
			string value = m_staticCollection.GetValue(sid);

			if (value == null)
				value = m_dynamicCollection.GetValue(sid);

			if (value == null)
				throw new KeyNotFoundException(sid.ToString());

			return value;
		}
        internal string GetValue(StringId sid)
        {
            if (SetIsValid(sid.Set))
            {
                var set = SetFromId(sid.Set);
                if (sid.Index < set.Count)
                {
                    return(set.Set[sid]);
                }
            }

            return(null);
        }
        public string GetStringIdValue(StringId sid)
        {
            string value = m_staticCollection.GetValue(sid);

            if (value == null)
            {
                value = m_dynamicCollection.GetValue(sid);
            }

            if (value == null)
            {
                throw new KeyNotFoundException(sid.ToString());
            }

            return(value);
        }
        public bool TryAndGetStringId(string value, out StringId sid)
        {
            sid = StringId.kInvalid;

            var hc = value.GetHashCode();

            foreach (var set in m_sets)
            {
                StringId tgv;
                if (set.SetLookup.TryGetValue(hc, out tgv))
                {
                    sid = tgv;
                    return(true);
                }
            }

            return(false);
        }
        public void StreamFromXml(IO.XmlStream s)
        {
            int    set_id   = -1;
            string set_name = null;

            s.ReadAttribute("key", 10, ref set_id);
            s.ReadAttributeOpt("value", ref set_name);

            Id   = set_id;
            Name = set_name ?? kDefaultName;

            InitializeSets(s.Cursor.ChildNodes.Count);

            foreach (System.Xml.XmlNode n in s.Cursor.ChildNodes)
            {
                if (n.Name != "entry")
                {
                    continue;
                }

                uint   val_id = 0;
                string val    = null;

                s.SaveCursor(n as System.Xml.XmlElement);
                s.ReadAttribute("key", 16, ref val_id);
                s.ReadAttributeOpt("value", ref val);
                s.RestoreCursor();

                // If the definition didn't specify the value, generate a generic value as a placeholder
                if (val == null)
                {
                    val = string.Format("{0}{1}", kDefaultValuePrefix, val_id.ToString("X8"));
                }

                StringId sid = new StringId(Definition.Description, val_id);

                Set.Add(sid, val);
                SetLookup.Add(val.GetHashCode(), sid);
            }
        }
 /// <summary>Determines if the ID exists in this container</summary>
 /// <param name="sid"></param>
 /// <returns></returns>
 public bool ContainsStringId(StringId sid)
 {
     return(m_staticCollection.ContainsStringId(sid) || m_dynamicCollection.ContainsStringId(sid));
 }
        public bool TryAndGetStringId(string value, out StringId sid)
        {
            bool result = m_staticCollection.TryAndGetStringId(value, out sid);

            return(result || m_dynamicCollection.TryAndGetStringId(value, out sid));
        }
Esempio n. 10
0
		public bool TryAndGetStringId(string value, out StringId sid)
		{
			bool result = m_staticCollection.TryAndGetStringId(value, out sid);

			return result || m_dynamicCollection.TryAndGetStringId(value, out sid);
		}
Esempio n. 11
0
		/// <summary>Determines if the ID exists in this container</summary>
		/// <param name="sid"></param>
		/// <returns></returns>
		public bool ContainsStringId(StringId sid)
		{
			return m_staticCollection.ContainsStringId(sid) || m_dynamicCollection.ContainsStringId(sid);
		}
 public void Add(StringId sid, string value)
 {
     Set.Add(sid, value);
     SetLookup.Add(value.GetHashCode(), sid);
 }