From e5dd32f1b358b8b07863dddcd71e0a8109614b2f Mon Sep 17 00:00:00 2001 From: prascle Date: Fri, 28 Jan 2005 09:55:45 +0000 Subject: [PATCH] PR: update documentation --- .../KernelResources/kernel_resources-1.html | 165 ++- .../KernelResources/kernel_resources-2.html | 82 +- .../KernelResources/kernel_resources-3.html | 36 +- .../KernelResources/kernel_resources.html | 18 +- .../KernelResources/kernel_resources.lyx | 95 +- doc/salome/kernel_resources.pdf | Bin 125487 -> 127655 bytes doc/salome/kernel_resources.ps | 1164 +++++++++-------- 7 files changed, 874 insertions(+), 686 deletions(-) diff --git a/doc/salome/KernelResources/kernel_resources-1.html b/doc/salome/KernelResources/kernel_resources-1.html index 6652dc450..562ffa05b 100644 --- a/doc/salome/KernelResources/kernel_resources-1.html +++ b/doc/salome/KernelResources/kernel_resources-1.html @@ -1,7 +1,7 @@ - + SALOME Kernel resources for developer: Trace and debug Utilities @@ -12,66 +12,84 @@ Previous Contents
-

1. Trace and debug Utilities

+

1. Trace and debug Utilities

During the development process, an execution log is useful to identify problems. This log contains messages, variables values, source files names and line numbers. It is recommended to verify assertions on variables values and if necessary, to stop the execution -at debug time, in order to validate all parts of code. -

1.1 Two modes: debug and release +at debug time, in order to validate all parts of code.

+ +

1.1 Two modes: debug and release

The goal of debug mode is to check as many features as possible during the early stages of the development process. The purpose of the utilities provided in SALOME is to help the developer to add detailed traces and check variables values, without writing a lot -of code. +of code.

+

When the code is assumed to be valid, the release mode optimizes execution, in terms of speed, memory, and display only user level -messages. +messages.

+

But, some informations must always be displayed in both modes: especially messages concerning environment or internal errors, with version identification. When an end user is confronted to such a message, he may refer to a configuration documentation or send the message to the people in charge of SALOME installation, or to the -development team, following the kind of error. -

1.2 C++ Macros for trace and debug +development team, following the kind of error.

+ +

1.2 C++ Macros for trace and debug

SALOME provides C++ macros for trace and debug. These macros -are in SALOME/src/utils/utilities.h and this file must be included -in C++ source. Some macros are activated only in debug mode, others -are always activated. To activate the debug mode, _DEBUG_ must be -defined, which is the case when SALOME Makefiles are generated from -configure, without options. When _DEBUG_ is undefined (release mode), -the debug mode macros are defined empty (they do nothing). So, when -switching from debug to release, it is possible (and recommended) -to let the macro calls unchanged in the source. -

All the macros writing on the standard output start by flushing -the standard error. At the end of the display those macros flush -the standard output. -

Two informations are systematically added in front of the information -displayed: +are in SALOME/src/SALOMELocalTrace/utilities.h and this file must +be included in C++ source. Some macros are activated only in debug +mode, others are always activated. To activate the debug mode, _DEBUG_ +must be defined, which is the case when SALOME Makefiles are generated +from configure, without options. When _DEBUG_ is undefined (release +mode: configure --disable-debug --enable-production), the debug mode +macros are defined empty (they do nothing). So, when switching from +debug to release, it is possible (and recommended) to let the macro +calls unchanged in the source.

+ +

All the macros generate trace messages, stored in a circular +buffer pool. A separate thread reads the messages in the buffer pool, +and, depending on options given at SALOME start, writes the messages +on the standard output, a file, or send them via CORBA, in case of +a multi machine configuration.

+ +

Three informations are systematically added in front of the information +displayed:

+

+

Macros defined in debug and release modes

INFOS_COMPILATION

-

The C++ macro INFOS_COMPILATION writes on the standard output -informations about the compiling process: +

The C++ macro INFOS_COMPILATION writes on the trace buffer pool +informations about the compiling process:

+

+

This macro INFOS_COMPILATION does not have any argument. Moreover, -it is defined in both compiling mode : _DEBUG_ and _RELEASE_. -

Example : +it is defined in both compiling mode : _DEBUG_ and _RELEASE_.

+ +

Example :

+

 #include "utilities.h"
@@ -81,12 +99,15 @@ int main(int argc , char **argv)
   ...
 }
 
+

INFOS(str)

In both compiling mode _DEBUG_ and _RELEASE_, The C++ macro INFOS -writes on the standard output the string which has been passed in -argument by the user. -

Example : +writes on the trace buffer pool the string which has been passed +in argument by the user.

+ +

Example :

+

 #include "utilities.h"
@@ -97,19 +118,39 @@ int main(int argc , char **argv)
   return 0; 
 }
 
-

displays : +

+

displays :

+

 main.cxx [5] : NORMAL END OF THE PROCESS
+
 
+

+

INTERRUPTION(str)

+ +

In both compiling mode _DEBUG_ and _RELEASE_, The C++ macro INTERRUPTION +writes on the trace buffer pool the string, with a special ABORT +type. When the thread in charge of collecting messages finds this +message, it terminates the application, after message treatment.

+ +

IMMEDIATE_ABORT(str)

+ +

In both compiling mode _DEBUG_ and _RELEASE_, The C++ macro IMMEDIATE_ABORT +writes the message immediately on standard error and exits the application. +Remaining messages not treated by the message collector thread are +lost.

+

Macros defined only in debug mode

MESSAGE(str)

In _DEBUG_ compiling mode only, the C++ macro MESSAGE writes -on the standard output the string which has been passed in argument -by the user. In _RELEASE_ compiling mode, this macro is blank. -

Example : +on the trace buffer pool the string which has been passed in argument +by the user. In _RELEASE_ compiling mode, this macro is blank.

+ +

Example :

+

 #include "utilities.h" 
@@ -126,19 +167,24 @@ int main(int argc , char **argv)
   return 0;
 }
 
-

displays : +

+

displays :

+

 - Trace main.cxx [8] : Salome
 - Trace main.cxx [12] : Aster and CASTEM
 
+

BEGIN_OF(func_name)

In _DEBUG_ compiling mode, The C++ macro BEGIN_OF appends the string "Begin of " to the one passed in argument by the -user and displays the result on the standard output. In _RELEASE_ -compiling mode, this macro is blank. -

Example : +user and displays the result on the trace buffer pool. In _RELEASE_ +compiling mode, this macro is blank.

+ +

Example :

+

 #include "utilities.h" 
@@ -148,18 +194,23 @@ int main(int argc , char **argv)
   return 0;
 }
 
-

displays : +

+

displays :

+

 - Trace main.cxx [3] : Begin of a.out
 
+

END_OF(func_name)

In _DEBUG_ compiling mode, The C++ macro END_OF appends the string "Normal end of " to the one passed in argument by the user -and displays the result on the standard output. In _RELEASE_ compiling -mode, this macro is blank. -

Example : +and displays the result on the trace buffer pool. In _RELEASE_ compiling +mode, this macro is blank.

+ +

Example :

+

 #include "utilities.h" 
@@ -169,17 +220,22 @@ int main(int argc , char **argv)
   return 0; 
 }
 
-

displays : +

+

displays :

+

 - Trace main.cxx [4] : Normal end of a.out
 
+

SCRUTE(var)

In _DEBUG_ compiling mode, The C++ macro SCRUTE displays its argument which is an application variable followed by the value of -the variable. In _RELEASE_ compiling mode, this macro is blank. -

Example : +the variable. In _RELEASE_ compiling mode, this macro is blank.

+ +

Example :

+

 #include "utilities.h"
@@ -190,19 +246,25 @@ int main(int argc , char **argv)
   return 0;
 }
 
-

displays : +

+

displays :

+

 - Trace main.cxx [5] : i=999
 
+

ASSERT(condition)

In _DEBUG_ compiling mode only, The C++ macro ASSERT checks the -expression passed in argument to be not NULL. If it is NULL the process -is stopped and the condition is written on the standard output. In -_RELEASE_ compiling mode, this macro is blank. N.B. : if ASSERT is -already defined, this macro is ignored. -

Example : +expression passed in argument to be not NULL. If it is NULL the condition +is written with the macro INTERRUPTION (see above). The process exits +after trace of this last message. In _RELEASE_ compiling mode, this +macro is blank. N.B. : if ASSERT is already defined, this macro is +ignored.

+ +

Example :

+

 #include "utilities.h" 
@@ -216,6 +278,7 @@ int k;
 ASSERT(k<10);
 cout << table[k];
 
+


Next Previous diff --git a/doc/salome/KernelResources/kernel_resources-2.html b/doc/salome/KernelResources/kernel_resources-2.html index 0557f1838..62acf8ca3 100644 --- a/doc/salome/KernelResources/kernel_resources-2.html +++ b/doc/salome/KernelResources/kernel_resources-2.html @@ -1,7 +1,7 @@ - + SALOME Kernel resources for developer: Exceptions @@ -12,9 +12,9 @@ Previous Contents
-

2. Exceptions

+

2. Exceptions

-

2.1 C++ exceptions: class SALOME_Exception +

2.1 C++ exceptions: class SALOME_Exception

definition

@@ -24,34 +24,46 @@ a message, with optional source file name and line number. This class is intended to serve as a base class for all kinds of exceptions SALOME code. All the exceptions derived from SALOME_Exception could be handled in a single catch, in which the message associated to -the exception is displayed, or sent to a log file. +the exception is displayed, or sent to a log file.

+

The class SALOME_Exception inherits its behavior from the STL -class exception. +class exception.

+

usage

The header SALOME/src/utils/utils_SALOME_Exception.hxx must be -included in the C++ source, when raised or trapped: -

#include "utils_SALOME_Exception.hxx" -

The SALOME_Exception constructor is: +included in the C++ source, when raised or trapped:

+ +

#include "utils_SALOME_Exception.hxx"

+ +

The SALOME_Exception constructor is:

+

 SALOME_Exception( const char *text,
                   const char *fileName=0, 
                   const unsigned int lineNumber=0 );
 
-

The exception is raised like this: +

+

The exception is raised like this:

+

 throw SALOME_Exception("my pertinent message");
 
-

or like this: +

+

or like this:

+

 throw SALOME_Exception(LOCALIZED("my pertinent message"));
 
+

where LOCALIZED is a macro provided with utils_SALOME_Exception.hxx -which gives file name and line number. -

The exception is handled like this: +which gives file name and line number.

+ +

The exception is handled like this:

+

 try
@@ -63,56 +75,71 @@ catch (const SALOME_Exception &ex)
     cerr << ex.what() <<endl;
   }
 
+

The what() method overrides the one defined in the STL exception -class. -

2.2 CORBA exceptions +class.

+ +

2.2 CORBA exceptions

definition

The idl SALOME_Exception provides a generic CORBA exception for SALOME, with an attribute that gives an exception type,a message, -plus optional source file name and line number. +plus optional source file name and line number.

+

This idl is intended to serve for all user CORBA exceptions raised in SALOME code, as IDL specification does not support exception inheritance. So, all the user CORBA exceptions from SALOME could be handled in -a single catch. -

The exception types defined in idl are: +a single catch.

+ +

The exception types defined in idl are:

+

-
COMM

CORBA communication problem, -

BAD_PARAM

Bad User parameters, -

INTERNAL_ERROR

application level problem (often irrecoverable). +

COMM

CORBA communication problem,

+
BAD_PARAM

Bad User parameters,

+
INTERNAL_ERROR

application level problem (often irrecoverable).

+
+

CORBA system and user exceptions already defined in the packages -used within SALOME, such as OmniORB exceptions, must be handled separately. +used within SALOME, such as OmniORB exceptions, must be handled separately.

+

usage

CORBA servant, C++

The CORBA Server header for SALOME_Exception and a macro to throw -the exception are provided with the header SALOME/src/Utils/Utils_CorbaException.hxx: +the exception are provided with the header SALOME/src/Utils/Utils_CorbaException.hxx:

+

 #include "Utils_CorbaException.hxx"
 
+

The exception is raised with a macro which appends file name -and line number. +and line number.

+

 if (myStudyName.size() == 0)
    THROW_SALOME_CORBA_EXCEPTION("No Study Name given", \
                                 SALOME::BAD_PARAM);
 
+

CORBA Client, GUI Qt C++

The CORBA Client header for SALOME_Exception and a Qt function -header that displays a message box are provided in SALOME/src/SALOMEGUI/SALOMEGUI_QtCatchCorbaException.hxx: +header that displays a message box are provided in SALOME/src/SALOMEGUI/SALOMEGUI_QtCatchCorbaException.hxx:

+

 #include "SALOMEGUI_QtCatchCorbaException.hxx"
 
-

A typical exchange with a CORBA Servant will be: +

+

A typical exchange with a CORBA Servant will be:

+

 try
@@ -123,12 +150,15 @@ catch (const SALOME::SALOME_Exception & S_ex)
   {
     QtCatchCorbaException(S_ex);
   }
+
 
+

CORBA Client, C++, without GUI

Nothing specific has been provided to the developer yet. See the idl or the Qt function SALOMEGUI_QtCatchCorbaException.hxx to -see how to get the information given by the exception object. +see how to get the information given by the exception object.

+
Next Previous diff --git a/doc/salome/KernelResources/kernel_resources-3.html b/doc/salome/KernelResources/kernel_resources-3.html index 64cdedde5..27f61e78f 100644 --- a/doc/salome/KernelResources/kernel_resources-3.html +++ b/doc/salome/KernelResources/kernel_resources-3.html @@ -1,7 +1,7 @@ - + SALOME Kernel resources for developer: Miscellaneous tools @@ -11,9 +11,9 @@ Next Previous Contents
-

3. Miscellaneous tools

+

3. Miscellaneous tools

-

3.1 Singleton +

3.1 Singleton

Definition

@@ -21,14 +21,17 @@ Next

A singleton is an application data which is created and deleted only once at the end of the application process. The C++ compiler allows the user to create a static singleton data before the first -executable statement. They are deleted after the last statement execution. +executable statement. They are deleted after the last statement execution.

+

The SINGLETON_ template class deals with dynamic singleton. It is useful for functor objects. For example, an object that connects the application to a system at creation and disconnects the application -at deletion. +at deletion.

+

Usage

-

To create a single instance a POINT object : +

To create a single instance a POINT object :

+

 # include "Utils_SINGLETON.hxx"
@@ -36,11 +39,13 @@ at deletion.
 POINT *ptrPoint=SINGLETON_<POINT>::Instance() ; 
 assert(ptrPoint!=NULL) ;
 
+

No need to delete ptrPoint. Deletion is achieved automatically at exit. If the user tries to create more than one singleton by using the class method SINGLETON_<TYPE>::Instance(), the pointer is returned with the same value even if this is done in different -functions (threads ?). +functions (threads ?).

+

 POINT *p1=SINGLETON_<POINT>::Instance() ;
@@ -48,9 +53,11 @@ POINT *p1=SINGLETON_<POINT>::Instance() ;
 POINT *p2=SINGLETON_<POINT>::Instance() ; 
 assert(p1==p2)
 
+

Design description

-

Here are the principles features of the singleton design : +

Here are the principles features of the singleton design :

+

-

-

+

+ + +
Next Previous diff --git a/doc/salome/KernelResources/kernel_resources.html b/doc/salome/KernelResources/kernel_resources.html index 6a11ac423..e3819dc56 100644 --- a/doc/salome/KernelResources/kernel_resources.html +++ b/doc/salome/KernelResources/kernel_resources.html @@ -1,7 +1,7 @@ - + SALOME Kernel resources for developer @@ -14,11 +14,11 @@ Contents

SALOME Kernel resources for developer

-

Antoine Yessayan, Paul Rascle

Version 0.1 January 16, 2002 -


+

Antoine Yessayan, Paul Rascle

Version 0.2 January 28, 2005 +
ABSTRACT
-


+
This document describes the development environment for C++ and Python. Makefiles generation and usage are introduced in another document: "using the SALOME configuration and building system environment". @@ -32,21 +32,21 @@ Contents

1. Trace and debug Utilities

2. Exceptions

3. Miscellaneous tools


