Author: bugman Date: Sat Oct 18 17:55:41 2008 New Revision: 7809 URL: http://svn.gna.org/viewcvs/relax?rev=7809&view=rev Log: When instantiating the Processor via import_module(), all info is now stored in the Processor_box. The Processor instance, its name, and its class name are all stored in the singleton. Modified: branches/multi_processor_merge/multi/processor.py Modified: branches/multi_processor_merge/multi/processor.py URL: http://svn.gna.org/viewcvs/relax/branches/multi_processor_merge/multi/processor.py?rev=7809&r1=7808&r2=7809&view=diff ============================================================================== --- branches/multi_processor_merge/multi/processor.py (original) +++ branches/multi_processor_merge/multi/processor.py Sat Oct 18 17:55:41 2008 @@ -164,20 +164,30 @@ @rtype: multi.processor.Processor instance ''' + # The Processor details. processor_name = processor_name + '_processor' class_name = processor_name[0].upper() + processor_name[1:] module_path = '.'.join(('multi', processor_name)) - + # Load the module containing the specific processor. modules = import_module(module_path) - #print modules - + + # Access the class from within the module. if hasattr(modules[-1], class_name): clazz = getattr(modules[-1], class_name) else: raise Exception("can't load class %s from module %s" % (class_name, module_path)) + # Instantiate the Processor. object = clazz(callback=callback, processor_size=processor_size) + + # Load the Processor_box container and store the details and Processor instance. + processor_box = Processor_box() + processor_box.processor = object + processor_box.processor_name = processor_name + processor_box.class_name = class_name + + # Return the Processor instance. return object