Exemplo n.º 1
0
            public override void Visit(AmlParser.DefDevice defDevice)
            {
                AbsoluteNodePath oldPath = currentPath;

                Node node = acpiNamespace.LookupNode(defDevice.nameString.nodePath, currentPath);

                string[] segments = new string[currentPath.NameSegments.Length
                                               + defDevice.nameString.nodePath.NameSegments.Length];

                int index = 0;

                foreach (string segment in currentPath.NameSegments)
                {
                    segments[index++] = segment;
                }

                foreach (string segment in defDevice.nameString.nodePath.NameSegments)
                {
                    segments[index++] = segment;
                }

                AbsoluteNodePath devPath = new AbsoluteNodePath(segments);

                node.Value = new AcpiObject.Device(devPath);

                currentPath = node.Path;
                foreach (AmlObject amlObject in defDevice.amlObjectList)
                {
                    amlObject.Accept(this);
                }

                currentPath = oldPath;
            }
Exemplo n.º 2
0
            public override void Visit(AmlParser.DefDevice defDevice)
            {
                AbsoluteNodePath oldPath = currentPath;

                Node node = acpiNamespace.CreateNodeAt(defDevice.nameString.nodePath, currentPath);

                currentPath = node.Path;
                foreach (AmlObject amlObject in defDevice.amlObjectList)
                {
                    amlObject.Accept(this);
                }

                currentPath = oldPath;
            }
Exemplo n.º 3
0
 public virtual void Visit(AmlParser.DefDevice defDevice)
 {
     UnhandledNodeType("DefDevice");
 }