Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions
MoniTool_CaseData Class Reference

This class is intended to record data attached to a case to be
exploited.
Cases can be :
More...

#include <MoniTool_CaseData.hxx>

Inheritance diagram for MoniTool_CaseData:
Inheritance graph
[legend]

Public Member Functions

 MoniTool_CaseData (const Standard_CString caseid="", const Standard_CString name="")
 Creates a CaseData with a CaseId and a Name
(by default not defined)
More...
 
void SetCaseId (const Standard_CString caseid)
 Sets a CaseId
More...
 
void SetName (const Standard_CString name)
 Sets a Name
More...
 
Standard_CString CaseId () const
 Returns the CaseId
More...
 
Standard_CString Name () const
 Returns the Name
More...
 
Standard_Boolean IsCheck () const
 Tells if <me> is Check (Warning or Fail), else it is Info
More...
 
Standard_Boolean IsWarning () const
 Tells if <me> is Warning
More...
 
Standard_Boolean IsFail () const
 Tells if <me> is Fail
More...
 
void ResetCheck ()
 Resets Check Status, i.e. sets <me> as Info
More...
 
void SetWarning ()
 Sets <me> as Warning
More...
 
void SetFail ()
 Sets <me> as Fail
More...
 
void SetChange ()
 Sets the next Add... not to add but to change the data item
designated by its name.
If next Add... is not called with a name, SetChange is ignored
Reset by next Add... , whatever <num> is correct or not
More...
 
void SetReplace (const Standard_Integer num)
 Sets the next Add... not to add but to replace the data item
<num>, if <num> is between 1 and NbData.
Reset by next Add... , whatever <num> is correct or not
More...
 
void AddData (const Handle< Standard_Transient > &val, const Standard_Integer kind, const Standard_CString name="")
 Unitary adding a data; rather internal
More...
 
void AddRaised (const Standard_CString name="")
 Adds the currently caught exception
More...
 
void AddShape (const TopoDS_Shape &sh, const Standard_CString name="")
 Adds a Shape (recorded as a HShape)
More...
 
void AddXYZ (const gp_XYZ &aXYZ, const Standard_CString name="")
 Adds a XYZ
More...
 
void AddXY (const gp_XY &aXY, const Standard_CString name="")
 Adds a XY
More...
 
void AddReal (const Standard_Real val, const Standard_CString name="")
 Adds a Real
More...
 
void AddReals (const Standard_Real v1, const Standard_Real v2, const Standard_CString name="")
 Adds two reals (for instance, two parameters)
More...
 
void AddCPU (const Standard_Real lastCPU, const Standard_Real curCPU=0, const Standard_CString name="")
 Adds the CPU time between lastCPU and now
if <curCPU> is given, the CPU amount is curCPU-lastCPU
else it is currently measured CPU - lastCPU
lastCPU has been read by call to GetCPU
See GetCPU to get amount, and LargeCPU to test large amount
More...
 
Standard_Real GetCPU () const
 Returns the current amount of CPU
This allows to laterly test and record CPU amount
Its value has to be given to LargeCPU and AddCPU
More...
 
Standard_Boolean LargeCPU (const Standard_Real maxCPU, const Standard_Real lastCPU, const Standard_Real curCPU=0) const
 Tells if a CPU time amount is large
<maxCPU> gives the amount over which an amount is large
<lastCPU> gives the start CPU amount
if <curCPU> is given, the tested CPU amount is curCPU-lastCPU
else it is currently measured CPU - lastCPU
More...
 
void AddGeom (const Handle< Standard_Transient > &geom, const Standard_CString name="")
 Adds a Geometric as a Transient (Curve, Surface ...)
More...
 
void AddEntity (const Handle< Standard_Transient > &ent, const Standard_CString name="")
 Adds a Transient, as an Entity from an InterfaceModel for
instance : it will then be printed with the help of a DBPE
More...
 
void AddText (const Standard_CString text, const Standard_CString name="")
 Adds a Text (as HAsciiString)
More...
 
void AddInteger (const Standard_Integer val, const Standard_CString name="")
 Adds an Integer
More...
 
void AddAny (const Handle< Standard_Transient > &val, const Standard_CString name="")
 Adds a Transient, with no more meaning
More...
 
void RemoveData (const Standard_Integer num)
 Removes a Data from its rank. Does nothing if out of range
More...
 
Standard_Integer NbData () const
 Returns the count of data recorded to a set
More...
 
Handle_Standard_Transient Data (const Standard_Integer nd) const
 Returns a data item (n0 <nd> in the set <num>)
More...
 
Standard_Boolean GetData (const Standard_Integer nd, const Handle< Standard_Type > &type, Handle< Standard_Transient > &val) const
 Returns a data item, under control of a Type
