// File generated by CPPExt (Transient)
//                     Copyright (C) 1991,1995 by
//  
//                      MATRA DATAVISION, FRANCE
//  
// This software is furnished in accordance with the terms and conditions
// of the contract and with the inclusion of the above copyright notice.
// This software or any other copy thereof may not be provided or otherwise
// be made available to any other person. No title to an ownership of the
// software is hereby transferred.
//  
// At the termination of the contract, the software and all copies of this
// software must be deleted.
//
#include <ISession_Text.jxx>

#ifndef _Standard_TypeMismatch_HeaderFile
#include <Standard_TypeMismatch.hxx>
#endif

ISession_Text::~ISession_Text() {}
 


Standard_EXPORT Handle_Standard_Type& ISession_Text_Type_()
{

    static Handle_Standard_Type aType1 = STANDARD_TYPE(AIS_InteractiveObject);
  if ( aType1.IsNull()) aType1 = STANDARD_TYPE(AIS_InteractiveObject);
  static Handle_Standard_Type aType2 = STANDARD_TYPE(SelectMgr_SelectableObject);
  if ( aType2.IsNull()) aType2 = STANDARD_TYPE(SelectMgr_SelectableObject);
  static Handle_Standard_Type aType3 = STANDARD_TYPE(PrsMgr_PresentableObject);
  if ( aType3.IsNull()) aType3 = STANDARD_TYPE(PrsMgr_PresentableObject);
  static Handle_Standard_Type aType4 = STANDARD_TYPE(MMgt_TShared);
  if ( aType4.IsNull()) aType4 = STANDARD_TYPE(MMgt_TShared);
  static Handle_Standard_Type aType5 = STANDARD_TYPE(Standard_Transient);
  if ( aType5.IsNull()) aType5 = STANDARD_TYPE(Standard_Transient);
 

  static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,aType4,aType5,NULL};
  static Handle_Standard_Type _aType = new Standard_Type("ISession_Text",
			                                 sizeof(ISession_Text),
			                                 1,
			                                 (Standard_Address)_Ancestors,
			                                 (Standard_Address)NULL);

  return _aType;
}


// DownCast method
//   allow safe downcasting
//
const Handle(ISession_Text) Handle(ISession_Text)::DownCast(const Handle(Standard_Transient)& AnObject) 
{
  Handle(ISession_Text) _anOtherObject;

  if (!AnObject.IsNull()) {
     if (AnObject->IsKind(STANDARD_TYPE(ISession_Text))) {
       _anOtherObject = Handle(ISession_Text)((Handle(ISession_Text)&)AnObject);
     }
  }

  return _anOtherObject ;
}
const Handle(Standard_Type)& ISession_Text::DynamicType() const 
{ 
  return STANDARD_TYPE(ISession_Text) ; 
}
Standard_Boolean ISession_Text::IsKind(const Handle(Standard_Type)& AType) const 
{ 
  return (STANDARD_TYPE(ISession_Text) == AType || AIS_InteractiveObject::IsKind(AType)); 
}
Handle_ISession_Text::~Handle_ISession_Text() {}