]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/memory.h
Default to wxConvUTF8 (not wxConvAuto) in wxDataInputStream and wxDataOutputStream...
[wxWidgets.git] / interface / wx / memory.h
index ec1fbed3de67436f7c0c8c78ae50ea45a625afc7..c45072ef108e2429389800d8af25265d04cb5e0c 100644 (file)
@@ -1,51 +1,26 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        memory.h
-// Purpose:     interface of wxDebugStreamBuf
+// Purpose:     interface of wxDebugContext
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
-/**
-    @class wxDebugStreamBuf
-    @wxheader{memory.h}
-
-    This class allows you to treat debugging output in a similar
-    (stream-based) fashion on different platforms. Under
-    Windows, an ostream constructed with this buffer outputs
-    to the debugger, or other program that intercepts debugging
-    output. On other platforms, the output goes to standard error (cerr).
-
-    This is soon to be obsolete, replaced by wxLog functionality.
-
-    @library{wxbase}
-    @category{FIXME}
-
-    @see Overview()
-*/
-class wxDebugStreamBuf
-{
-public:
-
-};
-
-
 
 /**
     @class wxDebugContext
-    @wxheader{memory.h}
 
-    A class for performing various debugging and memory tracing
-    operations. Full functionality (such as printing out objects
-    currently allocated) is only present in a debugging build of wxWidgets,
-    i.e. if the __WXDEBUG__ symbol is defined. wxDebugContext
-    and related functions and macros can be compiled out by setting
-    wxUSE_DEBUG_CONTEXT to 0 is setup.h
+    A class for performing various debugging and memory tracing operations.
+
+    Full functionality (such as printing out objects currently allocated) is
+    only present in a debugging build of wxWidgets, i.e. if the __WXDEBUG__
+    symbol is defined. wxDebugContext and related functions and macros can be
+    compiled out by setting wxUSE_DEBUG_CONTEXT to 0 is setup.h
 
     @library{wxbase}
     @category{debugging}
 
-    @see Overview()
+    @see @ref overview_debugging
 */
 class wxDebugContext
 {
@@ -55,10 +30,10 @@ public:
         checkpoint.
 
         @return Returns the number of errors, so a value of zero represents
-                 success. Returns -1 if an error was detected that
-                 prevents further checking.
+                success. Returns -1 if an error was detected that prevents
+                further checking.
     */
-    int Check();
+    static int Check(bool checkAll = false);
 
     /**
         Performs a memory dump from the currently set checkpoint, writing to the
@@ -67,64 +42,43 @@ public:
 
         @return @true if the function succeeded, @false otherwise.
     */
-    bool Dump();
+    static bool Dump();
 
     /**
         Returns @true if the memory allocator checks all previous memory blocks for
         errors.
+
         By default, this is @false since it slows down execution considerably.
 
         @see SetCheckPrevious()
     */
-    bool GetCheckPrevious();
+    static bool GetCheckPrevious();
 
     /**
-        Returns @true if debug mode is on. If debug mode is on, the wxObject new and
-        delete
-        operators store or use information about memory allocation. Otherwise,
-        a straight malloc and free will be performed by these operators.
+        Returns @true if debug mode is on.
 
-        @see SetDebugMode()
-    */
-    bool GetDebugMode();
+        If debug mode is on, the wxObject new and delete operators store or use
+        information about memory allocation. Otherwise, a straight malloc and
+        free will be performed by these operators.
 
-    /**
-        Gets the debug level (default 1). The debug level is used by the wxTraceLevel
-        function and
-        the WXTRACELEVEL macro to specify how detailed the trace information is; setting
-        a different level will only have an effect if trace statements in the
-        application
-        specify a value other than one.
-        This is obsolete, replaced by wxLog functionality.
-
-        @see SetLevel()
+        @see SetDebugMode()
     */
-    int GetLevel();
+    static bool GetDebugMode();
 
     /**
-        Returns the output stream associated with the debug context.
-        This is obsolete, replaced by wxLog functionality.
-
-        @see SetStream()
-    */
-    ostream GetStream();
+        Gets the debug level (default 1).
 
-    /**
-        Returns a pointer to the output stream buffer associated with the debug context.
-        There may not necessarily be a stream buffer if the stream has been set
-        by the user.
-        This is obsolete, replaced by wxLog functionality.
-    */
-    streambuf* GetStreamBuf();
+        The debug level is used by the wxTraceLevel function and the WXTRACELEVEL
+        macro to specify how detailed the trace information is; setting a
+        different level will only have an effect if trace statements in the
+        application specify a value other than one.
 
-    /**
-        Returns @true if there is a stream currently associated
-        with the debug context.
+        @deprecated
         This is obsolete, replaced by wxLog functionality.
 
-        @see SetStream(), GetStream()
+        @see SetLevel()
     */
-    bool HasStream();
+    static int GetLevel();
 
     /**
         Prints a list of the classes declared in this application, giving derivation
@@ -132,7 +86,7 @@ public:
 
         @see PrintStatistics()
     */
-    bool PrintClasses();
+    static bool PrintClasses();
 
     /**
         Performs a statistics analysis from the currently set checkpoint, writing
@@ -140,13 +94,12 @@ public:
         allocations is printed, together with the total size.
 
         @param detailed
-            If @true, the function will also print how many
-            objects of each class have been allocated, and the space taken by
-            these class instances.
+            If @true, the function will also print how many objects of each class
+            have been allocated, and the space taken by these class instances.
 
         @see PrintStatistics()
     */
-    bool PrintStatistics(bool detailed = true);
+    static bool PrintStatistics(bool detailed = true);
 
     /**
         Tells the memory allocator to check all previous memory blocks for errors.
@@ -154,7 +107,7 @@ public:
 
         @see GetCheckPrevious()
     */
-    void SetCheckPrevious(bool check);
+    static void SetCheckPrevious(bool check);
 
     /**
         Sets the current checkpoint: Dump and PrintStatistics operations will
@@ -162,74 +115,50 @@ public:
         that have been performed up to this point.
 
         @param all
-            If @true, the checkpoint is reset to include all
-            memory allocations since the program started.
+            If @true, the checkpoint is reset to include all memory allocations
+            since the program started.
     */
-    void SetCheckpoint(bool all = false);
+    static void SetCheckpoint(bool all = false);
 
     /**
-        Sets the debug mode on or off. If debug mode is on, the wxObject new and delete
-        operators store or use information about memory allocation. Otherwise,
-        a straight malloc and free will be performed by these operators.
+        Sets the debug mode on or off.
+
+        If debug mode is on, the wxObject new and delete operators store or use
+        information about memory allocation. Otherwise, a straight malloc and free
+        will be performed by these operators.
+
         By default, debug mode is on if __WXDEBUG__ is defined. If the application
         uses this function, it should make sure that all object memory allocated
-        is deallocated with the same value of debug mode. Otherwise, the
-        delete operator might try to look for memory information that does not
-        exist.
+        is deallocated with the same value of debug mode. Otherwise, the delete
+        operator might try to look for memory information that does not exist.
 
         @see GetDebugMode()
     */
-    void SetDebugMode(bool debug);
+    static void SetDebugMode(bool debug);
 
     /**
-        Sets the current debug file and creates a stream. This will delete any existing
-        stream and stream buffer. By default, the debug context stream
-        outputs to the debugger (Windows) or standard error (other platforms).
-    */
-    bool SetFile(const wxString& filename);
+        Sets the debug level (default 1).
 
-    /**
-        Sets the debug level (default 1). The debug level is used by the wxTraceLevel
-        function and
-        the WXTRACELEVEL macro to specify how detailed the trace information is; setting
+        The debug level is used by the wxTraceLevel function and the WXTRACELEVEL
+        macro to specify how detailed the trace information is; setting
         a different level will only have an effect if trace statements in the
-        application
-        specify a value other than one.
+        application specify a value other than one.
+
+        @deprecated
         This is obsolete, replaced by wxLog functionality.
 
         @see GetLevel()
     */
-    void SetLevel(int level);
+    static void SetLevel(int level);
 
     /**
-        Installs a function to be called at the end of wxWidgets shutdown. It will be
-        called after
-        all files with global instances of wxDebugContextDumpDelayCounter have run
-        their destructors.
-        The shutdown function must be take no parameters and return nothing.
-    */
-    void SetShutdownNotifyFunction(wxShutdownNotifyFunction func);
+        Installs a function to be called at the end of wxWidgets shutdown.
+        It will be called after all files with global instances of
+        wxDebugContextDumpDelayCounter have run their destructors.
 
-    /**
-        Sets the debugging stream to be the debugger (Windows) or standard error (other
-        platforms).
-        This is the default setting. The existing stream will be flushed and deleted.
-        This is obsolete, replaced by wxLog functionality.
-    */
-    bool SetStandardError();
-
-    /**
-        Sets the stream and optionally, stream buffer associated with the debug context.
-        This operation flushes and deletes the existing stream (and stream buffer if
-        any).
-        This is obsolete, replaced by wxLog functionality.
-
-        @param stream
-            Stream to associate with the debug context. Do not set this to @NULL.
-        @param streamBuf
-            Stream buffer to associate with the debug context.
+        The shutdown function must be take no parameters and return nothing.
     */
-    void SetStream(ostream* stream, streambuf* streamBuf = NULL);
+    static void SetShutdownNotifyFunction(wxShutdownNotifyFunction func);
 };
 
 
@@ -238,7 +167,7 @@ public:
 // Global functions/macros
 // ============================================================================
 
-/** @ingroup group_funcmacro_log */
+/** @addtogroup group_funcmacro_log */
 //@{
 
 /**