edouard@1942: #!/usr/bin/env python
edouard@1942: # -*- coding: utf-8 -*-
edouard@1942: # This file is part of Beremiz.
edouard@1942: # See COPYING file for copyrights details.
edouard@1942: 
edouard@1942: from __future__ import absolute_import
edouard@1942: from plcopen.XSLTModelQuery import XSLTModelQuery
edouard@1942: 
Edouard@1953: 
edouard@1942: class InstancesPathCollector(XSLTModelQuery):
edouard@1942:     """ object for collecting instances path list"""
edouard@1942:     def __init__(self, controller):
edouard@1942:         self.Instances = []
edouard@1942:         XSLTModelQuery.__init__(self,
edouard@1942:                                 controller,
edouard@1942:                                 "instances_path.xslt",
edouard@1942:                                 [("AddInstance", self.AddInstance)])
edouard@1942: 
edouard@1942:     def AddInstance(self, context, *args):
edouard@1942:         self.Instances.append(args[0][0])
edouard@1942: 
edouard@1942:     def Collect(self, root, name, debug):
Edouard@1953:         self._process_xslt(root, debug, instance_type=name)
edouard@1942:         res = self.Instances
edouard@1942:         self.Instances = []
edouard@1942:         return res