Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  utilities.h   Sprache: C

 
//=============================================================================
// File      : utilities.h
// Created   : mar jun 19 13:18:14 CEST 2001
// Author    : Antoine YESSAYAN, Paul RASCLE, EDF
// Project   : SALOME
// Copyright : EDF 2001
// $Header$
//=============================================================================

/* ---  Definition macros file to print information if _DEBUG_ is defined --- */

ifndef UTILITIES_H
define UTILITIES_H

include <stdlib.h>
//# include <iostream> ok for gcc3.01
include <iostream>

/* ---  INFOS is always defined (without _DEBUG_): to be used for warnings, with release version --- */

define HEREWEARE cout<<flush ; cerr << __FILE__ << " [" << __LINE__ << "] : " << flush ;
define INFOS(chain) {HEREWEARE ; cerr << chain << endl ;}
define PYSCRIPT(chain) {cout<<flush ; cerr << "---PYSCRIPT--- " << chain << endl ;}

/* --- To print date and time of compilation of current source on stdout --- */

if defined ( __GNUC__ )
define COMPILER  "g++" ;
elif defined ( __sun )
define COMPILER  "CC" ;
elif defined ( __KCC )
define COMPILER  "KCC" ;
elif defined ( __PGI )
define COMPILER  "pgCC" ;
else
define COMPILER  "undefined" ;
endif

ifdef INFOS_COMPILATION
error INFOS_COMPILATION already defined
endif
define INFOS_COMPILATION {\
     cerr << flush;\
     cout << __FILE__ ;\
     cout << " [" << __LINE__ << "] : " ;\
     cout << "COMPILED with " << COMPILER ;\
     cout << ", " << __DATE__ ; \
     cout << " at " << __TIME__ << endl ;\
     cout << "\n\n" ;\
     cout << flush ;\
    }

ifdef _DEBUG_

/* --- the following MACROS are useful at debug time --- */

define HERE cout<<flush ; cerr << "- Trace " << __FILE__ << " [" << __LINE__ << "] : " << flush ;
define SCRUTE(var) HERE ; cerr << #var << "=" << var << endl ;
define MESSAGE(chain) {HERE ; cerr << chain << endl ;}
define INTERRUPTION(code) HERE ; cerr << "INTERRUPTION return code= " << code << endl ; exit(code) ;

ifndef ASSERT
define ASSERT(condition) if (!(condition)){ HERE ; cerr << "CONDITION " << #condition << " NOT VERIFIED"<< endl ; INTERRUPTION(1) ;}
endif /* ASSERT */

#define REPERE cout<<flush ; cerr << " --------------" << endl << flush ;
#define BEGIN_OF(chain) {REPERE ; HERE ; cerr << "Begin of: " << chain << endl ; REPERE ; }
#define END_OF(chain) {REPERE ; HERE ; cerr << "Normal end of: " << chain << endl ; REPERE ; }



else /* ifdef _DEBUG_*/

define HERE
define SCRUTE(var)
define MESSAGE(chain)
define INTERRUPTION(code)

ifndef ASSERT
define ASSERT(condition)
endif /* ASSERT */

#define REPERE
#define BEGIN_OF(chain)
#define END_OF(chain)


endif /* ifdef _DEBUG_*/

endif /* ifndef UTILITIES_H */

Messung V0.5
C=74 H=100 G=87

¤ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge