import sys import maya.OpenMayaMPx as OpenMayaMPx import pepper.exporter as exporter import pepper.importer as importer reload(exporter) reload(importer) kPluginTranslatorTypeName = "pepperExport" class PepperTranslater(OpenMayaMPx.MPxFileTranslator): def __init__(self): OpenMayaMPx.MPxFileTranslator.__init__(self) def haveReadMethod(self): return True def haveWriteMethod(self): return True def filter(self): return "*.xar" def defaultExtension(self): return "xar" def writer(self, fileObject, optionString, accessMode): try: fullName = fileObject.fullName() exporter.xar_export(fullName) except: sys.stderr.write("Failed to write file information\n") raise def reader(self, fileObject, optionString, accessMode): try: fullName = fileObject.fullName() importer.xar_import(fullName) except: sys.stderr.write("Failed to write file information\n") raise def translatorCreator(): return OpenMayaMPx.asMPxPtr(PepperTranslater()) # initialize the script plug-in def initializePlugin(mobject): mplugin = OpenMayaMPx.MFnPlugin(mobject, 'Indigo', '1.0', 'Any') try: mplugin.registerFileTranslator(kPluginTranslatorTypeName, None, translatorCreator) except: sys.stderr.write("Failed to register translator: %s" % kPluginTranslatorTypeName) raise # uninitialize the script plug-in def uninitializePlugin(mobject): mplugin = OpenMayaMPx.MFnPlugin(mobject) try: mplugin.deregisterFileTranslator(kPluginTranslatorTypeName) except: sys.stderr.write("Failed to deregister translator: %s" % kPluginTranslatorTypeName) raise