SIBCSearchPath.h

00001 //***************************************************************************************
00002 //
00003 // File supervisor: Softimage 3D Games & 3D Bridge team
00004 //
00005 // (c) Copyright 1999-2002 Avid Technology, Inc. . All rights reserved.
00006 //
00007 // SIBCSearchPath.h | Main header file for CSIBCSearchPath implementation
00008 //***************************************************************************************
00009 
00010 /****************************************************************************************
00011 THIS CODE IS PUBLISHED AS A SAMPLE ONLY AND IS PROVIDED "AS IS".
00012 IN NO EVENT SHALL SOFTIMAGE, AVID TECHNOLOGY, INC. AND/OR THEIR RESPECTIVE
00013 SUPPLIERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
00014 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
00015 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
00016 CONNECTION WITH THE USE OR PERFORMANCE OF THIS CODE .
00017 
00018 COPYRIGHT NOTICE. Copyright © 1999-2002 Avid Technology Inc. . All rights reserved. 
00019 
00020 SOFTIMAGE is a registered trademark of Avid Technology Inc. or its subsidiaries 
00021 or divisions. Windows NT is a registered trademark of Microsoft Corp. All other
00022 trademarks contained herein are the property of their respective owners. 
00023 ****************************************************************************************/
00024 
00025 //***************************************************************************************
00026 // Defines
00027 //***************************************************************************************
00028 #ifndef __CSIBCSearchPath_H__
00029 #define __CSIBCSearchPath_H__
00030 
00031 //***************************************************************************************
00032 // Includes
00033 //***************************************************************************************
00034 #include <SIBCArray.h>
00035 #include <SIBCString.h>
00036 #include <SIBCUtil.h>
00037 
00038 //***************************************************************************************
00039 // CSIBCSearchPath | deals with paths and filenames
00040 //***************************************************************************************
00041 
00043 
00046 class XSICOREEXPORT CSIBCSearchPath
00047 {
00048     public:
00049 
00053         CSIBCSearchPath();
00054 
00055         ~CSIBCSearchPath();
00056 
00069         SI_Error AddPath( CSIBCString & in_Path);
00070 
00081         SI_Error ClearPaths();
00082 
00097         SI_Error Search( CSIBCString &file, CSIBCString &resultpath );
00098 
00115         SI_Error GetFiles( CSIBCString &in_Filter, CSIBCArray < CSIBCString * > *out_pFiles );
00116 
00117         
00133         SI_Error GetDirectories( CSIBCString& in_Filter, CSIBCArray < CSIBCString * > * out_pDirs );
00134             
00135 
00142         CSIBCArray < CSIBCString * > &GetPaths() { return m_Paths; };   // Get the paths
00143 
00144 
00145     protected:
00146 
00147 
00148     private:
00149         CSIBCArray < CSIBCString * >    m_Paths;
00150         SI_Void                         *m_pUnused;
00151 
00152 };
00153 
00154 
00155 #endif // CSIBCSearchPath