// 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_AppliedModifiers_HeaderFile #define _IFSelect_AppliedModifiers_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_IFSelect_AppliedModifiers_HeaderFile #include #endif #ifndef _IFSelect_SequenceOfGeneralModifier_HeaderFile #include #endif #ifndef _Interface_IntList_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _MMgt_TShared_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Handle_IFSelect_GeneralModifier_HeaderFile #include #endif #ifndef _Handle_TColStd_HSequenceOfInteger_HeaderFile #include #endif class IFSelect_GeneralModifier; class TColStd_HSequenceOfInteger; //! This class allows to memorize and access to the modifiers
//! which are to be applied to a file. To each modifier, is bound
//! a list of integers (optionnal) : if this list is absent, the
//! modifier applies to all the file. Else, it applies to the
//! entities designated by these numbers in the produced file.
//!
//! To record a modifier, and a possible list of entity numbers
//! to be applied on :
//! AddModif (amodifier);
//! loop on AddNum (anumber);
//!
//! To query it, Count gives the count of recorded modifiers,
//! then for each one :
//! Item (numodif, amodifier, entcount);
//! IsForAll () -> can be called, if True, applies on the whole file
//!
//! for (i = 1; i <= entcount; i ++)
//! nument = ItemNum (i); -> return an entity number
class IFSelect_AppliedModifiers : public MMgt_TShared { public: //! Creates an AppliedModifiers, ready to record up to
//! modifiers, on a model of entities
Standard_EXPORT IFSelect_AppliedModifiers(const Standard_Integer nbmax,const Standard_Integer nbent); //! Records a modifier. By default, it is to apply on all a
//! produced file. Further calls to AddNum will restrict this.
//! Returns True if done, False if too many modifiers are already
//! recorded
Standard_EXPORT Standard_Boolean AddModif(const Handle(IFSelect_GeneralModifier)& modif) ; //! Adds a number of entity of the output file to be applied on.
//! If a sequence of AddNum is called after AddModif, this
//! Modifier will be applied on the list of designated entities.
//! Else, it will be applied on all the file
//! Returns True if done, False if no modifier has yet been added
Standard_EXPORT Standard_Boolean AddNum(const Standard_Integer nument) ; //! Returns the count of recorded modifiers
Standard_EXPORT Standard_Integer Count() const; //! Returns the description for applied modifier n0 :
//! the modifier itself, and the count of entities to be applied
//! on. If no specific list of number has been defined, returns
//! the total count of entities of the file
//! If this count is zero, then the modifier applies to all
//! the file (see below). Else, the numbers are then queried by
//! calls to ItemNum between 1 and
//! Returns True if OK, False if is out of range
Standard_EXPORT Standard_Boolean Item(const Standard_Integer num,Handle(IFSelect_GeneralModifier)& modif,Standard_Integer& entcount) ; //! Returns a numero of entity to be applied on, given its rank
//! in the list. If no list is defined (i.e. for all the file),
//! returns itself, to give all the entities of the file
//! Returns 0 if out of range
Standard_EXPORT Standard_Integer ItemNum(const Standard_Integer nument) const; //! Returns the list of entities to be applied on (see Item)
//! as a HSequence (IsForAll produces the complete list of all
//! the entity numbers of the file
Standard_EXPORT Handle_TColStd_HSequenceOfInteger ItemList() const; //! Returns True if the applied modifier queried by last call to
//! Item is to be applied to all the produced file.
//! Else, returned by Item gives the count of entity
//! numbers, each one is queried by ItemNum
Standard_EXPORT Standard_Boolean IsForAll() const; DEFINE_STANDARD_RTTI(IFSelect_AppliedModifiers) protected: private: IFSelect_SequenceOfGeneralModifier themodifs; Interface_IntList thelists; Standard_Integer thenbent; Standard_Integer theentcnt; }; // other Inline functions and methods (like "C++: function call" methods) #endif