1 // ---------------------------------------------------------------------------- 2 // MODULE : OLEEnumStatstg.h 3 // LANGUAGE : C++ 4 // AUTHOR : Yue Zhang 5 // DATE : Tuesday, Janurary 23, 1996 6 // DESCRIPTION : This file defines the OLEEnumStatstg object 7 // SCCSID : @(#)olestats.h 1.1 11:53:31 18 Dec 1996 8 // ---------------------------------------------------------------------------- 9 // Copyright (c) 1999 Digital Imaging Group, Inc. 10 // For conditions of distribution and use, see copyright notice 11 // in Flashpix.h 12 // ---------------------------------------------------------------------------- 13 #ifndef OLEEnumStatstg_h 14 #define OLEEnumStatstg_h 15 // ---------------------------------------------------------------------------- 16 17 // Includes 18 // -------- 19 20 #ifndef OLECore_h 21 #include "olecore.h" 22 #endif 23 class OLEStorage; 24 25 // Constants 26 // --------- 27 28 // Class declarations 29 // ------------------ 30 31 class OLEEnumStatstg; 32 33 // Class definitions 34 // ----------------- 35 36 class OLEEnumStatstg : public OLECore { 37 38 public: 39 // This constructor creates a OLE statstg object from an open storage 40 OLEEnumStatstg(OLEStorage * parentStorage, IEnumSTATSTG * currentEnumStatstg); 41 virtual ~OLEEnumStatstg(); 42 43 // This function returns true if next object exists, the information is 44 // returned the STATSTG object 45 virtual Boolean Next( STATSTG *); 46 47 // This function returns true if the object specified in STATSTG is storage 48 virtual Boolean IsStorage( STATSTG *); 49 50 // This function returns true if the object specified in STATSTG is property set 51 virtual Boolean IsStream( STATSTG * ); 52 53 // This function skips the number of objects specified from current position 54 virtual Boolean IsPropertySet( STATSTG * ); 55 56 // This function skips the number of objects specified from current position 57 virtual Boolean Skip( unsigned long ); 58 59 // This function sets the current object to the first one in the storage 60 virtual Boolean Reset(); 61 62 private: 63 OLEStorage * parStorage; // open storage to which OLEEnumStatstg belongs 64 IEnumSTATSTG * enumStatstg; // pointer of IEnumSTATSTG object 65 }; 66 67 68 // ---------------------------------------------------------------------------- 69 #endif // OLEEnumStatstg_h 70 // ---------------------------------------------------------------------------- 71