Next diff --git a/doc/salome/KernelResources/kernel_resources.lyx b/doc/salome/KernelResources/kernel_resources.lyx index d696300b2..2c5935eab 100644 --- a/doc/salome/KernelResources/kernel_resources.lyx +++ b/doc/salome/KernelResources/kernel_resources.lyx @@ -1,5 +1,5 @@ -#LyX 1.1 created this file. For more info see http://www.lyx.org/ -\lyxformat 218 +#LyX 1.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 221 \textclass linuxdoc \language english \inputencoding default @@ -11,6 +11,8 @@ \paperpackage a4 \use_geometry 0 \use_amsmath 0 +\use_natbib 0 +\use_numerical_citations 0 \paperorientation portrait \secnumdepth 3 \tocdepth 3 @@ -30,7 +32,7 @@ SALOME Kernel resources for developer Antoine Yessayan, Paul Rascle \layout Date -Version 0.1 January 16, 2002 +Version 0.2 January 28, 2005 \layout Abstract ABSTRACT @@ -98,7 +100,7 @@ C++ Macros for trace and debug SALOME provides C++ macros for trace and debug. These macros are in \family typewriter -SALOME/src/utils/utilities.h +SALOME/src/SALOMELocalTrace/utilities.h \family default and this file must be included in C++ source. Some macros are activated only in debug mode, others are always activated. @@ -112,18 +114,26 @@ _DEBUG_ \family typewriter _DEBUG_ \family default - is undefined (release mode), the debug mode macros are defined empty (they - do nothing). + is undefined (release mode: +\family typewriter +configure --disable-debug --enable-production +\family default +), the debug mode macros are defined empty (they do nothing). So, when switching from debug to release, it is possible (and recommended) to let the macro calls unchanged in the source. \layout Standard -All the macros writing on the standard output start by flushing the standard - error. - At the end of the display those macros flush the standard output. +All the macros generate trace messages, stored in a circular buffer pool. + A separate thread reads the messages in the buffer pool, and, depending + on options given at SALOME start, writes the messages on the standard output, + a file, or send them via CORBA, in case of a multi machine configuration. \layout Standard -Two informations are systematically added in front of the information displayed: +Three informations are systematically added in front of the information + displayed: +\layout Itemize + +the thread number from which the message come from; \layout Itemize the name of the source file in which the macros is set; @@ -142,7 +152,7 @@ The C++ macro \family typewriter INFOS_COMPILATION \family default - writes on the standard output informations about the compiling process: + writes on the trace buffer pool informations about the compiling process: \layout Itemize @@ -208,7 +218,7 @@ _RELEASE_ \family typewriter INFOS \family default - writes on the standard output the string which has been passed in argument + writes on the trace buffer pool the string which has been passed in argument by the user. \layout Standard @@ -241,6 +251,53 @@ displays : \layout Verbatim main.cxx [5] : NORMAL END OF THE PROCESS +\layout Verbatim + +\layout Paragraph + + +\family roman +INTERRUPTION(str) +\layout Standard + +In both compiling mode +\family typewriter +_DEBUG_ +\family default + and +\family typewriter +_RELEASE_ +\family default +, The C++ macro +\family typewriter +INTERRUPTION +\family default + writes on the trace buffer pool the string, with a special +\family typewriter +ABORT +\family default + type. + When the thread in charge of collecting messages finds this message, it + terminates the application, after message treatment. +\layout Paragraph + +IMMEDIATE_ABORT(str) +\layout Standard + +In both compiling mode +\family typewriter +_DEBUG_ +\family default + and +\family typewriter +_RELEASE_ +\family default +, The C++ macro +\family typewriter +IMMEDIATE_ABORT +\family default + writes the message immediately on standard error and exits the application. + Remaining messages not treated by the message collector thread are lost. \layout Subsubsection Macros defined only in debug mode @@ -257,7 +314,7 @@ _DEBUG_ \family typewriter MESSAGE \family default - writes on the standard output the string which has been passed in argument + writes on the trace buffer pool the string which has been passed in argument by the user. In \family typewriter @@ -335,7 +392,7 @@ BEGIN_OF "Begin of " \family default to the one passed in argument by the user and displays the result on the - standard output. + trace buffer pool. In \family typewriter _RELEASE_ @@ -386,7 +443,7 @@ END_OF "Normal end of " \family default to the one passed in argument by the user and displays the result on the - standard output. + trace buffer pool. In \family typewriter _RELEASE_ @@ -483,8 +540,12 @@ _DEBUG_ ASSERT \family default checks the expression passed in argument to be not NULL. - If it is NULL the process is stopped and the condition is written on the - standard output. + If it is NULL the condition is written with the macro +\family typewriter +INTERRUPTION +\family default + (see above). + The process exits after trace of this last message. In \family typewriter _RELEASE_ diff --git a/doc/salome/kernel_resources.pdf b/doc/salome/kernel_resources.pdf index 35924a77ec8ad232296b57f411c32c2236d493cd..b29cb2c04edc6aa1e2d2d971646dfec77a8845a5 100644 GIT binary patch literal 127655 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 diff --git a/doc/salome/kernel_resources.ps b/doc/salome/kernel_resources.ps index 7e2116598..cb78b16ba 100644 --- a/doc/salome/kernel_resources.ps +++ b/doc/salome/kernel_resources.ps @@ -9,7 +9,7 @@ %DVIPSCommandLine: dvips -t letter -o kernel_resources.ps %+ kernel_resources.dvi %DVIPSParameters: dpi=600, compressed -%DVIPSSource: TeX output 2002.01.17:1829 +%DVIPSSource: TeX output 2005.01.28:1211 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -87,211 +87,212 @@ C0EC1FF0EC07FCEC01FF9138007FC0ED1FF0ED07FCED01FF9238007FC0EE1FF0EE07FCEE 6C14FCA36C14F8A26C14F06C14E06C14C0000114006C5BEB1FF01F1F7BA42A>15 D E %EndDVIPSBitmapFont -%DVIPSBitmapFont: Fc ectt1000 10 79 -/Fc 79 126 df<121FEA3F80EA7FC0EAFFE0B0EA7FC0AEEA1F00C7FCA7121FEA3F80EA7F -C0EAFFE0A5EA7FC0EA3F80EA1F000B3470B32C>33 D<003C131E007F137F481480A66C14 -00A6007E7FA6003E133EA3003C131E001C131C191977B32C>I<0107131C90380F803EA8 -011F137EEC007CA4003FB612E0B712F8A43A003E00F800A2EB7E01017C5BA8EBFC0301F8 -5BA2B712F8A4003F15E03A01F007C000A30003130F01E05BA86C486CC7FC25337DB22C> -I38 -D<143814FC13011303EB07F8EB0FF0EB1FC0EB3F80EB7F0013FE485A485A5B12075B120F -5B485AA2123F90C7FCA25A127EA312FE5AAC7E127EA3127F7EA27F121FA26C7E7F12077F -12037F6C7E6C7E137FEB3F80EB1FC0EB0FF0EB07F8EB03FC130113001438164272B92C> -40 D<127012FC7E7E6C7E6C7EEA0FE06C7E6C7E6C7E6C7E137F7F1480131F14C0130FEB -07E0A214F01303A214F81301A314FC1300AC130114F8A3130314F0A2130714E0A2EB0FC0 -131F1480133F14005B13FE485A485A485A485AEA3FC0485A48C7FC5A5A1270164279B92C ->II<147014F8AF00 -3FB612E0B712F8A4C700F8C7FCB0147025267DAB2C>II<007FB512F0B612F8A36C14F01D0579942C>I<121FEA3F80EA7FC0EAFFE0 -A5EA7FC0EA3F80EA1F000B0B708A2C>I<1507ED0F80A2151F16005D153E157E157CA215 -FC5D14015D14035D14075D140F5D141F92C7FC5C143EA2147E147C14FC5C13015C13035C -13075C130F5C131F91C8FC5B133EA2137E137C13FC5B12015B12035B12075B120F5B121F -90C9FCA25A123E127E127C12FC5AA2127021417BB92C>II<1307497EA2131FA2133F137F13FF5A1207127FB5FC13DF139FEA7C -1F1200B3AE007FB512E0B612F0A36C14E01C3477B32C>IIII<000FB512FE4880A35D0180C8FCADEB83FE90389FFF8090 -B512E015F8819038FE03FE9038F000FF01C07F49EB3F8090C7121F6C15C0C8120FA2ED07 -E0A4123C127EB4FC150F16C0A248141F007EEC3F80007FEC7F006C6C5B6D485A391FF80F -FC6CB55A6C5C000114C06C6C90C7FCEB0FF823347CB22C>I56 DI<121FEA3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F00C7FCAE121FEA3F80EA7FC0 -EAFFE0A5EA7FC0EA3F80EA1F000B2470A32C>II<1502ED0F80151F -157F15FF913803FE00EC0FFCEC1FF0EC7FE0ECFF80D903FEC7FC495AEB1FF0495AEBFF80 -000390C8FCEA07FCEA1FF8EA3FE0EAFF8090C9FCA27FEA3FE0EA1FF8EA07FC6CB4FCC67F -EB3FE06D7EEB07FC6D7E903800FF80EC7FE0EC1FF0EC0FFCEC03FE913800FF80157F151F -150FED0200212A7BAD2C>I<007FB612F0B712F8A36C15F0CAFCA8007FB612F0B712F8A3 -6C15F025127DA12C>I<122012F87EB4FC7FEA3FE0EA1FF8EA07FC6CB4FCC67FEB3FE06D -7EEB07FC6D7E903800FF80EC7FE0EC1FF0EC0FFCEC03FE913800FF80157FA215FF913803 -FE00EC0FFCEC1FF0EC7FE0ECFF80D903FEC7FC495AEB1FF0495AEBFF80000390C8FCEA07 -FCEA1FF8EA3FE0EAFF8090C9FC12FC5A1220212A7BAD2C>I<14FE497EA4497FA214EFA2 -130781A214C7A2010F7FA314C390381F83F0A590383F01F8A490387E00FCA549137E90B5 -12FEA34880A29038F8003FA34848EB1F80A4000715C049130FD87FFEEBFFFC6D5AB514FE -6C15FC497E27347EB32C>65 D<007FB512E015F8B612FE6C8016C03903F0003FED0FE0ED -07F01503A2ED01F8A6ED03F0A21507ED0FE0ED1FC0EDFF8090B612005D5D15FF16C09039 -F0001FE0ED07F0ED03F81501ED00FCA216FE167EA616FE16FC1501ED03F8150FED3FF000 -7FB612E016C0B712806CECFE0015F027337FB22C>I<02FF13700107EBE0F84913F9013F -13FD4913FFEBFF813901FE007F4848131FD807F0130F1507485A491303485A150148C7FC -A25A007EEC00F01600A212FE5AAB7E127EA3007F15F06CEC01F8A26C7EA26C6C13036D14 -F06C6C130716E0D803FC131F6C6CEB3FC03A00FF81FF806DB512006D5B010F5B6D13F001 -00138025357DB32C>I<007FB5FCB612C015F0816C803907E003FEEC00FFED7F80153FED -1FC0ED0FE0A2150716F0150316F81501A4ED00FCACED01F8A3150316F0A2150716E0150F -ED1FC0153FED7F80EDFF00EC03FE007FB55AB65A5D15C06C91C7FC26337EB22C>I<007F -B612F0B712F8A37E3903F00001A7ED00F01600A4EC01E04A7EA490B5FCA5EBF003A46E5A -91C8FCA5163C167EA8007FB612FEB7FCA36C15FC27337EB22C>I<007FB612F8B712FCA3 -7ED803F0C7FCA716781600A515F04A7EA490B5FCA5EBF001A46E5A92C7FCAD387FFFE0B5 -FC805C7E26337EB22C>I<903901FC038090390FFF87C04913EF017F13FF90B6FC481307 -3803FC01497E4848137F4848133F49131F121F5B003F140F90C7FCA2127EED078092C7FC -A212FE5AA8913803FFF84A13FCA27E007E6D13F89138000FC0A36C141FA27F121F6D133F -120F6D137F6C7E6C6C13FF6D5A3801FF076C90B5FC6D13EF011F13CF6DEB0780D901FCC7 -FC26357DB32C>II<007FB512F8B612FC -A36C14F839000FC000B3B3A5007FB512F8B612FCA36C14F81E3379B22C>I75 D<387FFFE0B57EA36C5BD803F0C8FCB3 -AE16F0ED01F8A8007FB6FCB7FCA36C15F025337DB22C>IIII<007FB512 -C0B612F88115FF6C15802603F00013C0153FED0FE0ED07F0A2150316F81501A6150316F0 -1507A2ED0FE0ED3FC015FF90B61280160015FC5D15C001F0C8FCB0387FFF80B57EA36C5B -25337EB22C>II<387FFFFCB67E15E015F86C803907E007FE1401EC007F6F7E -151FA26F7EA64B5AA2153F4BC7FCEC01FE140790B55A5D15E081819038E007FCEC01FE14 -00157F81A8160FEE1F80A5D87FFEEB1FBFB5ECFF00815E6C486D5AC8EA01F029347EB22C ->I<90381FF80790B5EA0F804814CF000714FF5A381FF01F383FC003497E48C7FC007E14 -7F00FE143F5A151FA46CEC0F00007E91C7FC127F7FEA3FE0EA1FFCEBFFC06C13FC0003EB -FFC06C14F06C6C7F01077F9038007FFEEC07FF02001380153FED1FC0A2ED0FE0A2007814 -0712FCA56CEC0FC0A26CEC1F806D133F01E0EB7F009038FE01FF90B55A5D00F914F0D8F8 -3F13C0D8700790C7FC23357CB32C>I<007FB612FCB712FEA43AFC007E007EA70078153C -C71400B3AF90383FFFFCA2497F6D5BA227337EB22C>I<3B7FFF803FFFC0B56C4813E0A3 -6C496C13C03B03F00001F800B3AF6D130300015DA26D130700005D6D130F017F495A6D6C -485AECE0FF6DB5C7FC6D5B010313F86D5B9038003F802B3480B22C>I87 D<3A3FFF03FFE0484913F0 -148714076C6D13E03A01F800FE007F0000495A13FE017E5BEB7F03013F5B1487011F5B14 -CF010F5B14FF6D5BA26D90C7FCA26D5AA26D5AA2497EA2497EA2497F81EB0FCF81EB1FC7 -EC87F0EB3F83EC03F8EB7F01017E7FEBFE00497F0001147E49137F000380491480151FD8 -7FFEEBFFFC6D5AB514FE6C15FC497E27337EB22C>II<003FB612C04815E0A4007EC7EA1FC0ED -3F80A2ED7F00157E15FE4A5A003C5CC712034A5AA24A5A4A5AA24A5A4AC7FCA214FE495A -A2495A495AA2495A495AA2495A49C8FCA213FE485AA24848EB03C049EB07E01207485A5B -121F485AA248C7FCB7FCA46C15C023337CB22C>I<387FFFFCB512FEA314FC00FCC7FCB3 -B3B3B512FC14FEA36C13FC17416FB92C>I<127012F8A27E127C127E123E123F7EA27F12 -0F7F12077F12037F12017F12007F137C137E133EA2133F7F80130F801307801303801301 -80130080147C147E143EA2143F8081140F81140781140381140181140081157CA2157E15 -3E153F811680150FA2ED070021417BB92C>I<387FFFFCB512FEA37EC7127EB3B3B3387F -FFFEB5FCA36C13FC17417DB92C>I<007FB6FCB71280A46C150021067B7D2C>95 -D<3801FFF0000713FE001F6D7E15E048809038C01FF81407EC01FC381F80000006C77EC8 -127EA3ECFFFE131F90B5FC1203120F48EB807E383FF800EA7FC090C7FC12FE5AA47E007F -14FEEB8003383FE01F6CB612FC6C15FE6C14BF0001EBFE1F3A003FF007FC27247CA32C> -97 DI<903803FFE0011F13F8017F13FE48B5FC48804848C6FCEA0FF0485A49137E -4848131890C9FC5A127EA25AA8127EA2127F6C140F6DEB1F806C7E6D133F6C6CEB7F0039 -07FE03FF6CB55A6C5C6C6C5B011F13E0010390C7FC21247AA32C>IIII -II< -1307EB1FC0A2497EA36D5AA20107C7FC90C8FCA7387FFFC080B5FC7EA2EA0007B3A8007F -B512FCB612FEA36C14FC1F3479B32C>I107 D<387FFFE0B57EA37EEA0003B3B3A5007F -B61280B712C0A36C158022337BB22C>I<3A7F83F007E09039CFFC1FF83AFFDFFE3FFCD8 -7FFF13FF91B57E3A07FE1FFC3E01FCEBF83F496C487E01F013E001E013C0A301C01380B3 -3B7FFC3FF87FF0027F13FFD8FFFE6D13F8D87FFC4913F0023F137F2D2481A32C>I<397F -F01FE039FFF87FFC9038F9FFFE01FB7F6CB6FC00019038F03F80ECC01F02807FEC000F5B -5BA25BB3267FFFE0B5FCB500F11480A36C01E0140029247FA32C>II<397FF01FE0 -39FFF8FFF801FB13FE90B6FC6C158000019038F07FC09138801FE091380007F049EB03F8 -5BED01FC491300A216FE167EA816FE6D14FCA2ED01F86D13036DEB07F0150F9138801FE0 -9138E07FC091B51280160001FB5B01F813F8EC3FC091C8FCAD387FFFE0B57EA36C5B2736 -7FA32C>I114 -D<90387FF8700003B512F8120F5A5A387FC00F387E00034813015AA36CEB00F0007F1400 -13F0383FFFC06C13FE6CEBFF80000314E0C66C13F8010113FCEB0007EC00FE0078147F00 -FC143F151F7EA26C143F6D133E6D13FE9038F007FC90B5FC15F815E000F8148039701FFC -0020247AA32C>I<131E133FA9007FB6FCB71280A36C1500D8003FC8FCB1ED03C0ED07E0 -A5EC800F011FEB1FC0ECE07F6DB51280160001035B6D13F89038003FE0232E7EAD2C>I< -3A7FF003FF80486C487FA3007F7F0001EB000FB3A3151FA2153F6D137F3900FE03FF90B7 -FC6D15807F6D13CF902603FE07130029247FA32C>I<3A7FFF01FFFCB514FE148314016C -15FC3A03E0000F80A26D131F00011500A26D5B0000143EA26D137E017C137CA2017E13FC -013E5BA2EB3F01011F5BA21483010F5BA214C701075BA214EF01035BA214FF6D90C7FCA2 -6D5A147C27247EA32C>II<3A3FFF03 -FFF048018713F8A36C010313F03A00FC007E005D90387E01F8013F5BEB1F83EC87E09038 -0FCFC0903807EF80EB03FF6D90C7FC5C6D5A147C14FE130180903803EF80903807CFC0EB -0FC7EC83E090381F01F0013F7FEB7E00017C137C49137E0001803A7FFF01FFFC1483B514 -FE6C15FC140127247EA32C>I<3A7FFF01FFFCB5008113FE148314816C010113FC3A03E0 -000F806C7E151F6D140012005D6D133E137C017E137E013E137CA2013F13FC6D5BA2EB0F -815DA2EB07C1ECC3E0A2EB03E3ECE7C0130114F75DEB00FFA292C7FC80A2143EA2147E14 -7CA214FC5CA2EA0C01003F5BEA7F83EB87E0EA7E0F495A387FFF806C90C8FC6C5A6C5AEA -07E027367EA32C>I<003FB612E04815F0A4007EC7EA1FE0ED3FC0ED7F80EDFF004A5A00 -3C495AC7485A4A5A4A5A4A5A4A5A4AC7FCEB01FC495AEB0FF0495A495A495A49C8FC4848 -EB01E04848EB03F0485A485A485A485A485AB7FCA46C15E024247DA32C>I<15FF020713 -80141F147F91B512004913C04AC7FCEB03F85CB31307EB1FE013FF007F5BB55A49C8FC6D -7E6C7FC67F131FEB07F01303B380EB01FEECFFC06D13FF6E1380141F1407020013002141 -7BB92C>I125 D E +%DVIPSBitmapFont: Fc ectt1000 10 80 +/Fc 80 126 df<007FB512F0B612F8A36C14F01D0579942C>21 D<121FEA3F80EA7FC0EA +FFE0B0EA7FC0AEEA1F00C7FCA7121FEA3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F000B34 +70B32C>33 D<003C131E007F137F481480A66C1400A6007E7FA6003E133EA3003C131E00 +1C131C191977B32C>I<0107131C90380F803EA8011F137EEC007CA4003FB612E0B712F8 +A43A003E00F800A2EB7E01017C5BA8EBFC0301F85BA2B712F8A4003F15E03A01F007C000 +A30003130F01E05BA86C486CC7FC25337DB22C>I38 D<143814FC13011303EB07F8EB0FF0EB1FC0EB +3F80EB7F0013FE485A485A5B12075B120F5B485AA2123F90C7FCA25A127EA312FE5AAC7E +127EA3127F7EA27F121FA26C7E7F12077F12037F6C7E6C7E137FEB3F80EB1FC0EB0FF0EB +07F8EB03FC130113001438164272B92C>40 D<127012FC7E7E6C7E6C7EEA0FE06C7E6C7E +6C7E6C7E137F7F1480131F14C0130FEB07E0A214F01303A214F81301A314FC1300AC1301 +14F8A3130314F0A2130714E0A2EB0FC0131F1480133F14005B13FE485A485A485A485AEA +3FC0485A48C7FC5A5A1270164279B92C>II<147014F8AF003FB612E0B712F8A4C700F8C7FCB0147025267DAB +2C>II<007FB512F0B612F8A36C14F01D +0579942C>I<121FEA3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F000B0B708A2C>I<1507ED +0F80A2151F16005D153E157E157CA215FC5D14015D14035D14075D140F5D141F92C7FC5C +143EA2147E147C14FC5C13015C13035C13075C130F5C131F91C8FC5B133EA2137E137C13 +FC5B12015B12035B12075B120F5B121F90C9FCA25A123E127E127C12FC5AA2127021417B +B92C>II<1307497EA2131FA2133F13 +7F13FF5A1207127FB5FC13DF139FEA7C1F1200B3AE007FB512E0B612F0A36C14E01C3477 +B32C>IIII<000FB512FE4880 +A35D0180C8FCADEB83FE90389FFF8090B512E015F8819038FE03FE9038F000FF01C07F49 +EB3F8090C7121F6C15C0C8120FA2ED07E0A4123C127EB4FC150F16C0A248141F007EEC3F +80007FEC7F006C6C5B6D485A391FF80FFC6CB55A6C5C000114C06C6C90C7FCEB0FF82334 +7CB22C>I56 DI<121FEA3F80EA7FC0EAFFE0A5EA7FC0EA +3F80EA1F00C7FCAE121FEA3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F000B2470A32C>I< +EA0F80EA1FC0EA3FE0EA7FF0A5EA3FE0EA1FC0EA0F80C7FCAEEA0F80EA1FE0EA3FF0EA7F +F8A213FCA3123F121F120F120013F8A21201EA03F01207EA1FE0EA7FC0EAFF80130012FC +12700E3071A32C>I<1502ED0F80151F157F15FF913803FE00EC0FFCEC1FF0EC7FE0ECFF +80D903FEC7FC495AEB1FF0495AEBFF80000390C8FCEA07FCEA1FF8EA3FE0EAFF8090C9FC +A27FEA3FE0EA1FF8EA07FC6CB4FCC67FEB3FE06D7EEB07FC6D7E903800FF80EC7FE0EC1F +F0EC0FFCEC03FE913800FF80157F151F150FED0200212A7BAD2C>I<007FB612F0B712F8 +A36C15F0CAFCA8007FB612F0B712F8A36C15F025127DA12C>I<122012F87EB4FC7FEA3F +E0EA1FF8EA07FC6CB4FCC67FEB3FE06D7EEB07FC6D7E903800FF80EC7FE0EC1FF0EC0FFC +EC03FE913800FF80157FA215FF913803FE00EC0FFCEC1FF0EC7FE0ECFF80D903FEC7FC49 +5AEB1FF0495AEBFF80000390C8FCEA07FCEA1FF8EA3FE0EAFF8090C9FC12FC5A1220212A +7BAD2C>I<14FE497EA4497FA214EFA2130781A214C7A2010F7FA314C390381F83F0A590 +383F01F8A490387E00FCA549137E90B512FEA34880A29038F8003FA34848EB1F80A40007 +15C049130FD87FFEEBFFFC6D5AB514FE6C15FC497E27347EB32C>65 +D<007FB512E015F8B612FE6C8016C03903F0003FED0FE0ED07F01503A2ED01F8A6ED03F0 +A21507ED0FE0ED1FC0EDFF8090B612005D5D15FF16C09039F0001FE0ED07F0ED03F81501 +ED00FCA216FE167EA616FE16FC1501ED03F8150FED3FF0007FB612E016C0B712806CECFE +0015F027337FB22C>I<02FF13700107EBE0F84913F9013F13FD4913FFEBFF813901FE00 +7F4848131FD807F0130F1507485A491303485A150148C7FCA25A007EEC00F01600A212FE +5AAB7E127EA3007F15F06CEC01F8A26C7EA26C6C13036D14F06C6C130716E0D803FC131F +6C6CEB3FC03A00FF81FF806DB512006D5B010F5B6D13F00100138025357DB32C>I<007F +B5FCB612C015F0816C803907E003FEEC00FFED7F80153FED1FC0ED0FE0A2150716F01503 +16F81501A4ED00FCACED01F8A3150316F0A2150716E0150FED1FC0153FED7F80EDFF00EC +03FE007FB55AB65A5D15C06C91C7FC26337EB22C>I<007FB612F0B712F8A37E3903F000 +01A7ED00F01600A4EC01E04A7EA490B5FCA5EBF003A46E5A91C8FCA5163C167EA8007FB6 +12FEB7FCA36C15FC27337EB22C>I<007FB612F8B712FCA37ED803F0C7FCA716781600A5 +15F04A7EA490B5FCA5EBF001A46E5A92C7FCAD387FFFE0B5FC805C7E26337EB22C>I<90 +3901FC038090390FFF87C04913EF017F13FF90B6FC4813073803FC01497E4848137F4848 +133F49131F121F5B003F140F90C7FCA2127EED078092C7FCA212FE5AA8913803FFF84A13 +FCA27E007E6D13F89138000FC0A36C141FA27F121F6D133F120F6D137F6C7E6C6C13FF6D +5A3801FF076C90B5FC6D13EF011F13CF6DEB0780D901FCC7FC26357DB32C>II<007FB512F8B612FCA36C14F839000FC000B3B3A5 +007FB512F8B612FCA36C14F81E3379B22C>I75 D<387FFFE0B57EA36C5BD803F0C8FCB3AE16F0ED01F8A8007FB6FCB7 +FCA36C15F025337DB22C>IIII<007FB512C0B612F88115FF6C15802603 +F00013C0153FED0FE0ED07F0A2150316F81501A6150316F01507A2ED0FE0ED3FC015FF90 +B61280160015FC5D15C001F0C8FCB0387FFF80B57EA36C5B25337EB22C>II< +387FFFFCB67E15E015F86C803907E007FE1401EC007F6F7E151FA26F7EA64B5AA2153F4B +C7FCEC01FE140790B55A5D15E081819038E007FCEC01FE1400157F81A8160FEE1F80A5D8 +7FFEEB1FBFB5ECFF00815E6C486D5AC8EA01F029347EB22C>I<90381FF80790B5EA0F80 +4814CF000714FF5A381FF01F383FC003497E48C7FC007E147F00FE143F5A151FA46CEC0F +00007E91C7FC127F7FEA3FE0EA1FFCEBFFC06C13FC0003EBFFC06C14F06C6C7F01077F90 +38007FFEEC07FF02001380153FED1FC0A2ED0FE0A20078140712FCA56CEC0FC0A26CEC1F +806D133F01E0EB7F009038FE01FF90B55A5D00F914F0D8F83F13C0D8700790C7FC23357C +B32C>I<007FB612FCB712FEA43AFC007E007EA70078153CC71400B3AF90383FFFFCA249 +7F6D5BA227337EB22C>I<3B7FFF803FFFC0B56C4813E0A36C496C13C03B03F00001F800 +B3AF6D130300015DA26D130700005D6D130F017F495A6D6C485AECE0FF6DB5C7FC6D5B01 +0313F86D5B9038003F802B3480B22C>I87 D<3A3FFF03FFE0484913F0148714076C6D13E03A01F800 +FE007F0000495A13FE017E5BEB7F03013F5B1487011F5B14CF010F5B14FF6D5BA26D90C7 +FCA26D5AA26D5AA2497EA2497EA2497F81EB0FCF81EB1FC7EC87F0EB3F83EC03F8EB7F01 +017E7FEBFE00497F0001147E49137F000380491480151FD87FFEEBFFFC6D5AB514FE6C15 +FC497E27337EB22C>II<003FB612C04815E0A4007EC7EA1FC0ED3F80A2ED7F00157E15FE4A5A +003C5CC712034A5AA24A5A4A5AA24A5A4AC7FCA214FE495AA2495A495AA2495A495AA249 +5A49C8FCA213FE485AA24848EB03C049EB07E01207485A5B121F485AA248C7FCB7FCA46C +15C023337CB22C>I<387FFFFCB512FEA314FC00FCC7FCB3B3B3B512FC14FEA36C13FC17 +416FB92C>I<127012F8A27E127C127E123E123F7EA27F120F7F12077F12037F12017F12 +007F137C137E133EA2133F7F80130F80130780130380130180130080147C147E143EA214 +3F8081140F81140781140381140181140081157CA2157E153E153F811680150FA2ED0700 +21417BB92C>I<387FFFFCB512FEA37EC7127EB3B3B3387FFFFEB5FCA36C13FC17417DB9 +2C>I<007FB6FCB71280A46C150021067B7D2C>95 D<3801FFF0000713FE001F6D7E15E0 +48809038C01FF81407EC01FC381F80000006C77EC8127EA3ECFFFE131F90B5FC1203120F +48EB807E383FF800EA7FC090C7FC12FE5AA47E007F14FEEB8003383FE01F6CB612FC6C15 +FE6C14BF0001EBFE1F3A003FF007FC27247CA32C>97 DI<903803FFE0011F13F801 +7F13FE48B5FC48804848C6FCEA0FF0485A49137E4848131890C9FC5A127EA25AA8127EA2 +127F6C140F6DEB1F806C7E6D133F6C6CEB7F003907FE03FF6CB55A6C5C6C6C5B011F13E0 +010390C7FC21247AA32C>IIIIII<1307EB1FC0A2497EA36D5AA20107C7FC +90C8FCA7387FFFC080B5FC7EA2EA0007B3A8007FB512FCB612FEA36C14FC1F3479B32C> +I107 D<387FFFE0B57EA37EEA0003B3B3A5007FB61280B712C0A36C158022337BB22C>I< +3A7F83F007E09039CFFC1FF83AFFDFFE3FFCD87FFF13FF91B57E3A07FE1FFC3E01FCEBF8 +3F496C487E01F013E001E013C0A301C01380B33B7FFC3FF87FF0027F13FFD8FFFE6D13F8 +D87FFC4913F0023F137F2D2481A32C>I<397FF01FE039FFF87FFC9038F9FFFE01FB7F6C +B6FC00019038F03F80ECC01F02807FEC000F5B5BA25BB3267FFFE0B5FCB500F11480A36C +01E0140029247FA32C>II<397FF01FE039FFF8FFF801FB13FE90B6FC6C15800001 +9038F07FC09138801FE091380007F049EB03F85BED01FC491300A216FE167EA816FE6D14 +FCA2ED01F86D13036DEB07F0150F9138801FE09138E07FC091B51280160001FB5B01F813 +F8EC3FC091C8FCAD387FFFE0B57EA36C5B27367FA32C>I114 D<90387FF8700003B512F8120F5A5A387F +C00F387E00034813015AA36CEB00F0007F140013F0383FFFC06C13FE6CEBFF80000314E0 +C66C13F8010113FCEB0007EC00FE0078147F00FC143F151F7EA26C143F6D133E6D13FE90 +38F007FC90B5FC15F815E000F8148039701FFC0020247AA32C>I<131E133FA9007FB6FC +B71280A36C1500D8003FC8FCB1ED03C0ED07E0A5EC800F011FEB1FC0ECE07F6DB5128016 +0001035B6D13F89038003FE0232E7EAD2C>I<3A7FF003FF80486C487FA3007F7F0001EB +000FB3A3151FA2153F6D137F3900FE03FF90B7FC6D15807F6D13CF902603FE0713002924 +7FA32C>I<3A7FFF01FFFCB514FE148314016C15FC3A03E0000F80A26D131F00011500A2 +6D5B0000143EA26D137E017C137CA2017E13FC013E5BA2EB3F01011F5BA21483010F5BA2 +14C701075BA214EF01035BA214FF6D90C7FCA26D5A147C27247EA32C>II<3A3FFF03FFF048018713F8A36C010313F03A00FC00 +7E005D90387E01F8013F5BEB1F83EC87E090380FCFC0903807EF80EB03FF6D90C7FC5C6D +5A147C14FE130180903803EF80903807CFC0EB0FC7EC83E090381F01F0013F7FEB7E0001 +7C137C49137E0001803A7FFF01FFFC1483B514FE6C15FC140127247EA32C>I<3A7FFF01 +FFFCB5008113FE148314816C010113FC3A03E0000F806C7E151F6D140012005D6D133E13 +7C017E137E013E137CA2013F13FC6D5BA2EB0F815DA2EB07C1ECC3E0A2EB03E3ECE7C013 +0114F75DEB00FFA292C7FC80A2143EA2147E147CA214FC5CA2EA0C01003F5BEA7F83EB87 +E0EA7E0F495A387FFF806C90C8FC6C5A6C5AEA07E027367EA32C>I<003FB612E04815F0 +A4007EC7EA1FE0ED3FC0ED7F80EDFF004A5A003C495AC7485A4A5A4A5A4A5A4A5A4AC7FC +EB01FC495AEB0FF0495A495A495A49C8FC4848EB01E04848EB03F0485A485A485A485A48 +5AB7FCA46C15E024247DA32C>I<15FF02071380141F147F91B512004913C04AC7FCEB03 +F85CB31307EB1FE013FF007F5BB55A49C8FC6D7E6C7FC67F131FEB07F01303B380EB01FE +ECFFC06D13FF6E1380141F14070200130021417BB92C>I125 +D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fd ecbx1200 12 36 /Fd 36 121 df<160C161EB3B0007FBB1280BC12C0A26C1A80C9001ECAFCB3B0160C4A4A @@ -439,128 +440,131 @@ F0017F13FC3901FC07FF2603F003138048486C13C0496C13E0EA0FF86D14F0487EA66C48 804AC7FC14F090C9FCA7EB03FE90381FFFE0017F13F89038FE07FC9038F003FFD9C00113 80496C13C090C7FC000E15E0C8127F16F0A216F8A3121FEA3FC0487E12FF7FA316F05B15 FFD87F8014E0007EC713C0003E5B003F4913806C6C481300390FF01FFE6CB512F8000114 -E06C6C1380D90FF8C7FC25377BB530>53 D<123C123EEA3FE090B71280A41700485D5E5E -5E5EA2007CC7EA0FC000784A5A4BC7FC00F8147E485C5D14014A5AC7485A4A5AA24A5A14 -3F4AC8FCA214FEA213015C1303A21307A2130F5CA2131FA5133FA96D5A6D5A6D5A29397B -B730>55 D65 -DII< -B87E17F817FF18C028007FF8000713F09338007FF8EF1FFE717E050313807113C0A27113 -E0F07FF0A2F03FF8A219FC181FA219FEA419FFAC19FEA419FC183FA219F8187F19F0F0FF -E0A24D13C04D13804D1300EF1FFEEF7FFC933807FFF0B912C095C7FC17FC178040397DB8 -49>IIII73 D76 DIIIIIII<003FB91280A4D9F800EBF003D87FC09238007FC049 -161F007EC7150FA2007C1707A200781703A400F818E0481701A4C892C7FCB3AE010FB7FC -A43B387DB742>II<007FB9FCBA1280A36C1800 -3905786A4A>95 D97 D<13FFB5FCA412077EAF4AB47E020F13F0023F13FC91 -38FE03FFDAF00013804AEB7FC00280EB3FE091C713F0EE1FF8A217FC160FA217FEAA17FC -A3EE1FF8A217F06E133F6EEB7FE06E14C0903AFDF001FF80903AF8FC07FE009039F03FFF -F8D9E00F13E0D9C00390C7FC2F3A7EB935>I<903801FFC0010F13FC017F13FFD9FF8013 -802603FE0013C048485AEA0FF8121F13F0123F6E13804848EB7F00151C92C7FC12FFA912 -7FA27F123FED01E06C7E15036C6CEB07C06C6C14806C6C131FC69038C07E006DB45A010F -13F00101138023257DA42A>II<903803FF80011F13F0017F13FC3901FF83FE3A03FE007F804848133F -484814C0001FEC1FE05B003FEC0FF0A2485A16F8150712FFA290B6FCA301E0C8FCA4127F -A36C7E1678121F6C6C14F86D14F000071403D801FFEB0FE06C9038C07FC06DB51200010F -13FC010113E025257DA42C>II<161FD907FEEBFFC090387FFFE348B6EAEFE02607FE07138F260FF8 -01131F48486C138F003F15CF4990387FC7C0EEC000007F81A6003F5DA26D13FF001F5D6C -6C4890C7FC3907FE07FE48B512F86D13E0261E07FEC8FC90CAFCA2123E123F7F6C7E90B5 -12F8EDFF8016E06C15F86C816C815A001F81393FC0000F48C8138048157F5A163FA36C15 -7F6C16006D5C6C6C495AD81FF0EB07FCD807FEEB3FF00001B612C06C6C91C7FC010713F0 -2B377DA530>I<13FFB5FCA412077EAFED7FC0913803FFF8020F13FE91381F03FFDA3C01 -138014784A7E4A14C05CA25CA291C7FCB3A3B5D8FC3F13FFA4303A7DB935>II<13FFB5FCA412077EB3B3ACB512FCA4163A7DB91B>108 D<01FED97FE0EB0FFC00 -FF902601FFFC90383FFF80020701FF90B512E0DA1F81903983F03FF0DA3C00903887801F -000749DACF007F00034914DE6D48D97FFC6D7E4A5CA24A5CA291C75BB3A3B5D8FC1FB500 -83B512F0A44C257DA451>I<01FEEB7FC000FF903803FFF8020F13FE91381F03FFDA3C01 -1380000713780003497E6D4814C05CA25CA291C7FCB3A3B5D8FC3F13FFA430257DA435> -I<903801FFC0010F13F8017F13FFD9FF807F3A03FE003FE048486D7E48486D7E48486D7E -A2003F81491303007F81A300FF1680A9007F1600A3003F5D6D1307001F5DA26C6C495A6C -6C495A6C6C495A6C6C6CB45A6C6CB5C7FC011F13FC010113C029257DA430>I<9039FF01 -FF80B5000F13F0023F13FC9138FE07FFDAF00113800003496C13C00280EB7FE091C713F0 -EE3FF8A2EE1FFCA3EE0FFEAA17FC161FA217F8163F17F06E137F6E14E06EEBFFC0DAF003 -13809139FC07FE0091383FFFF8020F13E0020390C7FC91C9FCACB512FCA42F357EA435> -I<9038FE03F000FFEB0FFEEC3FFF91387C7F809138F8FFC000075B6C6C5A5CA29138807F -80ED3F00150C92C7FC91C8FCB3A2B512FEA422257EA427>114 D<90383FF0383903FFFE -F8000F13FF381FC00F383F0003007E1301007C130012FC15787E7E6D130013FCEBFFE06C -13FCECFF806C14C06C14F06C14F81203C614FC131F9038007FFE140700F0130114007E15 -7E7E157C6C14FC6C14F8EB80019038F007F090B512C000F8140038E01FF81F257DA426> -I<130FA55BA45BA25B5BA25A1207001FEBFFE0B6FCA3000390C7FCB21578A815F86CEB80 -F014816CEBC3E090383FFFC06D1380903803FE001D357EB425>I<01FFEC3FC0B5EB3FFF -A4000714016C80B3A35DA25DA26C5C6E4813E06CD9C03E13FF90387FFFFC011F13F00103 -138030257DA435>III -II +E06C6C1380D90FF8C7FC25377BB530>53 D<49B47E010F13F0013F13FC9038FE01FF3A01 +F8007F804848EB3FC04848EB1FE0150F484814F01507121FA27F7F7F6D130F01FF14E014 +C09138E01FC06CEBF83F9138FE7F806C9038FFFE005D6C14F06C14FC6C14FF6D14806D14 +C090B612E0D803FD14F02607F07F13F848487E261FC00F13FC383F8003007F010013FE90 +C7127F151F00FE140715031501A21500A216FC7E6C14016D14F86C6C13036DEB07F06C6C +EB0FE0D80FFEEB7FC00003B61200C614FC013F13F00103138027377CB530>56 +D65 DIIIIII73 +D76 DII< +EDFFF8020FEBFF80027F14F0903A01FFC01FFC010790380007FFD91FFC010113C0D93FF0 +6D6C7E49486E7E49486E7E48496E7E48834890C86C7EA248486F1380A248486F13C0A200 +3F18E0A348486F13F0A400FF18F8AC007F18F06D5DA3003F18E0A26D5D001F18C0A26C6C +4B13806C18006E5C6C6D4A5A6C5F6C6D4A5A6D6C4A5AD93FFC49485A6DB401075B0107D9 +C01F90C7FC010190B512FC6D6C14F0020F1480020001F8C8FC3D3B7BB948>IIIII<003FB91280A4D9F800EBF003D87FC09238007FC049161F007EC7150FA200 +7C1707A200781703A400F818E0481701A4C892C7FCB3AE010FB7FCA43B387DB742>II<007FB9FCBA1280A36C18003905786A4A>95 +D97 D<13FFB5FCA412077EAF4AB47E020F13F0023F13FC9138FE03FFDAF000 +13804AEB7FC00280EB3FE091C713F0EE1FF8A217FC160FA217FEAA17FCA3EE1FF8A217F0 +6E133F6EEB7FE06E14C0903AFDF001FF80903AF8FC07FE009039F03FFFF8D9E00F13E0D9 +C00390C7FC2F3A7EB935>I<903801FFC0010F13FC017F13FFD9FF8013802603FE0013C0 +48485AEA0FF8121F13F0123F6E13804848EB7F00151C92C7FC12FFA9127FA27F123FED01 +E06C7E15036C6CEB07C06C6C14806C6C131FC69038C07E006DB45A010F13F00101138023 +257DA42A>I +I<903803FF80011F13F0017F13FC3901FF83FE3A03FE007F804848133F484814C0001FEC +1FE05B003FEC0FF0A2485A16F8150712FFA290B6FCA301E0C8FCA4127FA36C7E1678121F +6C6C14F86D14F000071403D801FFEB0FE06C9038C07FC06DB51200010F13FC010113E025 +257DA42C>II<161FD907FEEBFFC090387FFFE348B6EAEFE02607FE07138F260FF801131F48486C13 +8F003F15CF4990387FC7C0EEC000007F81A6003F5DA26D13FF001F5D6C6C4890C7FC3907 +FE07FE48B512F86D13E0261E07FEC8FC90CAFCA2123E123F7F6C7E90B512F8EDFF8016E0 +6C15F86C816C815A001F81393FC0000F48C8138048157F5A163FA36C157F6C16006D5C6C +6C495AD81FF0EB07FCD807FEEB3FF00001B612C06C6C91C7FC010713F02B377DA530>I< +13FFB5FCA412077EAFED7FC0913803FFF8020F13FE91381F03FFDA3C01138014784A7E4A +14C05CA25CA291C7FCB3A3B5D8FC3F13FFA4303A7DB935>II<13FFB5 +FCA412077EB3B3ACB512FCA4163A7DB91B>108 D<01FED97FE0EB0FFC00FF902601FFFC +90383FFF80020701FF90B512E0DA1F81903983F03FF0DA3C00903887801F000749DACF00 +7F00034914DE6D48D97FFC6D7E4A5CA24A5CA291C75BB3A3B5D8FC1FB50083B512F0A44C +257DA451>I<01FEEB7FC000FF903803FFF8020F13FE91381F03FFDA3C01138000071378 +0003497E6D4814C05CA25CA291C7FCB3A3B5D8FC3F13FFA430257DA435>I<903801FFC0 +010F13F8017F13FFD9FF807F3A03FE003FE048486D7E48486D7E48486D7EA2003F814913 +03007F81A300FF1680A9007F1600A3003F5D6D1307001F5DA26C6C495A6C6C495A6C6C49 +5A6C6C6CB45A6C6CB5C7FC011F13FC010113C029257DA430>I<9039FF01FF80B5000F13 +F0023F13FC9138FE07FFDAF00113800003496C13C00280EB7FE091C713F0EE3FF8A2EE1F +FCA3EE0FFEAA17FC161FA217F8163F17F06E137F6E14E06EEBFFC0DAF00313809139FC07 +FE0091383FFFF8020F13E0020390C7FC91C9FCACB512FCA42F357EA435>I<9038FE03F0 +00FFEB0FFEEC3FFF91387C7F809138F8FFC000075B6C6C5A5CA29138807F80ED3F00150C +92C7FC91C8FCB3A2B512FEA422257EA427>114 D<90383FF0383903FFFEF8000F13FF38 +1FC00F383F0003007E1301007C130012FC15787E7E6D130013FCEBFFE06C13FCECFF806C +14C06C14F06C14F81203C614FC131F9038007FFE140700F0130114007E157E7E157C6C14 +FC6C14F8EB80019038F007F090B512C000F8140038E01FF81F257DA426>I<130FA55BA4 +5BA25B5BA25A1207001FEBFFE0B6FCA3000390C7FCB21578A815F86CEB80F014816CEBC3 +E090383FFFC06D1380903803FE001D357EB425>I<01FFEC3FC0B5EB3FFFA4000714016C +80B3A35DA25DA26C5C6E4813E06CD9C03E13FF90387FFFFC011F13F00103138030257DA4 +35>IIIII E %EndDVIPSBitmapFont %DVIPSBitmapFont: Ff ecbx1440 14.4 24 @@ -764,17 +768,15 @@ F0130013F8023C5C0001017C147EED01F813FC027814FE0000D9F8005BA24A13FC017C5D 075C130FA2495A1220D8383FC8FCEA3FFEA25B5BEA0FE023367FA426>I E %EndDVIPSBitmapFont -%DVIPSBitmapFont: Fh ecrm1000 10 70 -/Fh 70 123 df27 DII<146014E0EB01C0EB0380EB0700130E131E5B5BA25B485AA2485AA212075B12 -0F90C7FCA25A121EA2123EA35AA65AB2127CA67EA3121EA2121F7EA27F12077F1203A26C -7EA26C7E1378A27F7F130E7FEB0380EB01C0EB00E01460135278BD20>40 +12C0A32A3B7FBA2E>I<146014E0EB01C0EB0380EB0700130E131E5B5BA25B485AA2485A +A212075B120F90C7FCA25A121EA2123EA35AA65AB2127CA67EA3121EA2121F7EA27F1207 +7F1203A26C7EA26C7E1378A27F7F130E7FEB0380EB01C0EB00E01460135278BD20>40 D<12C07E12707E7E7E120F6C7E6C7EA26C7E6C7EA21378A2137C133C133E131EA2131F7F A21480A3EB07C0A6EB03E0B2EB07C0A6EB0F80A31400A25B131EA2133E133C137C1378A2 5BA2485A485AA2485A48C7FC120E5A5A5A5A5A13527CBD20>I<1530B3A8B912FCA2C800 @@ -1069,7 +1071,7 @@ letter 1 0 bop 0 201 a Fi(SALOME)54 b(Kernel)g(resources)f(fo)l(r)g(develop)t (er)p 0 315 3900 24 v 0 428 a Fh(An)n(toine)28 b(Y)-7 b(essa)n(y)n(an,)25 b(P)n(aul)j(Rascle)1735 b(V)-7 b(ersion)27 -b(0.1)g(Jan)n(uary)e(16,)i(2002)0 734 y Fg(This)33 b(do)r(cument)g +b(0.2)g(Jan)n(uary)e(28,)i(2005)0 734 y Fg(This)33 b(do)r(cument)g (describ)r(es)g(the)g(development)f(environment)g(fo)n(r)i(C++)e(and)h (Python.)53 b(Mak)n(e\034les)32 b(generation)g(and)h(usage)0 848 y(a)n(re)40 b(intro)r(duced)f(in)h(another)g(do)r(cument:)61 @@ -1105,7 +1107,7 @@ g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(5)315 3101 y(2.1.2)94 b(usage)79 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h (.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.) h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f -(.)h(.)134 b(5)125 3257 y(2.2)83 b(CORBA)28 b(exceptions)f(.)41 +(.)h(.)134 b(6)125 3257 y(2.2)83 b(CORBA)28 b(exceptions)f(.)41 b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h (.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.) f(.)h(.)f(.)h(.)f(.)h(.)134 b(6)315 3414 y(2.2.1)94 b(de\034nition)67 @@ -1116,13 +1118,13 @@ b(usage)79 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h (.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.) f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(7)0 3810 y Fe(3)77 b(Miscellaneous)29 b(to)s(ols)2919 -b(7)125 3966 y Fh(3.1)83 b(Singleton)c(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h +b(8)125 3966 y Fh(3.1)83 b(Singleton)c(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h (.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.) f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h -(.)f(.)h(.)f(.)h(.)134 b(7)315 4123 y(3.1.1)94 b(De\034nition)50 +(.)f(.)h(.)f(.)h(.)134 b(8)315 4123 y(3.1.1)94 b(De\034nition)50 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.) h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f -(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(7)315 4279 y(3.1.2)94 +(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(8)315 4279 y(3.1.2)94 b(Usage)63 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h (.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.) f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 @@ -1164,280 +1166,302 @@ b(When)32 b(an)g(end)g(user)f(is)g(confron)n(ted)g(to)h(suc)n(h)f(a)h (eople)f(in)g(c)n(harge)e(of)i(SALOME)h(installation,)0 1366 y(or)i(to)g(the)h(dev)n(elopmen)n(t)f(team,)h(follo)n(wing)e(the)i (kind)g(of)f(error.)0 1658 y Fd(1.2)112 b(C++)38 b(Macros)g(for)f -(trace)g(and)i(debug)0 1868 y Fh(SALOME)23 b(pro)n(vides)d(C++)h -(macros)g(for)g(trace)h(and)f(debug.)35 b(These)22 b(macros)e(are)i(in) -g Fc(SALOME/src/utils)o(/u)o(ti)o(lit)o(ie)o(s.)o(h)0 -1981 y Fh(and)30 b(this)h(\034le)g(m)n(ust)g(b)r(e)g(included)g(in)g -(C++)f(source.)45 b(Some)30 b(macros)f(are)h(activ)-5 -b(ated)30 b(only)g(in)h(debug)g(mo)r(de,)g(others)f(are)0 -2095 y(alw)n(a)n(ys)c(activ)-5 b(ated.)37 b(T)-7 b(o)27 -b(activ)-5 b(ate)28 b(the)g(debug)f(mo)r(de,)h Fc(_DEBUG_)d -Fh(m)n(ust)j(b)r(e)g(de\034ned,)g(whic)n(h)g(is)g(the)g(case)f(when)h -(SALOME)0 2208 y(Mak)n(e\034les)k(are)g(generated)f(from)i -(con\034gure,)g(without)g(options.)53 b(When)33 b Fc(_DEBUG_)d -Fh(is)j(unde\034ned)g(\(release)f(mo)r(de\),)j(the)0 -2322 y(debug)c(mo)r(de)h(macros)d(are)i(de\034ned)h(empt)n(y)f(\(they)h -(do)f(nothing\).)48 b(So,)32 b(when)g(switc)n(hing)f(from)g(debug)g(to) -g(release,)g(it)h(is)0 2436 y(p)r(ossible)27 b(\(and)h(recommended\))f -(to)g(let)h(the)g(macro)f(calls)f(unc)n(hanged)h(in)h(the)g(source.)0 -2592 y(All)23 b(the)h(macros)d(writing)i(on)f(the)i(standard)e(output)h -(start)g(b)n(y)f(\035ushing)h(the)g(standard)f(error.)34 -b(A)n(t)23 b(the)g(end)h(of)f(the)g(displa)n(y)0 2706 -y(those)k(macros)f(\035ush)i(the)g(standard)e(output.)0 -2862 y(T)-7 b(w)n(o)27 b(informations)f(are)h(systematically)f(added)i -(in)g(fron)n(t)f(of)g(the)h(information)f(displa)n(y)n(ed:)125 -3102 y Fb(\017)41 b Fh(the)28 b(name)f(of)g(the)h(source)f(\034le)g(in) -h(whic)n(h)g(the)g(macros)e(is)h(set;)125 3282 y Fb(\017)41 -b Fh(the)28 b(line)f(n)n(um)n(b)r(er)h(of)f(the)h(source)e(\034le)i(at) -g(whic)n(h)f(the)h(macro)e(is)i(set.)0 3554 y Fe(1.2.1)94 -b(Macros)32 b(de\034ned)f(in)g(debug)h(and)g(release)f(mo)s(des)0 -3764 y(INF)m(OS_COMPILA)-8 b(TION)84 b Fh(The)30 b(C++)f(macro)g -Fc(INFOS_COMPILATIO)o(N)24 b Fh(writes)30 b(on)g(the)g(standard)f -(output)i(infor-)0 3878 y(mations)c(ab)r(out)h(the)f(compiling)h(pro)r -(cess:)125 4117 y Fb(\017)41 b Fh(the)28 b(name)f(of)g(the)h(compiler)f -(:)37 b Fc(g++,)42 b(KCC,)g(CC,)g(pgCC)p Fh(;)125 4297 -y Fb(\017)f Fh(the)28 b(date)f(and)g(the)h(time)g(of)g(the)g(compiling) -f(pro)r(cessing)f(pro)r(cess.)0 4537 y(This)35 b(macro)f -Fc(INFOS_COMPILATIO)o(N)29 b Fh(do)r(es)35 b(not)g(ha)n(v)n(e)f(an)n(y) -g(argumen)n(t.)58 b(Moreo)n(v)n(er,)35 b(it)g(is)g(de\034ned)h(in)f(b)r -(oth)h(compiling)0 4650 y(mo)r(de)28 b(:)37 b Fc(_DEBUG_)24 -b Fh(and)k Fc(_RELEASE_)p Fh(.)0 4807 y(Example)g(:)0 -5046 y Fc(#include)40 b("utilities.h")0 5160 y(int)i(main\(int)e(argc)i -(,)i(char)d(**argv\))0 5274 y({)87 5387 y(INFOS_COMPILATIO)o(N;)p -eop +(trace)g(and)i(debug)0 1868 y Fh(SALOME)119 b(pro)n(vides)e(C++)h +(macros)f(for)i(trace)f(and)g(debug.)310 b(These)119 +b(macros)e(are)h(in)0 1981 y Fc(SALOME/src/SALOM)o(EL)o(oca)o(lT)o(ra)o +(ce/)o(ut)o(il)o(iti)o(es)o(.h)44 b Fh(and)50 b(this)g(\034le)h(m)n +(ust)f(b)r(e)g(included)h(in)g(C++)e(source.)103 b(Some)0 +2095 y(macros)22 b(are)g(activ)-5 b(ated)23 b(only)g(in)g(debug)h(mo)r +(de,)g(others)e(are)h(alw)n(a)n(ys)e(activ)-5 b(ated.)35 +b(T)-7 b(o)23 b(activ)-5 b(ate)23 b(the)h(debug)f(mo)r(de,)h +Fc(_DEBUG_)0 2208 y Fh(m)n(ust)i(b)r(e)h(de\034ned,)g(whic)n(h)f(is)h +(the)f(case)g(when)g(SALOME)h(Mak)n(e\034les)e(are)h(generated)f(from)h +(con\034gure,)f(without)i(options.)0 2322 y(When)g Fc(_DEBUG_)c +Fh(is)j(unde\034ned)h(\(release)f(mo)r(de:)36 b Fc(configure)k +(\025disable-debug)d(\025enable-producti)o(on)p Fh(\),)21 +b(the)26 b(debug)0 2436 y(mo)r(de)i(macros)e(are)h(de\034ned)h(empt)n +(y)g(\(they)h(do)e(nothing\).)38 b(So,)28 b(when)g(switc)n(hing)g(from) +f(debug)h(to)g(release,)e(it)j(is)e(p)r(ossible)0 2549 +y(\(and)h(recommended\))f(to)g(let)h(the)g(macro)e(calls)h(unc)n +(hanged)g(in)h(the)g(source.)0 2706 y(All)21 b(the)g(macros)e(generate) +g(trace)h(messages,)h(stored)e(in)i(a)g(circular)e(bu\033er)i(p)r(o)r +(ol.)34 b(A)21 b(separate)e(thread)h(reads)g(the)h(messages)0 +2819 y(in)27 b(the)g(bu\033er)f(p)r(o)r(ol,)h(and,)g(dep)r(ending)g(on) +f(options)g(giv)n(en)f(at)i(SALOME)g(start,)f(writes)g(the)h(messages)e +(on)h(the)h(standard)0 2933 y(output,)h(a)f(\034le,)h(or)f(send)g(them) +h(via)f(CORBA,)h(in)g(case)e(of)i(a)f(m)n(ulti)h(mac)n(hine)f +(con\034guration.)0 3089 y(Three)g(informations)g(are)f(systematically) +h(added)g(in)h(fron)n(t)f(of)g(the)h(information)f(displa)n(y)n(ed:)125 +3329 y Fb(\017)41 b Fh(the)28 b(thread)f(n)n(um)n(b)r(er)g(from)g(whic) +n(h)h(the)f(message)g(come)g(from;)125 3509 y Fb(\017)41 +b Fh(the)28 b(name)f(of)g(the)h(source)f(\034le)g(in)h(whic)n(h)g(the)g +(macros)e(is)h(set;)125 3689 y Fb(\017)41 b Fh(the)28 +b(line)f(n)n(um)n(b)r(er)h(of)f(the)h(source)e(\034le)i(at)g(whic)n(h)f +(the)h(macro)e(is)i(set.)0 3961 y Fe(1.2.1)94 b(Macros)32 +b(de\034ned)f(in)g(debug)h(and)g(release)f(mo)s(des)0 +4171 y(INF)m(OS_COMPILA)-8 b(TION)84 b Fh(The)28 b(C++)g(macro)g +Fc(INFOS_COMPILATI)o(ON)22 b Fh(writes)29 b(on)f(the)h(trace)f +(bu\033er)h(p)r(o)r(ol)g(infor-)0 4285 y(mations)e(ab)r(out)h(the)f +(compiling)h(pro)r(cess:)125 4525 y Fb(\017)41 b Fh(the)28 +b(name)f(of)g(the)h(compiler)f(:)37 b Fc(g++,)42 b(KCC,)g(CC,)g(pgCC)p +Fh(;)125 4705 y Fb(\017)f Fh(the)28 b(date)f(and)g(the)h(time)g(of)g +(the)g(compiling)f(pro)r(cessing)f(pro)r(cess.)0 4944 +y(This)35 b(macro)f Fc(INFOS_COMPILATIO)o(N)29 b Fh(do)r(es)35 +b(not)g(ha)n(v)n(e)f(an)n(y)g(argumen)n(t.)58 b(Moreo)n(v)n(er,)35 +b(it)g(is)g(de\034ned)h(in)f(b)r(oth)h(compiling)0 5058 +y(mo)r(de)28 b(:)37 b Fc(_DEBUG_)24 b Fh(and)k Fc(_RELEASE_)p +Fh(.)0 5214 y(Example)g(:)p eop %%Page: 3 3 3 2 bop 0 -167 3900 5 v 0 -200 a Fe(1.)73 b(T)-8 b(race)34 -b(and)e(debug)f(Utilities)2644 b Fh(3)87 162 y Fc(...)0 -275 y(})0 548 y Fe(INF)m(OS\(str\))83 b Fh(In)39 b(b)r(oth)f(compiling) -g(mo)r(de)g Fc(_DEBUG_)d Fh(and)j Fc(_RELEASE_)p Fh(,)f(The)h(C++)g -(macro)e Fc(INFOS)g Fh(writes)i(on)g(the)0 661 y(standard)27 -b(output)h(the)g(string)e(whic)n(h)i(has)f(b)r(een)h(passed)f(in)g -(argumen)n(t)g(b)n(y)g(the)h(user.)0 818 y(Example)g(:)0 -1057 y Fc(#include)40 b("utilities.h")0 1171 y(int)i(main\(int)e(argc)i -(,)i(char)d(**argv\))0 1285 y({)87 1398 y(...)87 1512 -y(INFOS\("NORMAL)d(END)43 b(OF)f(THE)h(PROCESS"\);)87 -1625 y(return)e(0;)0 1739 y(})0 1978 y Fh(displa)n(ys)26 -b(:)0 2218 y Fc(main.cxx)40 b([5])i(:)i(NORMAL)d(END)h(OF)h(THE)f -(PROCESS)0 2490 y Fe(1.2.2)94 b(Macros)32 b(de\034ned)f(only)g(in)h -(debug)f(mo)s(de)0 2701 y(MESSA)m(GE\(str\))83 b Fh(In)19 -b Fc(_DEBUG_)d Fh(compiling)j(mo)r(de)g(only)-7 b(,)20 -b(the)f(C++)g(macro)e Fc(MESSAGE)f Fh(writes)j(on)f(the)i(standard)e -(output)0 2814 y(the)34 b(string)g(whic)n(h)g(has)f(b)r(een)i(passed)e -(in)i(argumen)n(t)e(b)n(y)g(the)i(user.)56 b(In)34 b -Fc(_RELEASE_)c Fh(compiling)k(mo)r(de,)i(this)e(macro)f(is)0 -2928 y(blank.)0 3084 y(Example)28 b(:)0 3324 y Fc(#include)40 -b("utilities.h")0 3437 y(#include)g()0 3551 y(using)h -(namespace)f(std;)0 3664 y(int)i(main\(int)e(argc)i(,)i(char)d -(**argv\))0 3778 y({)87 3892 y(...)87 4005 y(const)h(char)f(*str)h(=)i -("Salome";)87 4119 y(MESSAGE\(str\);)87 4232 y(...)e(const)g(string)f -(st;)87 4346 y(st)i(=)g("Aster";)87 4459 y(MESSAGE\(c_str\(st)o(+")37 -b(and)42 b(CASTEM"\)\);)87 4573 y(return)f(0;)0 4687 -y(})0 4926 y Fh(displa)n(ys)26 b(:)0 5166 y Fc(-)43 b(Trace)f(main.cxx) -e([8])i(:)h(Salome)0 5279 y(-)g(Trace)f(main.cxx)e([12])i(:)h(Aster)e -(and)i(CASTEM)p eop +b(and)e(debug)f(Utilities)2644 b Fh(3)0 162 y Fc(#include)40 +b("utilities.h")0 275 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0 +389 y({)87 502 y(INFOS_COMPILATIO)o(N;)87 616 y(...)0 +730 y(})0 1002 y Fe(INF)m(OS\(str\))83 b Fh(In)23 b(b)r(oth)g +(compiling)f(mo)r(de)h Fc(_DEBUG_)d Fh(and)i Fc(_RELEASE_)p +Fh(,)e(The)j(C++)f(macro)f Fc(INFOS)f Fh(writes)j(on)f(the)h(trace)0 +1116 y(bu\033er)28 b(p)r(o)r(ol)f(the)h(string)f(whic)n(h)g(has)g(b)r +(een)h(passed)f(in)h(argumen)n(t)e(b)n(y)i(the)g(user.)0 +1272 y(Example)g(:)0 1512 y Fc(#include)40 b("utilities.h")0 +1625 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0 +1739 y({)87 1852 y(...)87 1966 y(INFOS\("NORMAL)d(END)43 +b(OF)f(THE)h(PROCESS"\);)87 2080 y(return)e(0;)0 2193 +y(})0 2433 y Fh(displa)n(ys)26 b(:)0 2672 y Fc(main.cxx)40 +b([5])i(:)i(NORMAL)d(END)h(OF)h(THE)f(PROCESS)0 3058 +y Fe(INTERR)m(UPTION\(str\))84 b Fh(In)72 b(b)r(oth)h(compiling)e(mo)r +(de)i Fc(_DEBUG_)c Fh(and)j Fc(_RELEASE_)p Fh(,)80 b(The)72 +b(C++)f(macro)0 3172 y Fc(INTERRUPTION)34 b Fh(writes)k(on)g(the)h +(trace)f(bu\033er)g(p)r(o)r(ol)h(the)g(string,)h(with)g(a)e(sp)r(ecial) +g Fc(ABORT)e Fh(t)n(yp)r(e.)71 b(When)39 b(the)g(thread)0 +3285 y(in)28 b(c)n(harge)e(of)h(collecting)g(messages)f(\034nds)i(this) +f(message,)g(it)h(terminates)f(the)h(application,)f(after)g(message)f +(treatmen)n(t.)0 3558 y Fe(IMMEDIA)-8 b(TE_ABOR)g(T\(str\))83 +b Fh(In)48 b(b)r(oth)f(compiling)g(mo)r(de)h Fc(_DEBUG_)c +Fh(and)j Fc(_RELEASE_)p Fh(,)i(The)e(C++)f(macro)0 3672 +y Fc(IMMEDIATE_ABORT)29 b Fh(writes)35 b(the)g(message)f(immediately)h +(on)g(standard)f(error)f(and)i(exits)g(the)h(application.)59 +b(Remain-)0 3785 y(ing)27 b(messages)f(not)i(treated)f(b)n(y)g(the)h +(message)e(collector)g(thread)h(are)g(lost.)0 4058 y +Fe(1.2.2)94 b(Macros)32 b(de\034ned)f(only)g(in)h(debug)f(mo)s(de)0 +4268 y(MESSA)m(GE\(str\))83 b Fh(In)32 b Fc(_DEBUG_)e +Fh(compiling)i(mo)r(de)g(only)-7 b(,)33 b(the)g(C++)f(macro)f +Fc(MESSAGE)e Fh(writes)j(on)g(the)g(trace)g(bu\033er)0 +4381 y(p)r(o)r(ol)d(the)g(string)f(whic)n(h)h(has)f(b)r(een)i(passed)e +(in)h(argumen)n(t)e(b)n(y)i(the)g(user.)40 b(In)29 b +Fc(_RELEASE_)d Fh(compiling)i(mo)r(de,)h(this)g(macro)0 +4495 y(is)e(blank.)0 4652 y(Example)h(:)0 4891 y Fc(#include)40 +b("utilities.h")0 5005 y(#include)g()0 5118 y(using)h +(namespace)f(std;)0 5232 y(int)i(main\(int)e(argc)i(,)i(char)d +(**argv\))0 5345 y({)p eop %%Page: 4 4 4 3 bop 0 -167 3900 5 v 0 -200 a Fe(1.)73 b(T)-8 b(race)34 -b(and)e(debug)f(Utilities)2644 b Fh(4)0 162 y Fe(BEGIN_OF\(func_name\)) -82 b Fh(In)28 b Fc(_DEBUG_)c Fh(compiling)i(mo)r(de,)i(The)f(C++)f -(macro)g Fc(BEGIN_OF)d Fh(app)r(ends)k(the)h(string)0 -275 y Fc("Begin)41 b(of)i(")27 b Fh(to)g(the)h(one)e(passed)h(in)g -(argumen)n(t)g(b)n(y)g(the)g(user)g(and)g(displa)n(ys)f(the)i(result)f -(on)g(the)g(standard)g(output.)37 b(In)0 389 y Fc(_RELEASE_)24 -b Fh(compiling)j(mo)r(de,)h(this)g(macro)e(is)h(blank.)0 -545 y(Example)h(:)0 751 y Fc(#include)40 b("utilities.h")0 -865 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0 -978 y({)87 1092 y(BEGIN_OF\(argv[0])o(\);)87 1205 y(return)g(0;)0 -1319 y(})0 1524 y Fh(displa)n(ys)26 b(:)0 1730 y Fc(-)43 -b(Trace)f(main.cxx)e([3])i(:)h(Begin)f(of)g(a.out)0 1997 -y Fe(END_OF\(func_name\))82 b Fh(In)47 b Fc(_DEBUG_)c +b(and)e(debug)f(Utilities)2644 b Fh(4)87 162 y Fc(...)87 +275 y(const)42 b(char)f(*str)h(=)i("Salome";)87 389 y(MESSAGE\(str\);) +87 502 y(...)e(const)g(string)f(st;)87 616 y(st)i(=)g("Aster";)87 +730 y(MESSAGE\(c_str\(st)o(+")37 b(and)42 b(CASTEM"\)\);)87 +843 y(return)f(0;)0 957 y(})0 1192 y Fh(displa)n(ys)26 +b(:)0 1428 y Fc(-)43 b(Trace)f(main.cxx)e([8])i(:)h(Salome)0 +1541 y(-)g(Trace)f(main.cxx)e([12])i(:)h(Aster)e(and)i(CASTEM)0 +1813 y Fe(BEGIN_OF\(func_name\))82 b Fh(In)28 b Fc(_DEBUG_)c +Fh(compiling)i(mo)r(de,)i(The)f(C++)f(macro)g Fc(BEGIN_OF)d +Fh(app)r(ends)k(the)h(string)0 1927 y Fc("Begin)41 b(of)i(")26 +b Fh(to)h(the)g(one)f(passed)g(in)h(argumen)n(t)e(b)n(y)i(the)g(user)f +(and)g(displa)n(ys)g(the)h(result)f(on)h(the)g(trace)f(bu\033er)g(p)r +(o)r(ol.)37 b(In)0 2040 y Fc(_RELEASE_)24 b Fh(compiling)j(mo)r(de,)h +(this)g(macro)e(is)h(blank.)0 2197 y(Example)h(:)0 2432 +y Fc(#include)40 b("utilities.h")0 2546 y(int)i(main\(int)e(argc)i(,)i +(char)d(**argv\))0 2659 y({)87 2773 y(BEGIN_OF\(argv[0])o(\);)87 +2886 y(return)g(0;)0 3000 y(})0 3235 y Fh(displa)n(ys)26 +b(:)0 3471 y Fc(-)43 b(Trace)f(main.cxx)e([3])i(:)h(Begin)f(of)g(a.out) +0 3743 y Fe(END_OF\(func_name\))82 b Fh(In)47 b Fc(_DEBUG_)c Fh(compiling)i(mo)r(de,)51 b(The)46 b(C++)f(macro)f Fc(END_OF)g -Fh(app)r(ends)i(the)g(string)0 2110 y Fc("Normal)41 b(end)h(of)h(")38 -b Fh(to)h(the)h(one)f(passed)f(in)h(argumen)n(t)g(b)n(y)f(the)i(user)e -(and)h(displa)n(ys)f(the)i(result)f(on)g(the)g(standard)0 -2224 y(output.)e(In)28 b Fc(_RELEASE_)c Fh(compiling)j(mo)r(de,)h(this) -g(macro)e(is)h(blank.)0 2380 y(Example)h(:)0 2586 y Fc(#include)40 -b("utilities.h")0 2700 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0 -2813 y({)87 2927 y(END_OF\(argv[0]\);)87 3040 y(return)g(0;)0 -3154 y(})0 3360 y Fh(displa)n(ys)26 b(:)0 3565 y Fc(-)43 -b(Trace)f(main.cxx)e([4])i(:)h(Normal)e(end)i(of)f(a.out)0 -3832 y Fe(SCR)m(UTE\(v)-5 b(ar\))84 b Fh(In)30 b Fc(_DEBUG_)c -Fh(compiling)j(mo)r(de,)h(The)f(C++)f(macro)g Fc(SCRUTE)f -Fh(displa)n(ys)h(its)h(argumen)n(t)f(whic)n(h)h(is)g(an)0 -3946 y(application)21 b(v)-5 b(ariable)22 b(follo)n(w)n(ed)f(b)n(y)h -(the)g(v)-5 b(alue)22 b(of)g(the)h(v)-5 b(ariable.)34 -b(In)22 b Fc(_RELEASE_)d Fh(compiling)j(mo)r(de,)h(this)f(macro)f(is)h -(blank.)0 4102 y(Example)28 b(:)0 4308 y Fc(#include)40 -b("utilities.h")0 4421 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0 -4535 y({)87 4648 y(const)h(int)g(i=999;)87 4762 y(if\()g(i)i(>)f(0)g -(\))g(SCRUTE\(i\))d(;)j(i=i+1;)87 4875 y(return)e(0;)0 -4989 y(})0 5195 y Fh(displa)n(ys)26 b(:)0 5400 y Fc(-)43 -b(Trace)f(main.cxx)e([5])i(:)h(i=999)p eop +Fh(app)r(ends)i(the)g(string)0 3856 y Fc("Normal)41 b(end)h(of)h(")32 +b Fh(to)g(the)i(one)e(passed)g(in)h(argumen)n(t)e(b)n(y)h(the)h(user)f +(and)h(displa)n(ys)e(the)i(result)g(on)f(the)h(trace)f(bu\033er)0 +3970 y(p)r(o)r(ol.)37 b(In)27 b Fc(_RELEASE_)d Fh(compiling)j(mo)r(de,) +h(this)g(macro)e(is)i(blank.)0 4126 y(Example)g(:)0 4362 +y Fc(#include)40 b("utilities.h")0 4475 y(int)i(main\(int)e(argc)i(,)i +(char)d(**argv\))0 4589 y({)87 4702 y(END_OF\(argv[0]\);)87 +4816 y(return)g(0;)0 4929 y(})0 5165 y Fh(displa)n(ys)26 +b(:)0 5400 y Fc(-)43 b(Trace)f(main.cxx)e([4])i(:)h(Normal)e(end)i(of)f +(a.out)p eop %%Page: 5 5 5 4 bop 0 -167 3900 5 v 0 -200 a Fe(2.)73 b(Exceptions)3255 -b Fh(5)0 162 y Fe(ASSER)-8 b(T\(condition\))82 b Fh(In)33 -b Fc(_DEBUG_)c Fh(compiling)i(mo)r(de)i(only)-7 b(,)33 -b(The)f(C++)f(macro)g Fc(ASSERT)e Fh(c)n(hec)n(ks)i(the)i(expression)0 -275 y(passed)23 b(in)h(argumen)n(t)f(to)g(b)r(e)i(not)e(NULL.)i(If)f -(it)g(is)g(NULL)g(the)g(pro)r(cess)f(is)g(stopp)r(ed)h(and)g(the)g -(condition)g(is)f(written)h(on)g(the)0 389 y(standard)30 -b(output.)47 b(In)31 b Fc(_RELEASE_)c Fh(compiling)j(mo)r(de,)i(this)f -(macro)e(is)i(blank.)46 b(N.B.)31 b(:)43 b(if)32 b Fc(ASSERT)c -Fh(is)i(already)g(de\034ned,)0 502 y(this)e(macro)e(is)i(ignored.)0 -659 y(Example)g(:)0 898 y Fc(#include)40 b("utilities.h")0 -1012 y(...)0 1126 y(const)h(char)h(*ptrS)g(=)h(fonc\(\);)0 -1239 y(ASSERT\(ptrS!=NUL)o(L\))o(;)0 1353 y(cout)f(<<)h -(strlen\(ptrS\);)0 1466 y(float)e(table[10];)0 1580 y(int)h(k;)0 -1693 y(...)0 1807 y(ASSERT\(k<10\);)0 1921 y(cout)g(<<)h(table[k];)0 -2259 y Ff(2)131 b(Exceptions)0 2516 y Fd(2.1)112 b(C++)38 -b(exceptions:)49 b(class)38 b(SALOME_Exception)0 2727 -y Fe(2.1.1)94 b(de\034nition)0 2937 y Fh(The)30 b(class)f -Fc(SALOME_Exceptio)o(n)24 b Fh(pro)n(vides)k(a)h(generic)g(metho)r(d)h -(to)g(send)f(a)h(message,)f(with)h(optional)f(source)f(\034le)i(name)0 -3050 y(and)g(line)g(n)n(um)n(b)r(er.)43 b(This)30 b(class)f(is)h(in)n -(tended)g(to)g(serv)n(e)e(as)h(a)h(base)f(class)g(for)g(all)h(kinds)g -(of)g(exceptions)f(SALOME)h(co)r(de.)0 3164 y(All)25 -b(the)g(exceptions)e(deriv)n(ed)h(from)g Fc(SALOME_Exception)18 -b Fh(could)24 b(b)r(e)h(handled)f(in)h(a)f(single)f(catc)n(h,)i(in)g -(whic)n(h)f(the)h(message)0 3277 y(asso)r(ciated)h(to)i(the)g -(exception)f(is)g(displa)n(y)n(ed,)g(or)f(sen)n(t)i(to)f(a)g(log)g -(\034le.)0 3434 y(The)h(class)e Fc(SALOME_Exception)21 -b Fh(inherits)28 b(its)f(b)r(eha)n(vior)f(from)i(the)g(STL)f(class)g -(exception.)0 3706 y Fe(2.1.2)94 b(usage)0 3916 y Fh(The)26 -b(header)g Fc(SALOME/src/util)o(s/)o(uti)o(ls)o(_S)o(ALO)o(ME)o(_E)o -(xce)o(pt)o(io)o(n.h)o(xx)20 b Fh(m)n(ust)26 b(b)r(e)h(included)f(in)h -(the)f(C++)g(source,)f(when)0 4030 y(raised)h(or)h(trapp)r(ed:)0 -4187 y Fc(#include)40 b("utils_SALOME_Ex)o(cep)o(ti)o(on)o(.hx)o(x")0 -4343 y Fh(The)28 b Fc(SALOME_Exceptio)o(n)21 b Fh(constructor)26 -b(is:)0 4582 y Fc(SALOME_Exception)o(\()37 b(const)42 -b(char)g(*text,)784 4696 y(const)g(char)g(*fileName=0,)784 -4810 y(const)g(unsigned)e(int)i(lineNumber=0)d(\);)0 -5049 y Fh(The)28 b(exception)f(is)g(raised)g(lik)n(e)g(this:)0 -5289 y Fc(throw)41 b(SALOME_Exception\()o("m)o(y)d(pertinent)h -(message"\);)p eop +b Fh(5)0 162 y Fe(SCR)m(UTE\(v)-5 b(ar\))84 b Fh(In)30 +b Fc(_DEBUG_)c Fh(compiling)j(mo)r(de,)h(The)f(C++)f(macro)g +Fc(SCRUTE)f Fh(displa)n(ys)h(its)h(argumen)n(t)f(whic)n(h)h(is)g(an)0 +275 y(application)21 b(v)-5 b(ariable)22 b(follo)n(w)n(ed)f(b)n(y)h +(the)g(v)-5 b(alue)22 b(of)g(the)h(v)-5 b(ariable.)34 +b(In)22 b Fc(_RELEASE_)d Fh(compiling)j(mo)r(de,)h(this)f(macro)f(is)h +(blank.)0 432 y(Example)28 b(:)0 671 y Fc(#include)40 +b("utilities.h")0 785 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0 +898 y({)87 1012 y(const)h(int)g(i=999;)87 1126 y(if\()g(i)i(>)f(0)g(\)) +g(SCRUTE\(i\))d(;)j(i=i+1;)87 1239 y(return)e(0;)0 1353 +y(})0 1592 y Fh(displa)n(ys)26 b(:)0 1832 y Fc(-)43 b(Trace)f(main.cxx) +e([5])i(:)h(i=999)0 2104 y Fe(ASSER)-8 b(T\(condition\))82 +b Fh(In)33 b Fc(_DEBUG_)c Fh(compiling)i(mo)r(de)i(only)-7 +b(,)33 b(The)f(C++)f(macro)g Fc(ASSERT)e Fh(c)n(hec)n(ks)i(the)i +(expression)0 2218 y(passed)c(in)h(argumen)n(t)e(to)h(b)r(e)h(not)g +(NULL.)g(If)g(it)g(is)f(NULL)h(the)g(condition)g(is)f(written)h(with)g +(the)g(macro)e Fc(INTERRUPTION)0 2331 y Fh(\(see)f(ab)r(o)n(v)n(e\).)36 +b(The)27 b(pro)r(cess)f(exits)h(after)f(trace)h(of)g(this)g(last)g +(message.)35 b(In)28 b Fc(_RELEASE_)23 b Fh(compiling)k(mo)r(de,)g +(this)g(macro)f(is)0 2445 y(blank.)37 b(N.B.)27 b(:)37 +b(if)28 b Fc(ASSERT)e Fh(is)h(already)f(de\034ned,)i(this)g(macro)e(is) +i(ignored.)0 2601 y(Example)g(:)0 2841 y Fc(#include)40 +b("utilities.h")0 2955 y(...)0 3068 y(const)h(char)h(*ptrS)g(=)h +(fonc\(\);)0 3182 y(ASSERT\(ptrS!=NUL)o(L\))o(;)0 3295 +y(cout)f(<<)h(strlen\(ptrS\);)0 3409 y(float)e(table[10];)0 +3522 y(int)h(k;)0 3636 y(...)0 3750 y(ASSERT\(k<10\);)0 +3863 y(cout)g(<<)h(table[k];)0 4201 y Ff(2)131 b(Exceptions)0 +4459 y Fd(2.1)112 b(C++)38 b(exceptions:)49 b(class)38 +b(SALOME_Exception)0 4669 y Fe(2.1.1)94 b(de\034nition)0 +4879 y Fh(The)30 b(class)f Fc(SALOME_Exceptio)o(n)24 +b Fh(pro)n(vides)k(a)h(generic)g(metho)r(d)h(to)g(send)f(a)h(message,)f +(with)h(optional)f(source)f(\034le)i(name)0 4993 y(and)g(line)g(n)n(um) +n(b)r(er.)43 b(This)30 b(class)f(is)h(in)n(tended)g(to)g(serv)n(e)e(as) +h(a)h(base)f(class)g(for)g(all)h(kinds)g(of)g(exceptions)f(SALOME)h(co) +r(de.)0 5106 y(All)25 b(the)g(exceptions)e(deriv)n(ed)h(from)g +Fc(SALOME_Exception)18 b Fh(could)24 b(b)r(e)h(handled)f(in)h(a)f +(single)f(catc)n(h,)i(in)g(whic)n(h)f(the)h(message)0 +5220 y(asso)r(ciated)h(to)i(the)g(exception)f(is)g(displa)n(y)n(ed,)g +(or)f(sen)n(t)i(to)f(a)g(log)g(\034le.)0 5376 y(The)h(class)e +Fc(SALOME_Exception)21 b Fh(inherits)28 b(its)f(b)r(eha)n(vior)f(from)i +(the)g(STL)f(class)g(exception.)p eop %%Page: 6 6 6 5 bop 0 -167 3900 5 v 0 -200 a Fe(2.)73 b(Exceptions)3255 -b Fh(6)0 162 y(or)27 b(lik)n(e)g(this:)0 401 y Fc(throw)41 -b(SALOME_Exception\()o(LO)o(CAL)o(IZ)o(ED)o(\("m)o(y)c(pertinent)j -(message"\)\);)0 641 y Fh(where)24 b(LOCALIZED)h(is)f(a)h(macro)e(pro)n -(vided)g(with)j Fc(utils_SALOME_Ex)o(ce)o(pti)o(on)o(.h)o(xx)18 -b Fh(whic)n(h)25 b(giv)n(es)e(\034le)i(name)f(and)h(line)0 -754 y(n)n(um)n(b)r(er.)0 911 y(The)j(exception)f(is)g(handled)h(lik)n -(e)f(this:)0 1150 y Fc(try)87 1264 y({)174 1377 y(...)87 -1491 y(})0 1605 y(catch)41 b(\(const)g(SALOME_Exception)c(&ex\))87 -1718 y({)174 1832 y(cerr)42 b(<<)h(ex.what\(\))d(<::)o(In)o(st)o(anc)o(e\()o(\))c(;)0 952 y(assert\(ptrPoint!)o(=N)o -(ULL)o(\))g(;)0 1191 y Fh(No)27 b(need)g(to)g(delete)g(ptrP)n(oin)n(t.) +b(to)s(ols)2901 b Fh(8)0 162 y Ff(3)131 b(Miscellaneous)45 +b(to)t(ols)0 419 y Fd(3.1)112 b(Singleton)0 629 y Fe(3.1.1)94 +b(De\034nition)0 839 y Fh(A)37 b(singleton)g(is)g(an)g(application)f +(data)h(whic)n(h)g(is)g(created)f(and)h(deleted)h(only)f(once)f(at)h +(the)h(end)f(of)g(the)h(application)0 953 y(pro)r(cess.)63 +b(The)36 b(C++)g(compiler)g(allo)n(ws)f(the)i(user)f(to)h(create)e(a)h +(static)h(singleton)f(data)g(b)r(efore)g(the)h(\034rst)g(executable)0 +1067 y(statemen)n(t.)g(They)27 b(are)g(deleted)h(after)f(the)h(last)f +(statemen)n(t)h(execution.)0 1223 y(The)g Fc(SINGLETON_)23 +b Fh(template)28 b(class)e(deals)h(with)h(dynamic)f(singleton.)36 +b(It)28 b(is)f(useful)h(for)f(functor)g(ob)5 b(jects.)37 +b(F)-7 b(or)27 b(example,)0 1337 y(an)g(ob)5 b(ject)27 +b(that)h(connects)f(the)g(application)g(to)g(a)g(system)g(at)g +(creation)g(and)g(disconnects)f(the)i(application)f(at)g(deletion.)0 +1609 y Fe(3.1.2)94 b(Usage)0 1819 y Fh(T)-7 b(o)27 b(create)g(a)g +(single)g(instance)g(a)g(POINT)h(ob)5 b(ject)28 b(:)0 +2059 y Fc(#)43 b(include)e("Utils_SINGLETO)o(N.h)o(xx)o(")0 +2172 y(...)0 2286 y(POINT)g(*ptrPoint=SINGLET)o(ON)o(_::)o(In)o(st)o(anc)o(e\()o(\))c(;)0 2400 y(assert\(ptrPoint!)o(=N)o +(ULL)o(\))g(;)0 2639 y Fh(No)27 b(need)g(to)g(delete)g(ptrP)n(oin)n(t.) 37 b(Deletion)27 b(is)g(ac)n(hiev)n(ed)f(automatically)g(at)h(exit.)37 b(If)27 b(the)h(user)e(tries)h(to)g(create)f(more)g(than)0 -1305 y(one)e(singleton)g(b)n(y)g(using)f(the)i(class)e(metho)r(d)i +2753 y(one)e(singleton)g(b)n(y)g(using)f(the)i(class)e(metho)r(d)i Fc(SINGLETON_)p Fa(<)p Fc(TYPE)p Fa(>)o Fc(::I)o(ns)o(ta)o(nce)o(\(\))o Fh(,)19 b(the)25 b(p)r(oin)n(ter)f(is)g(returned)g(with)h(the)0 -1419 y(same)i(v)-5 b(alue)27 b(ev)n(en)g(if)i(this)e(is)h(done)f(in)h -(di\033eren)n(t)g(functions)f(\(threads)h(?\).)0 1658 +2866 y(same)i(v)-5 b(alue)27 b(ev)n(en)g(if)i(this)e(is)h(done)f(in)h +(di\033eren)n(t)g(functions)f(\(threads)h(?\).)0 3106 y Fc(POINT)41 b(*p1=SINGLETON_:)o(:I)o(ns)o(tan)o(ce)o -(\(\))c(;)0 1772 y(...)0 1885 y(POINT)k(*p2=SINGLETON_:)o -(:I)o(ns)o(tan)o(ce)o(\(\))c(;)0 1999 y(assert\(p1==p2\))0 -2271 y Fe(3.1.3)94 b(Design)30 b(description)0 2482 y +(\(\))c(;)0 3219 y(...)0 3333 y(POINT)k(*p2=SINGLETON_:)o +(:I)o(ns)o(tan)o(ce)o(\(\))c(;)0 3446 y(assert\(p1==p2\))0 +3719 y Fe(3.1.3)94 b(Design)30 b(description)0 3929 y Fh(Here)d(are)g(the)h(principles)f(features)g(of)g(the)h(singleton)f -(design)g(:)125 2721 y Fb(\017)41 b Fh(the)28 b(user)f(creates)g(an)g +(design)g(:)125 4169 y Fb(\017)41 b Fh(the)28 b(user)f(creates)g(an)g (ob)5 b(ject)28 b(of)g(class)f Fc(TYPE)f Fh(b)n(y)i(using)f(the)i (class)e(metho)r(d)h Fc(SINGLETON_)p Fa(<)p Fc(TYPE)p -Fa(>)o Fc(::)o(In)o(sta)o(nc)o(e\()o(\))208 2835 y Fh(whic)n(h)f +Fa(>)o Fc(::)o(In)o(sta)o(nc)o(e\()o(\))208 4282 y Fh(whic)n(h)f (returns)g(a)g(p)r(oin)n(ter)g(to)h(the)g(single)f(ob)5 -b(ject)27 b(;)125 3015 y Fb(\017)41 b Fh(to)27 b(create)g(an)g(ob)5 +b(ject)27 b(;)125 4462 y Fb(\017)41 b Fh(to)27 b(create)g(an)g(ob)5 b(ject,)27 b Fc(SINGLETON_)p Fa(<)p Fc(TYPE)p Fa(>)o Fc(::I)o(ns)o(tan)o(ce)o(\(\))21 b Fh(uses)27 b(the)h(default)g -(constructor)e(of)i(class)e Fc(TYPE)g Fh(;)125 3195 y +(constructor)e(of)i(class)e Fc(TYPE)g Fh(;)125 4642 y Fb(\017)41 b Fh(at)31 b(the)h(same)g(time,)h(this)f(class)f(metho)r(d)h (creates)f(a)g(destructor)g(ob)5 b(ject)31 b(whic)n(h)h(is)g(added)f -(to)h(the)g(generic)f(list)h(of)208 3308 y(destructor)26 +(to)h(the)g(generic)f(list)h(of)208 4756 y(destructor)26 b(ob)5 b(jects)27 b(to)h(b)r(e)g(executed)f(at)g(the)h(end)g(of)g(the)g -(application)f(\()p Fc(atexit)p Fh(\))e(;)125 3488 y +(application)f(\()p Fc(atexit)p Fh(\))e(;)125 4936 y Fb(\017)41 b Fh(at)30 b(the)h(end)f(of)h(the)f(application)g(pro)r (cess)f(all)h(the)h(deletions)f(are)g(p)r(erformed)f(b)n(y)i(the)f -Fc(Nettoyage\(\))c Fh(C)31 b(function)208 3602 y(whic)n(h)c(executes)g +Fc(Nettoyage\(\))c Fh(C)31 b(function)208 5049 y(whic)n(h)c(executes)g (the)h(destruction)f(ob)5 b(jects)27 b(end)h(then)g(deletes)g(the)g (destructions)f(ob)5 b(jects)27 b(themselv)n(es)g(;)125 -3782 y Fb(\017)41 b Fh(the)23 b Fc(Nettoyage\(\))c Fh(C)k(function)g -(using)g(atexit\(\))g(C)h(function)f(is)g(em)n(b)r(edded)h(in)f(a)g -(static)f(single)h(ob)5 b(ject)23 b Fc(ATEXIT_\(\))p -Fh(.)p eop +5229 y Fb(\017)41 b Fh(the)20 b Fc(Nettoyage\(\))c Fh(C)41 +b(function)21 b(using)f(atexit\(\))h(C)40 b(function)21 +b(is)f(em)n(b)r(edded)h(in)g(a)f(static)g(single)g(ob)5 +b(ject)20 b Fc(ATEXIT_\(\))p Fh(.)p eop %%Trailer end userdict /end-hook known{end-hook}if -- 2.39.2