source: sources/src/sc_pat_trace.cc @ 50

Last change on this file since 50 was 27, checked in by buchmann, 16 years ago

SystemCASS now uses autoconf/automake to build the API. Regression tests still
use the old Makefiles.
(thanks to Nicolas Pouillon)

The library directory no longer is "lib-arch-system". The directory now is "lib-linux". Everyone needs to pay attention about SYSTEMCASS environment variable.

Changes:

  • system header includes
  • Add includes to config.h (generated by autoconf/automake)
  • test:
    • linux preprocessor macro instead of _WIN32
    • CONFIG_DEBUG instead of DEBUG

Removes:

  • Makefile
  • guess_endianness.cc
  • guess_os.sh
  • assert.h (we now use standard assert.h)
  • Options.def
File size: 3.1 KB
RevLine 
[1]1/*------------------------------------------------------------\
2|                                                             |
3| Tool    :                  systemcass                       |
4|                                                             |
5| File    :                   sc_pat_trace.cc                 |
6|                                                             |
7| Author  :                 Kingbo Paul-Jerome                |
8|                           Buchmann Richard                  |
9|                                                             |
10| Date    :                   09_07_2004                      |
11|                                                             |
12\------------------------------------------------------------*/
13
14/*
15 * This file is part of the Disydent Project
16 * Copyright (C) Laboratoire LIP6 - Département ASIM
17 * Universite Pierre et Marie Curie
18 *
19 * Home page          : http://www-asim.lip6.fr/disydent
20 * E-mail             : mailto:richard.buchmann@lip6.fr
21 *
22 * This library is free software; you  can redistribute it and/or modify it
23 * under the terms  of the GNU Library General Public  License as published
24 * by the Free Software Foundation; either version 2 of the License, or (at
25 * your option) any later version.
26 *
27 * Disydent is distributed  in the hope  that it  will be
28 * useful, but WITHOUT  ANY WARRANTY; without even the  implied warranty of
29 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
30 * Public License for more details.
31 *
32 * You should have received a copy  of the GNU General Public License along
33 * with the GNU C Library; see the  file COPYING. If not, write to the Free
34 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
35 */
36
37
[27]38#include "sc_trace.h"
39#include "sc_pat_trace.h"
40#include "sc_ver.h"
41#include "internal.h" // notrace
[1]42
[27]43#include <ctime>
44#ifdef HAVE_CONFIG_H
45#include "config.h"
46#endif
[1]47
[27]48#ifdef CONFIG_PAT_TRACE_FORMAT
[1]49
50//-----------------------------------------
51
52extern "C" {
53#include "genpat.h"
54}
55
56//#include "malloc.h" // NO LONGER SUPPORTED
[12]57#include <cstdlib>
58#include <cstdio>
[1]59
60//-----------------------------------------
61
62using namespace std;
63
64namespace sc_core {
65
66//*************************************************************************
67
68sc_trace_file*
69sc_create_pat_trace_file(const char * name)
70{
71  if (notrace)
72    return NULL;
73        //création d'1 instance de la structure Sc_trace_file:
74        sc_trace_file *traceFic=new sc_trace_file();
75        traceFic->flag = PAT_FORMAT;   
76       
77        trace_file_list.push_back(traceFic);
78       
79        DEF_GENPAT((char *)name);
80       
81        return traceFic; 
82        //pointeur sur le sc_trace_file dontl'un des elts pointe sur le fichier.pat crée
83       
84}
85
86//*************************************************************************
87
88void
89sc_close_pat_trace_file( sc_trace_file* traceFic )
90{       
91  if (notrace)
92    return;
93
94  trace  (*traceFic,false);
95
96        SAV_GENPAT ();
97       
98        //libération de l'instance de la structure en mémoire:
99        delete traceFic;
100
101        vector<sc_trace_file*>::iterator i;
102        for (i = trace_file_list.begin (); i != trace_file_list.end(); ++i)
103                if (*i == traceFic) {
104                        trace_file_list.erase(i);
105                        break;
106                }
107}
108
109} // end of sc_core namespace
110
111#endif
Note: See TracBrowser for help on using the repository browser.