def __init__(self, id, surface, minfilter=None, magfilter=None, xmlnode=None):
        self.id = id
        """The string identifier for the sampler within the local scope of the material"""
        self.surface = surface
        """Surface instance that this object samples from"""
        self.minfilter = minfilter
        """Minification filter string id, see collada spec for details"""
        self.magfilter = magfilter
        """Maximization filter string id, see collada spec for details"""
        if xmlnode != None:
            self.xmlnode = xmlnode
            """ElementTree representation of the sampler."""
        else:
            sampler_node = E.sampler2D(E.source(self.surface.id))
            if minfilter:
                sampler_node.append(E.minfilter(self.minfilter))
            if magfilter:
                sampler_node.append(E.magfilter(self.magfilter))

            self.xmlnode = E.newparam(sampler_node, sid=self.id)
Testing overridden APIExtraDataAccessHook put
dataset/ETHPy150Open pycollada/pycollada/collada/material.py/Sampler2D.__init__--crossover with--dataset/ETHPy150Open reviewboard/reviewboard/reviewboard/extensions/tests.py/APIExtraDataAccessHookTests.test_overridden_hook_put