// 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 _IFSelect_SelectSignature_HeaderFile #define _IFSelect_SelectSignature_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_IFSelect_SelectSignature_HeaderFile #include #endif #ifndef _Handle_IFSelect_Signature_HeaderFile #include #endif #ifndef _Handle_IFSelect_SignCounter_HeaderFile #include #endif #ifndef _TCollection_AsciiString_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _TColStd_SequenceOfAsciiString_HeaderFile #include #endif #ifndef _TColStd_SequenceOfInteger_HeaderFile #include #endif #ifndef _IFSelect_SelectExtract_HeaderFile #include #endif #ifndef _Standard_CString_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Handle_Standard_Transient_HeaderFile #include #endif #ifndef _Handle_Interface_InterfaceModel_HeaderFile #include #endif class IFSelect_Signature; class IFSelect_SignCounter; class TCollection_AsciiString; class Standard_Transient; class Interface_Graph; class Interface_InterfaceModel; //! A SelectSignature sorts the Entities on a Signature Matching.
//! The signature to match is given at creation time. Also, the
//! required match is given at creation time : exact (IsEqual) or
//! contains (the Type's Name must contain the criterium Text)
//!
//! Remark that no more interpretation is done, it is an
//! alpha-numeric signature : for instance, DynamicType is matched
//! as such, super-types are not considered
//!
//! Also, numeric (integer) comparisons are supported : an item
//! can be val or >=val , val being an Integer
//!
//! A SelectSignature may also be created from a SignCounter,
//! which then just gives its LastValue as SignatureValue
class IFSelect_SelectSignature : public IFSelect_SelectExtract { public: //! Creates a SelectSignature with its Signature and its Text to
//! Match.
//! if True requires exact match,
//! if False requires to be contained in the Signature
//! of the entity (default is "exact")
Standard_EXPORT IFSelect_SelectSignature(const Handle(IFSelect_Signature)& matcher,const Standard_CString signtext,const Standard_Boolean exact = Standard_True); //! As above with an AsciiString
Standard_EXPORT IFSelect_SelectSignature(const Handle(IFSelect_Signature)& matcher,const TCollection_AsciiString& signtext,const Standard_Boolean exact = Standard_True); //! Creates a SelectSignature with a Counter, more precisely a
//! SelectSignature. Which is used here to just give a Signature
//! Value (by SignOnly Mode)
//! Matching is the default provided by the class Signature
Standard_EXPORT IFSelect_SelectSignature(const Handle(IFSelect_SignCounter)& matcher,const Standard_CString signtext,const Standard_Boolean exact = Standard_True); //! Returns the used Signature, then it is possible to access it,
//! modify it as required. Can be null, hence see Counter
Standard_EXPORT Handle_IFSelect_Signature Signature() const; //! Returns the used SignCounter. Can be used as alternative for
//! Signature
Standard_EXPORT Handle_IFSelect_SignCounter Counter() const; //! Returns True for an Entity (model->Value(num)) of which the
//! signature matches the text given as creation time
//! May also work with a Counter from the Graph
Standard_EXPORT virtual Standard_Boolean SortInGraph(const Standard_Integer rank,const Handle(Standard_Transient)& ent,const Interface_Graph& G) const; //! Not called, defined only to remove a deferred method here
Standard_EXPORT Standard_Boolean Sort(const Standard_Integer rank,const Handle(Standard_Transient)& ent,const Handle(Interface_InterfaceModel)& model) const; //! Returns Text used to Sort Entity on its Signature or SignCounter
Standard_EXPORT const TCollection_AsciiString& SignatureText() const; //! Returns True if match must be exact
Standard_EXPORT Standard_Boolean IsExact() const; //! Returns a text defining the criterium.
//! (it refers to the text and exact flag to be matched, and is
//! qualified by the Name provided by the Signature)
Standard_EXPORT TCollection_AsciiString ExtractLabel() const; DEFINE_STANDARD_RTTI(IFSelect_SelectSignature) protected: private: Handle_IFSelect_Signature thematcher; Handle_IFSelect_SignCounter thecounter; TCollection_AsciiString thesigntext; Standard_Integer theexact; TColStd_SequenceOfAsciiString thesignlist; TColStd_SequenceOfInteger thesignmode; }; // other Inline functions and methods (like "C++: function call" methods) #endif