This file is indexed.

/usr/include/oce/TestTopOpeTools_Trace.hxx is in liboce-visualization-dev 0.18.2-2build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
// Created on: 1994-08-01
// Created by: Jean Yves LEBEY
// Copyright (c) 1994-1999 Matra Datavision
// Copyright (c) 1999-2014 OPEN CASCADE SAS
//
// This file is part of Open CASCADE Technology software library.
//
// This library is free software; you can redistribute it and/or modify it under
// the terms of the GNU Lesser General Public License version 2.1 as published
// by the Free Software Foundation, with special exception defined in the file
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
// distribution for complete text of the license and disclaimer of any warranty.
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.

#ifndef _TestTopOpeTools_Trace_HeaderFile
#define _TestTopOpeTools_Trace_HeaderFile

#include <NCollection_Vector.hxx>
#include <TCollection_AsciiString.hxx>
#include <TColStd_Array1OfAsciiString.hxx>
#include <TColStd_Array1OfInteger.hxx>
#include <TColStd_Array1OfBoolean.hxx>

typedef Standard_Boolean t_value;
typedef TCollection_AsciiString t_flag;

typedef void (*tf_value)(const t_value);
typedef void (*tf_intarg)(const t_value, Standard_Integer, const char**);
typedef Standard_Integer (*tf_int_intarg)(const t_value, Standard_Integer, const char**);

typedef enum te_ftyp { te_value, te_intarg, te_int_intarg } te_ftyp;

//---------------------------------------------------------------------------
//
// Une fonction de trace FT est une fonction qui value un ensemble
// de variables de controle dont la valeur conditionne l execution 
// d un ensemble d instructions.
//
// La classe TestTopOpeTools_Trace permet de coupler un nom, ou flag,
// a une fonction de trace, et de stocker une ensemble de tels couples.
// Un flag est une chaine de caracteres qui identifie la fonction.
//
// 1/ trace simple 
// Une fonction de trace simple consiste a valuer une valeur booleenne.
// le type t_value est defini comme Standard_Boolean
// le type tf_value decrit une fonction de trace a un argument de type t_value.
//
// Creation de l objet de trace T :
//       TestTopOpeTools_Trace T;
//
// Ajouter une fonction de trace FT1 de nom "toto" a l objet de trace T :
// Ajout de la fonction de trace FT2 de nom "titi" a l objet de trace T :
//
// Standard_IMPORT void FT1(const Standard_Boolean);
// Standard_IMPORT void FT2(const Standard_Boolean);
// T.Add("toto",(tf_value)FT1);
// T.Add("titi",(tf_value)FT2);
//
// Valuation a Standard_True de la variable de controle gouvernee par FT1 :
//       
// T.Set("toto",Standard_True);
//
// 2/ trace generale
// Une fonction de trace generale prend 3 arguments :
//   - Standard_Boolean b
//   - Standard_Integer n
//   - char **a
//
// le type tf_intarg represente une telle fonction de trace
//
// Ajouter une fonction de trace FT3 de nom "aaaaaa" a l objet de trace T :
//
// Standard_IMPORT void FT3(const Standard_Boolean,const Standard_Integer,const char**);
// T.Add((tf_intarg)FT3);
//
// Chargement de la fonction de trace FT3 par b,n,a :
// T.Set("aaaaaa",b,n,a);
//
//
// TestTopOpeTools.hxx definit l objet theTrace (classe TestTopOpeTools_Trace)
//
//----------------------------------------------------------------------------

class TestTopOpeTools_Trace {
  
public:
  
  TestTopOpeTools_Trace(const Standard_Integer nbmaxentry,
			const TCollection_AsciiString& genre);
  TestTopOpeTools_Trace(const Standard_Integer nbmaxentry);

  Standard_Integer Add(const t_flag flag, tf_value func);
  Standard_Integer SetVerbose(const Standard_Boolean b);
  Standard_Integer SetVerbose(const t_flag flag, const Standard_Boolean b);
  Standard_Integer Set(const Standard_Integer mute,
		       const t_flag flag, const t_value value);
  
  Standard_Integer Add(const t_flag flag, tf_intarg func);
  Standard_Integer Add(const t_flag flag, tf_int_intarg func);
  Standard_Integer Set(const Standard_Integer mute,
		       const t_flag flag, const t_value value, 
		       Standard_Integer narg, const char** args);
  
  void Dump();
  void Reset(const t_value);
  Standard_Boolean IsEmpty() { return (mynbentries == 0); }
  const TCollection_AsciiString& Genre() { return mygenre; }
  
  Standard_Boolean Exist(const t_flag flag, Standard_Integer& index);
  Standard_Boolean Exist(const tf_value func, Standard_Integer& index);

private:
  
  // ==== Methods
  
  const t_flag Getflag(const Standard_Integer index);
  const tf_value Getfunc(const Standard_Integer index);
  const te_ftyp Getftyp(const Standard_Integer index);
  Standard_Integer Add(const t_flag flag,const tf_value func,const te_ftyp ftyp);
  
  // ==== Fields
  
  TCollection_AsciiString           mygenre;
  Standard_Integer                  myfirstentry,mynbmaxentry,mynbentries;
  TColStd_Array1OfAsciiString       myflag;
  NCollection_Vector<tf_value>      myfunc;
  TColStd_Array1OfInteger           myftyp;
  Standard_Boolean                  myverbose;
  TColStd_Array1OfBoolean           myfverbose;

};

#endif