예제 #1
0
파일: PyCintex.py 프로젝트: majacQ/root
    def __call__(self, *args):
        name = self.__name__[0 <= self.__name__.find('std::') and 5 or 0:]
        result = libPyROOT.MakeRootTemplateClass(name, *args)
        # special case pythonization (builtin_map is not available from the C-API)
        if hasattr(result, 'push_back'):

            def iadd(self, ll):
                [self.push_back(x) for x in ll]
                return self

            result.__iadd__ = iadd
        return result
예제 #2
0
      def __call__( self, *args ):
         newargs = [ self.__name__[ 0 <= self.__name__.find( 'std::' ) and 5 or 0:] ]
         for arg in args:
            if type(arg) == str:
               arg = ','.join( map( lambda x: x.strip(), arg.split(',') ) )
            newargs.append( arg )
         result = _backend.MakeRootTemplateClass( *newargs )

       # special case pythonization (builtin_map is not available from the C-API)
         if 'push_back' in result.__dict__:
            def iadd( self, ll ):
               [ self.push_back(x) for x in ll ]
               return self

            result.__iadd__ = iadd

         return result
예제 #3
0
    def __call__(self, *args):
        newargs = [self.__name__[0 <= self.__name__.find('std::') and 5 or 0:]]
        for arg in args:
            if type(arg) == str:
                arg = pystring.join(
                    map(lambda x: pystring.strip(x), pystring.split(arg, ',')),
                    ',')
            newargs.append(arg)
        result = _root.MakeRootTemplateClass(*newargs)

        # special case pythonization (builtin_map is not available from the C-API)
        if hasattr(result, 'push_back'):

            def iadd(self, ll):
                map(self.push_back, ll)
                return self

            result.__iadd__ = iadd

        return result
예제 #4
0
 def __call__(self, *args):
     name = self.__name__[0 <= self.__name__.find('std::') and 5 or 0:]
     return libPyROOT.MakeRootTemplateClass(name, *args)