// 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 _AIS2D_LocalStatus_HeaderFile
#define _AIS2D_LocalStatus_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineHandle_HeaderFile
#include <Standard_DefineHandle.hxx>
#endif
#ifndef _Handle_AIS2D_LocalStatus_HeaderFile
#include <Handle_AIS2D_LocalStatus.hxx>
#endif

#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _AIS2D_TypeOfDetection_HeaderFile
#include <AIS2D_TypeOfDetection.hxx>
#endif
#ifndef _TColStd_ListOfInteger_HeaderFile
#include <TColStd_ListOfInteger.hxx>
#endif
#ifndef _Quantity_NameOfColor_HeaderFile
#include <Quantity_NameOfColor.hxx>
#endif
#ifndef _Handle_Standard_Transient_HeaderFile
#include <Handle_Standard_Transient.hxx>
#endif
#ifndef _MMgt_TShared_HeaderFile
#include <MMgt_TShared.hxx>
#endif
#ifndef _AIS2D_PToListOfInt_HeaderFile
#include <AIS2D_PToListOfInt.hxx>
#endif
class Standard_Transient;


//! Stored Info about temporary objects. <br>
class AIS2D_LocalStatus : public MMgt_TShared {

public:

  //! Initializes the default Local Status <br>
  Standard_EXPORT   AIS2D_LocalStatus(const Standard_Boolean isTemporary = Standard_True,const Standard_Boolean Decompose = Standard_False,const Standard_Integer DMode = -1,const Standard_Integer SMode = -1,const AIS2D_TypeOfDetection HMode = AIS2D_TOD_PRIMITIVE,const Standard_Boolean SubIntensity = 0,const Quantity_NameOfColor HighlCol = Quantity_NOC_WHITE);
  
        Standard_Boolean Decomposed() const;
  
        Standard_Boolean IsTemporary() const;
  
        Standard_Integer DisplayMode() const;
  
        AIS2D_PToListOfInt SelectionModes() ;
  
  Standard_EXPORT     Standard_Boolean IsActivated(const Standard_Integer aSelMode) const;
  
        AIS2D_TypeOfDetection HighlightMode() const;
  
        Standard_Boolean IsSubIntensityOn() const;
  
        Quantity_NameOfColor HighlightColor() const;
  
        Standard_Boolean IsFirstDisplay() const;
  
        void SetDecomposition(const Standard_Boolean aStatus) ;
  
        void SetTemporary(const Standard_Boolean aStatus) ;
  
        void SetDisplayMode(const Standard_Integer aMode) ;
  
        void SetFirstDisplay(const Standard_Boolean aStatus) ;
  
  Standard_EXPORT     void AddSelectionMode(const Standard_Integer aMode) ;
  
  Standard_EXPORT     void RemoveSelectionMode(const Standard_Integer aMode) ;
  
  Standard_EXPORT     void ClearSelectionModes() ;
  
  Standard_EXPORT     Standard_Boolean IsSelModeIn(const Standard_Integer aMode) const;
  
        void SetHighlightMode(const AIS2D_TypeOfDetection aMode) ;
  
        void SetHighlightColor(const Quantity_NameOfColor aHiCol) ;
  
        void SubIntensityOn() ;
  
  Standard_EXPORT     void SubIntensityOff() ;
  
  Standard_EXPORT     void SetPreviousState(const Handle(Standard_Transient)& aStatus) ;
  
        Handle_Standard_Transient PreviousState() const;




  DEFINE_STANDARD_RTTI(AIS2D_LocalStatus)

protected:




private: 


Standard_Boolean myDecomposition;
Standard_Boolean myIsTemporary;
Standard_Integer myDMode;
Standard_Boolean myFirstDisplay;
AIS2D_TypeOfDetection myHMode;
TColStd_ListOfInteger mySModes;
Standard_Boolean mySubIntensity;
Quantity_NameOfColor myHighlCol;
Handle_Standard_Transient myPrevState;


};


#include <AIS2D_LocalStatus.lxx>



// other Inline functions and methods (like "C++: function call" methods)


#endif