If the data item is kind of this type, it is returned in <val>
and the returned value is True
Else, <val> is unchanged and the returned value is False
More...
 
Standard_Integer Kind (const Standard_Integer nd) const
 
 Returns the kind of a data : <br>
    KIND TYPE      MEANING <br>
      0  ANY       any (not one of the followings) <br>
      1  EX        raised exception <br>
      2  EN        entity <br>
      3  G         geom <br>
      4  SH        shape <br>
      5  XYZ       XYZ <br>
      6  XY or UV  XY <br>
      7  RR        2 reals <br>
      8  R         1 real <br>
      9  CPU       CPU (1 real) <br>
      10 T         text <br>
      11 I         integer <br>


For NameNum, these codes for TYPE must be given exact
i.e. SH for a Shape, not S nor SHAPE nor SOLID etc
More...

 
const TCollection_AsciiStringName (const Standard_Integer nd) const
 Returns the name of a data. If it has no name, the string is
empty (length = 0)
More...
 
Standard_Integer NameNum (const Standard_CString name) const
 Returns the first suitable data rank for a given name
Exact maching (exact case, no completion) is required
Firstly checks the recorded names
If not found, considers the name as follows :
Name = "TYPE" : search for the first item with this TYPE
Name = "TYPE:nn" : search for the nn.th item with this TYPE
See allowed values in method Kind
More...
 
TopoDS_Shape Shape (const Standard_Integer nd) const
 Returns a data as a shape, Null if not a shape
More...
 
Standard_Boolean XYZ (const Standard_Integer nd, gp_XYZ &val) const
 Returns a data as a XYZ (i.e. Geom_CartesianPoint)
Returns False if not the good type
More...
 
Standard_Boolean XY (const Standard_Integer nd, gp_XY &val) const
 Returns a data as a XY (i.e. Geom2d_CartesianPoint)
Returns False if not the good type
More...
 
Standard_Boolean Reals (const Standard_Integer nd, Standard_Real &v1, Standard_Real &v2) const
 Returns a couple of reals (stored in Geom2d_CartesianPoint)
More...
 
Standard_Boolean Real (const Standard_Integer nd, Standard_Real &val) const
 Returns a real or CPU amount (stored in Geom2d_CartesianPoint)
(allows an Integer converted to a Real)
More...
 
Standard_Boolean Text (const Standard_Integer nd, Standard_CString &text) const
 Returns a text (stored in TCollection_HAsciiString)
More...
 
Standard_Boolean Integer (const Standard_Integer nd, Standard_Integer &val) const
 Returns an Integer
More...
 
Message_Msg Msg () const
 
 Returns a Msg from a CaseData : it is build from DefMsg, which <br>
      gives the message code plus the designation of items of the <br>
      CaseData to be added to the Msg <br>
      Empty if no message attached <br>


Remains to be implemented
More...

 
- Public Member Functions inherited from MMgt_TShared
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void ShallowDump (Standard_OStream &) const
 
virtual const
Handle_Standard_Type & 
DynamicType () const
 Returns a type information object about this object. More...
 
