// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _Interface_SignType_HeaderFile
#define _Interface_SignType_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_Interface_SignType.hxx>

#include <MoniTool_SignText.hxx>
#include <Handle_Standard_Transient.hxx>
#include <Standard_CString.hxx>
#include <Handle_Interface_InterfaceModel.hxx>
class TCollection_AsciiString;
class Standard_Transient;
class Interface_InterfaceModel;


//! Provides the basic service to get a type name, according
//! to a norm
//! It can be used for other classes (general signatures ...)
class Interface_SignType : public MoniTool_SignText
{

public:

  
  //! Returns an identification of the Signature (a word), given at
  //! initialization time
  //! Specialised to consider context as an InterfaceModel
  Standard_EXPORT   TCollection_AsciiString Text (const Handle(Standard_Transient)& ent, const Handle(Standard_Transient)& context)  const;
  
  //! Returns the Signature for a Transient object. It is specific
  //! of each sub-class of Signature. For a Null Handle, it should
  //! provide ""
  //! It can work with the model which contains the entity
  Standard_EXPORT virtual   Standard_CString Value (const Handle(Standard_Transient)& ent, const Handle(Interface_InterfaceModel)& model)  const = 0;
  
  //! From a CDL Type Name, returns the Class part (package dropped)
  //! WARNING : buffered, to be immediately copied or printed
  Standard_EXPORT static   Standard_CString ClassName (const Standard_CString typnam) ;




  DEFINE_STANDARD_RTTI(Interface_SignType)

protected:




private: 




};







#endif // _Interface_SignType_HeaderFile
