CoCoALib-0.9905 date: 23 May 2007


debug_new.H

Go to the documentation of this file.
00001 #ifndef debug_new_H
00002 #define debug_new_H
00003 
00004 //   Copyright (c)  2005  John Abbott
00005 
00006 //   This file is part of the source of CoCoALib, the CoCoA Library.
00007 
00008 //   CoCoALib is free software; you can redistribute it and/or modify
00009 //   it under the terms of the GNU General Public License (version 2)
00010 //   as published by the Free Software Foundation.  A copy of the full
00011 //   licence may be found in the file COPYING in this directory.
00012 
00013 //   CoCoALib is distributed in the hope that it will be useful,
00014 //   but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016 //   GNU General Public License for more details.
00017 
00018 //   You should have received a copy of the GNU General Public License
00019 //   along with CoCoA; if not, write to the Free Software
00020 //   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00021 
00022 
00023 namespace debug_new
00024 {
00025 
00026   /*-----------------------------------------------------------------*/
00027   /** \include debug_new.txt  */
00028   /*-----------------------------------------------------------------*/
00029   class PrintTrace
00030   {
00031   public:
00032     PrintTrace(bool activate = true);  // turns on printing of messages (if arg is true)
00033     ~PrintTrace();                     // restores printing to the previous state
00034   private:
00035     bool PreviousState;
00036   };
00037 
00038   void intercepted();                  // a good place to set debugger breakpoints
00039 
00040   void InterceptNew(unsigned int nth);     // call debug_new::intercepted function after nth new
00041   void InterceptDelete(unsigned int nth);  // call debug_new::intercepted function after nth delete
00042 
00043 } // end of namespace debug_new
00044 
00045 
00046 
00047 // RCS header/log in the next few lines
00048 // $Header: /Volumes/Home/cocoa/cvs-repository/CoCoALib-0.99/include/CoCoA/debug_new.H,v 1.1.1.1 2007/03/09 15:16:11 abbott Exp $
00049 // $Log: debug_new.H,v $
00050 // Revision 1.1.1.1  2007/03/09 15:16:11  abbott
00051 // Imported files
00052 //
00053 // Revision 1.2  2006/10/06 14:04:15  cocoa
00054 // Corrected position of #ifndef in header files.
00055 // Separated CoCoA_ASSERT into assert.H from config.H;
00056 // many minor consequential changes (have to #include assert.H).
00057 // A little tidying of #include directives (esp. in Max's code).
00058 //
00059 // Revision 1.1.1.1  2006/05/30 11:39:36  cocoa
00060 // Imported files
00061 //
00062 // Revision 1.2  2006/03/27 12:21:26  cocoa
00063 // Minor silly changes to reduce number of complaints from some compiler or other.
00064 //
00065 // Revision 1.1.1.1  2005/10/17 10:46:54  cocoa
00066 // Imported files
00067 //
00068 // Revision 1.1.1.1  2005/05/03 15:47:30  cocoa
00069 // Imported files
00070 //
00071 // Revision 1.3  2005/04/19 14:06:04  cocoa
00072 // Added GPL and GFDL licence stuff.
00073 //
00074 // Revision 1.2  2005/04/01 16:18:20  cocoa
00075 // Friday check-in.  Fixed a bug in the ctor for GeneralQuotientRingImpl.
00076 //
00077 // Revision 1.1.1.1  2005/01/27 15:12:13  cocoa
00078 // Imported files
00079 //
00080 // Revision 1.3  2004/11/11 13:02:16  cocoa
00081 // -- added \include *.txt for doxygen
00082 //
00083 // Revision 1.2  2004/11/03 17:58:56  cocoa
00084 // -- improved log messages
00085 // -- minor tidying
00086 //
00087 // Revision 1.1.1.1  2003/09/24 12:55:43  cocoa
00088 // Imported files
00089 //
00090 // Revision 1.2  2002/03/08 18:29:51  abbott
00091 // Added new functions InterceptNew and InterceptDelete.
00092 //
00093 // Revision 1.1  2002/01/31 11:32:18  abbott
00094 // Initial revision
00095 //
00096 
00097 #endif

Generated on Wed May 23 13:45:22 2007 for CoCoALib by  doxygen 1.4.6