diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2005-08-09 08:01:00 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2005-08-09 08:01:00 -0700 |
commit | 273ba03041ee4cac93385f180d1397b49f8094ca (patch) | |
tree | 83ac3246c2319278db98b8f321dcc75afd910d6d /src/misc/vec/vecPtr.h | |
parent | bd640142e0fe2260e3d28e187f21a36d3cc8e08f (diff) | |
download | abc-273ba03041ee4cac93385f180d1397b49f8094ca.tar.gz abc-273ba03041ee4cac93385f180d1397b49f8094ca.tar.bz2 abc-273ba03041ee4cac93385f180d1397b49f8094ca.zip |
Version abc50809
Diffstat (limited to 'src/misc/vec/vecPtr.h')
-rw-r--r-- | src/misc/vec/vecPtr.h | 46 |
1 files changed, 45 insertions, 1 deletions
diff --git a/src/misc/vec/vecPtr.h b/src/misc/vec/vecPtr.h index eb551d1c..3914cf99 100644 --- a/src/misc/vec/vecPtr.h +++ b/src/misc/vec/vecPtr.h @@ -51,6 +51,10 @@ struct Vec_Ptr_t_ #define Vec_PtrForEachEntry( vVec, pEntry, i ) \ for ( i = 0; (i < Vec_PtrSize(vVec)) && (((pEntry) = Vec_PtrEntry(vVec, i)), 1); i++ ) +#define Vec_PtrForEachEntryByLevel( vVec, pEntry, i, k ) \ + for ( i = 0; i < Vec_PtrSize(vVec); i++ ) \ + Vec_PtrForEachEntry( ((Vec_Ptr_t *)Vec_PtrEntry(vVec, i)), pEntry, k ) + //////////////////////////////////////////////////////////////////////// /// FUNCTION DEFITIONS /// //////////////////////////////////////////////////////////////////////// @@ -169,7 +173,7 @@ static inline Vec_Ptr_t * Vec_PtrDupArray( Vec_Ptr_t * pVec ) /**Function************************************************************* - Synopsis [] + Synopsis [Frees the vector.] Description [] @@ -463,6 +467,46 @@ static inline void Vec_PtrReorder( Vec_Ptr_t * p, int nItems ) /**Function************************************************************* + Synopsis [Frees the vector of vectors.] + + Description [] + + SideEffects [] + + SeeAlso [] + +***********************************************************************/ +static inline void Vec_PtrFreeFree( Vec_Ptr_t * p ) +{ + Vec_Ptr_t * vVec; + int i; + Vec_PtrForEachEntry( p, vVec, i ) + Vec_PtrFree( vVec ); + Vec_PtrFree( p ); +} + +/**Function************************************************************* + + Synopsis [Frees the vector of vectors.] + + Description [] + + SideEffects [] + + SeeAlso [] + +***********************************************************************/ +static inline int Vec_PtrSizeSize( Vec_Ptr_t * p ) +{ + Vec_Ptr_t * vVec; + int i, Counter = 0; + Vec_PtrForEachEntry( p, vVec, i ) + Counter += vVec->nSize; + return Counter; +} + +/**Function************************************************************* + Synopsis [Sorting the entries by their integer value.] Description [] |