Пример #1
0
        private string m_name; // Name of this topic

        #endregion Fields

        #region Constructors

        /// <summary>
        /// Constructor. Used internally only.
        /// </summary>
        /// <param name="parent"></param>
        /// <param name="name"></param>
        internal Topic(Topic parent, string name)
        {
            m_children = new Dictionary<string, Topic>();
            Parent = parent;
            m_name = name;
        }
Пример #2
0
 /// <summary>
 /// Create (or retrieve) a direct child of this node by name
 /// </summary>
 /// <param name="name"></param>
 /// <returns></returns>
 protected Topic CreateDirectChild(string name)
 {
     Topic child;
     lock (m_children)
     {
         if (!m_children.TryGetValue(name, out child))
         {
             // Create the new child
             child = new Topic(this, name);
             m_children.Add(name, child);
         }
     }
     return child;
 }