00001 /* 00002 * PROPRIETARY INFORMATION. This software is proprietary to 00003 * Side Effects Software Inc., and is not to be reproduced, 00004 * transmitted, or disclosed in any way without written permission. 00005 * 00006 * Produced by: 00007 * Mark Elendt 00008 * Side Effects Software Inc. 00009 * 20 Maud St. 00010 * Toronto, Ontario, M5V 2M5 00011 * Canada 00012 * 416-366-4607 00013 * 00014 * NAME: Geometry Library (C++) 00015 * 00016 * COMMENTS: 00017 * This is a class used for importing/exporting different geometry 00018 * file formats. There is a table of programs which can read 00019 * or write different formats based on extension. 00020 * 00021 */ 00022 00023 #ifndef __GEO_IOTable_h__ 00024 #define __GEO_IOTable_h__ 00025 00026 #include "GEO_API.h" 00027 #include "GEO_IOTranslator.h" 00028 00029 class GEO_Detail; 00030 00031 class GEO_API GEO_IOTable : public GEO_IOTranslator { 00032 public: 00033 GEO_IOTable(); 00034 virtual ~GEO_IOTable(); 00035 00036 virtual const char *formatName() const; 00037 00038 // Method to check the extension of the name to see if it's one of these... 00039 virtual int checkExtension(const char *name); 00040 virtual int checkMagicNumber(unsigned magic); 00041 00042 virtual bool fileLoad(GEO_Detail *, UT_IStream &, int ate); 00043 virtual int fileSave(const GEO_Detail *, ostream &); 00044 00045 private: 00046 UT_String mySuffix; 00047 unsigned myMagicLoad; 00048 }; 00049 #endif
1.5.9