// ==========================================================================
// 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.
// ==========================================================================

// meshMapUtils.cpp
// Description:
//    Utility functions for the meshRemap and meshReorder commands
//       moveToolContext
#ifndef _MESH_MAP_UTILS_H_
#define _MESH_MAP_UTILS_H_

#include "maya/MStatus.h"

class MIntArray;
class MFloatPointArray;
class MDagPath;
class MDagPathArray;
class MObjectArray;

class meshMapUtils
    static MStatus traverseFace(
            MDagPath& path,
            int faceIdx,
            int v0,
            int v1,
            MIntArray& faceTraversal,
            MIntArray& cvMapping,
            MIntArray& cVMappingInverse,
            MIntArray& newPolygonCounts,
            MIntArray& newPolygonConnects,
            MFloatPointArray& origVertices,
            MFloatPointArray& newVertices

    static void  intersectArrays( MIntArray&, MIntArray &);
    static MStatus validateFaceSelection( MDagPathArray&, MObjectArray&, int *, MIntArray *);