animExportUtil.h

//-
// ==========================================================================
// Copyright 1995,2006,2008 Autodesk, Inc. All rights reserved.
//
// Use of this software is subject to the terms of the Autodesk
// license agreement provided at the time of installation or download,
// or which otherwise accompanies this software in either electronic
// or hard copy form.
// ==========================================================================
//+

//
//      File Name:      animExportUtil.h
//
//      Description: an animation export utility which illustrates how to
//      use the MAnimUtil animation helper class, as well as how to export
//      animation using the Maya .anim format
//
//

#ifndef _animExportUtil
#define _animExportUtil

// *****************************************************************************

// INCLUDED HEADER FILES

#include <maya/MPxFileTranslator.h>
#include <maya/MFStream.h>

// *****************************************************************************

// DECLARATIONS

class MDagPath;
class MObject;

// *****************************************************************************

// CLASS DECLARATION (TanimExportUtil)

// The TanimExportUtil command object
//
class TanimExportUtil : public MPxFileTranslator {
public:
        TanimExportUtil ();
        virtual ~TanimExportUtil (); 

        virtual MStatus         writer (
                                                        const MFileObject &file,
                                                        const MString &optionsString,
                                                        FileAccessMode mode
                                                );
protected:
        void                            write (ofstream &animFile, const MDagPath &path);
        void                            write (ofstream &animFile, const MObject &node);
        void                            writeAnimatedPlugs (
                                                        ofstream &animFile,
                                                        const MPlugArray &animatedPlugs,
                                                        const MString &nodeName,
                                                        unsigned int depth,
                                                        unsigned int childCount
                                                );
public:
        virtual bool            haveWriteMethod () const;
        virtual MString         defaultExtension () const;
        virtual MFileKind       identifyFile (
                                                        const MFileObject &,
                                                        const char *buffer,
                                                        short size
                                                ) const;

        static void *           creator ();
};

#endif

Autodesk® Maya® 2009 © 1997-2008 Autodesk, Inc. All rights reserved. Generated with doxygen 1.5.6