Main Page   Modules   Class Hierarchy   Data Structures   File List   Data Fields   Globals  

oscl_heapbase.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
00003 
00004 //                 O S C L _ H E A P B A S E
00005 
00006 // = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
00007 
00017 #ifndef OSCL_HEAPBASE_H_INCLUDED
00018 #define OSCL_HEAPBASE_H_INCLUDED
00019 
00020 #ifndef OSCLCONFIG_ERROR_H_INCLUDED
00021 #include "osclconfig_error.h"
00022 #endif
00023 
00024 #ifndef OSCL_BASE_H_INCLUDED
00025 #include "oscl_base.h"
00026 #endif
00027 
00034 class _OsclHeapBase
00035 {
00036     public:
00037         virtual ~_OsclHeapBase() {}
00038 
00039     protected:
00040         _OsclHeapBase() {}
00041         _OsclHeapBase(const _OsclHeapBase&) {}
00042     private:
00043         _OsclHeapBase& operator=(const _OsclHeapBase&);
00044         friend class PVCleanupStack;
00045 };
00046 
00052 typedef void (*OsclTrapOperation)(OsclAny*);
00053 
00054 class OsclTrapItem
00055 {
00056     public:
00057         OSCL_INLINE OsclTrapItem(OsclTrapOperation anOperation);
00058         OSCL_INLINE OsclTrapItem(OsclTrapOperation anOperation, OsclAny* aPtr);
00059     private:
00060         OsclTrapOperation iOperation;
00061         OsclAny* iPtr;
00062         friend class OsclTrapStackItem;
00063         friend class OsclTrapStack;
00064 };
00065 
00066 
00067 
00068 #if !(OSCL_DISABLE_INLINES)
00069 #include "oscl_heapbase.inl"
00070 #endif
00071 
00072 #endif //
00073 
00074 

OSCL API
Posting Version: OPENCORE_20090310