-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
TVECTOR v2( vec );
vec.swap( v2 );
}
+
/*!
* \brief Auto pointer
*/
private:
Deleter( const Deleter& );
};
+
/*!
* \brief Auto pointer to array
*/
ArrayDeleter( const ArrayDeleter& );
};
+ /*!
+ * \return SMDS_ElemIteratorPtr on an std container of SMDS_MeshElement's
+ */
template < class ELEM_SET >
SMDS_ElemIteratorPtr elemSetIterator( const ELEM_SET& elements )
{
< SMDS_pElement, typename ELEM_SET::const_iterator> TSetIterator;
return boost::make_shared< TSetIterator >( elements.begin(), elements.end() );
}
+
+ /*!
+ * \brief Increment enum value
+ */
+ template < typename ENUM >
+ void Increment( ENUM& v, int delta=1 )
+ {
+ v = ENUM( int(v)+delta );
+ }
+
+ /*!
+ * \brief Return incremented enum value
+ */
+ template < typename ENUM >
+ ENUM Add( ENUM v, int delta )
+ {
+ return ENUM( int(v)+delta );
+ }
}
//=======================================================================
double x, y; // 2d parameter, normalized [0,1]
const SMDS_MeshNode * node;
- uvPtStruct(): node(NULL) {}
+ uvPtStruct(const SMDS_MeshNode* n = 0): node(n) {}
inline gp_XY UV() const { return gp_XY( u, v ); }
inline void SetUV( const gp_XY& uv ) { u = uv.X(); v = uv.Y(); }