Standard_Boolean IsInstance (const Handle_Standard_Type &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const Handle_Standard_Type &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
virtual Handle_Standard_Transient This () const
 Returns a Handle which references this object. Must never be called to objects created in stack. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 

Static Public Member Functions

static void SetDefWarning (const Standard_CString acode)
 Sets a Code to give a Warning
More...
 
static void SetDefFail (const Standard_CString acode)
 Sets a Code to give a Fail
More...
 
static Standard_Integer DefCheck (const Standard_CString acode)
 
 Returns Check Status for a Code : 0 non/info (default), <br>
      1 warning, 2 fail <br>


Remark : DefCheck is used to set the check status of a
CaseData when it is attached to a case code, it can be changed
later (by SetFail, SetWarning, ResetCheck)
More...

 
static void SetDefMsg (const Standard_CString casecode, const Standard_CString mesdef)
 Attaches a message definition to a case code
This definition includes the message code plus designation of
items of the CaseData to be added to the message (this part
not yet implemented)
More...
 
static Standard_CString DefMsg (const Standard_CString casecode)
 Returns the message definition for a case code
Empty if no message attached
More...
 

Detailed Description

This class is intended to record data attached to a case to be
exploited.
Cases can be :

      * internal, i.e. for immediate debug <br>
        for instance, on an abnormal exception, fill a CaseData <br>
        in a DB (see class DB) then look at its content by XSDRAW <br>
      * to record abnormal situation, which cause a warning or fail <br>
        message, for instance during a transfer <br>
        This will allow, firstly to build a more comprehensive <br>
        message (with associated data), secondly to help seeing <br>
        "what happened" <br>
      * to record data in order to fix a problem <br>
        If a CASE is well defined and its fix is well known too, <br>
        recording a CaseData which identifies the CASE will allow <br>
        to furstherly call the appropriate fix routine <br>


A CaseData is defined by

Constructor & Destructor Documentation

MoniTool_CaseData::MoniTool_CaseData ( const Standard_CString  caseid = "",
const Standard_CString  name = "" 
)

Creates a CaseData with a CaseId and a Name
(by default not defined)

Member Function Documentation

void MoniTool_CaseData::AddAny ( const Handle< Standard_Transient > &  val,
const Standard_CString  name = "" 
)

Adds a Transient, with no more meaning

void MoniTool_CaseData::AddCPU ( const Standard_Real  lastCPU,
const Standard_Real  curCPU = 0,
const Standard_CString  name = "" 
)

Adds the CPU time between lastCPU and now
if <curCPU> is given, the CPU amount is curCPU-lastCPU
else it is currently measured CPU - lastCPU
lastCPU has been read by call to GetCPU
See GetCPU to get amount, and LargeCPU to test large amount

void MoniTool_CaseData::AddData ( const Handle< Standard_Transient > &  val,
const Standard_Integer  kind,
const Standard_CString  name = "" 
)

Unitary adding a data; rather internal

void MoniTool_CaseData::AddEntity ( const Handle< Standard_Transient > &  ent,
const Standard_CString  name = "" 
)

Adds a Transient, as an Entity from an InterfaceModel for
instance : it will then be printed with the help of a DBPE

void MoniTool_CaseData::AddGeom ( const Handle< Standard_Transient > &  geom,
const Standard_CString  name = "" 
)

Adds a Geometric as a Transient (Curve, Surface ...)

void MoniTool_CaseData::AddInteger ( const Standard_Integer  val,
const Standard_CString  name = "" 
)

Adds an Integer

void MoniTool_CaseData::AddRaised ( const Standard_CString  name = "")

Adds the currently caught exception

void MoniTool_CaseData::AddReal ( const Standard_Real  val,
const Standard_CString  name = "" 
)

Adds a Real

void MoniTool_CaseData::AddReals ( const Standard_Real  v1,
const Standard_Real  v2,
const Standard_CString  name = "" 
)

Adds two reals (for instance, two parameters)

void MoniTool_CaseData::AddShape ( const TopoDS_Shape sh,
const Standard_CString  name = "" 
)

Adds a Shape (recorded as a HShape)

void MoniTool_CaseData::AddText ( const Standard_CString  text,
const Standard_CString  name = "" 
)

Adds a Text (as HAsciiString)

void MoniTool_CaseData::AddXY ( const gp_XY aXY,
const Standard_CString  name = "" 
)

Adds a XY

void MoniTool_CaseData::AddXYZ ( const gp_XYZ aXYZ,
const Standard_CString  name = "" 
)

Adds a XYZ

Standard_CString MoniTool_CaseData::CaseId ( ) const

Returns the CaseId

Handle_Standard_Transient MoniTool_CaseData::Data ( const Standard_Integer  nd) const

Returns a data item (n0 <nd> in the set <num>)

static Standard_Integer MoniTool_CaseData::DefCheck ( const Standard_CString  acode)
static

 Returns Check Status for a Code : 0 non/info (default), <br>
      1 warning, 2 fail <br>


Remark : DefCheck is used to set the check status of a
CaseData when it is attached to a case code, it can be changed
later (by SetFail, SetWarning, ResetCheck)

static Standard_CString MoniTool_CaseData::DefMsg ( const Standard_CString  casecode)
static

Returns the message definition for a case code
Empty if no message attached

Standard_Real MoniTool_CaseData::GetCPU ( ) const

Returns the current amount of CPU
This allows to laterly test and record CPU amount
Its value has to be given to LargeCPU and AddCPU

Standard_Boolean MoniTool_CaseData::GetData ( const Standard_Integer  nd,
const Handle< Standard_Type > &  type,
Handle< Standard_Transient > &  val 
) const

Returns a data item, under control of a Type
If the data item is kind of this type, it is returned in <val>
and the returned value is True
Else, <val> is unchanged and the returned value is False

Standard_Boolean MoniTool_CaseData::Integer ( const Standard_Integer  nd,
Standard_Integer val 
) const

Returns an Integer

Standard_Boolean MoniTool_CaseData::IsCheck ( ) const

Tells if <me> is Check (Warning or Fail), else it is Info

Standard_Boolean MoniTool_CaseData::IsFail ( ) const

Tells if <me> is Fail

Standard_Boolean MoniTool_CaseData::IsWarning ( ) const

Tells if <me> is Warning

Standard_Integer MoniTool_CaseData::Kind ( const Standard_Integer  nd) const

 Returns the kind of a data : <br>
    KIND TYPE      MEANING <br>
      0  ANY       any (not one of the followings) <br>
      1  EX        raised exception <br>
      2  EN        entity <br>
      3  G         geom <br>
      4  SH        shape <br>
      5  XYZ       XYZ <br>
      6  XY or UV  XY <br>
      7  RR        2 reals <br>
      8  R         1 real <br>
      9  CPU       CPU (1 real) <br>
      10 T         text <br>
      11 I         integer <br>


For NameNum, these codes for TYPE must be given exact
i.e. SH for a Shape, not S nor SHAPE nor SOLID etc

Standard_Boolean MoniTool_CaseData::LargeCPU ( const Standard_Real  maxCPU,
const Standard_Real  lastCPU,
const Standard_Real  curCPU = 0 
) const

Tells if a CPU time amount is large
<maxCPU> gives the amount over which an amount is large
<lastCPU> gives the start CPU amount
if <curCPU> is given, the tested CPU amount is curCPU-lastCPU
else it is currently measured CPU - lastCPU

Message_Msg MoniTool_CaseData::Msg ( ) const

 Returns a Msg from a CaseData : it is build from DefMsg, which <br>
      gives the message code plus the designation of items of the <br>
      CaseData to be added to the Msg <br>
      Empty if no message attached <br>


Remains to be implemented

Standard_CString MoniTool_CaseData::Name ( ) const

Returns the Name

const TCollection_AsciiString& MoniTool_CaseData::Name ( const Standard_Integer  nd) const

Returns the name of a data. If it has no name, the string is
empty (length = 0)

Standard_Integer MoniTool_CaseData::NameNum ( const Standard_CString  name) const

Returns the first suitable data rank for a given name
Exact maching (exact case, no completion) is required
Firstly checks the recorded names
If not found, considers the name as follows :
Name = "TYPE" : search for the first item with this TYPE
Name = "TYPE:nn" : search for the nn.th item with this TYPE
See allowed values in method Kind

Standard_Integer MoniTool_CaseData::NbData ( ) const

Returns the count of data recorded to a set

Standard_Boolean MoniTool_CaseData::Real ( const Standard_Integer  nd,
Standard_Real val 
) const

Returns a real or CPU amount (stored in Geom2d_CartesianPoint)
(allows an Integer converted to a Real)

Standard_Boolean MoniTool_CaseData::Reals ( const Standard_Integer  nd,
Standard_Real v1,
Standard_Real v2 
) const

Returns a couple of reals (stored in Geom2d_CartesianPoint)

void MoniTool_CaseData::RemoveData ( const Standard_Integer  num)

Removes a Data from its rank. Does nothing if out of range

void MoniTool_CaseData::ResetCheck ( )

Resets Check Status, i.e. sets <me> as Info

void MoniTool_CaseData::SetCaseId ( const Standard_CString  caseid)

Sets a CaseId

void MoniTool_CaseData::SetChange ( )

Sets the next Add... not to add but to change the data item
designated by its name.
If next Add... is not called with a name, SetChange is ignored
Reset by next Add... , whatever <num> is correct or not

static void MoniTool_CaseData::SetDefFail ( const Standard_CString  acode)
static

Sets a Code to give a Fail

static void MoniTool_CaseData::SetDefMsg ( const Standard_CString  casecode,
const Standard_CString  mesdef 
)
static

Attaches a message definition to a case code
This definition includes the message code plus designation of
items of the CaseData to be added to the message (this part
not yet implemented)

static void MoniTool_CaseData::SetDefWarning ( const Standard_CString  acode)
static

Sets a Code to give a Warning

void MoniTool_CaseData::SetFail ( )

Sets <me> as Fail

void MoniTool_CaseData::SetName ( const Standard_CString  name)

Sets a Name

void MoniTool_CaseData::SetReplace ( const Standard_Integer  num)

Sets the next Add... not to add but to replace the data item
<num>, if <num> is between 1 and NbData.
Reset by next Add... , whatever <num> is correct or not

void MoniTool_CaseData::SetWarning ( )

Sets <me> as Warning

TopoDS_Shape MoniTool_CaseData::Shape ( const Standard_Integer  nd) const

Returns a data as a shape, Null if not a shape

Standard_Boolean MoniTool_CaseData::Text ( const Standard_Integer  nd,
Standard_CString text 
) const

Returns a text (stored in TCollection_HAsciiString)

Standard_Boolean MoniTool_CaseData::XY ( const Standard_Integer  nd,
gp_XY val 
) const

Returns a data as a XY (i.e. Geom2d_CartesianPoint)
Returns False if not the good type

Standard_Boolean MoniTool_CaseData::XYZ ( const Standard_Integer  nd,
gp_XYZ val 
) const

Returns a data as a XYZ (i.e. Geom_CartesianPoint)
Returns False if not the good type


The documentation for this class was generated from the following file: