/// <summary>
        /// Shows the internal elements of the Instance Hierarchy (level 0)
        /// </summary>
        /// <param name="ih">The ih.</param>
        private void ShowInternalElements(InstanceHierarchyType ih)
        {
            this.TotalElementCount = 0;
            this.InternalElementCollection.Clear();

            foreach (InternalElementType ie in ih.InternalElement)
            {
                ShowInternalElements(ie, 0);
            }
            OnPropertyChanged("InternalElements");
        }
        /**
         * This function searches for an internal element with a given name in a given hierarchy. Children of internal elements
         * get searched aswell.
         */
        private InternalElementType findInternalElement(InstanceHierarchyType hierarchy, CAEXDocument caex, string nameOfElement)
        {
            // Cycle through alle children elements in the hierarchy
            foreach (var internalElement in hierarchy)
            {
                if (internalElement.Name == nameOfElement) // element found
                {
                    return(internalElement);
                }
                else                                                                 // element is not the searched for element
                {
                    var cycleResult = cycleElements(internalElement, nameOfElement); // cycle through descendants

                    if (cycleResult.Name != null)                                    // element was found in the descendants
                    {
                        return(cycleResult);
                    }
                }
            }
            throw new Exception("No internal elements for this indexer " + hierarchy);
        }
Exemplo n.º 3
0
 public InstanceHierarchyViewModel(InstanceHierarchyType model, IAmlProvider provider)
     : base(provider)
 {
     _instanceHierarchy = model;
     Initialize();
 }
Exemplo n.º 4
0
 public InstanceHierarchyViewModel(IAmlProvider provider)
     : base(provider)
 {
     _instanceHierarchy = provider.CaexDocument.Create <InstanceHierarchyType>();
     Initialize();
 }