Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
#include <UsageTable.h>
Public Member Functions | |
void | incrementUsage (const std::vector< smoab::EntityHandle > &entities, const std::vector< int > &usageId) |
smoab::Range | multipleUsage () const |
smoab::Range | singleUsage () const |
Private Attributes | |
std::vector< smoab::EntityHandle > | MultipleUsageIds |
std::set< internal::KeyType > | SingleUsageIds |
Definition at line 68 of file UsageTable.h.
void smoab::detail::UsageTable::incrementUsage | ( | const std::vector< smoab::EntityHandle > & | entities, |
const std::vector< int > & | usageId | ||
) |
Definition at line 82 of file UsageTable.h.
References MultipleUsageIds, SingleUsageIds, and usage.
Referenced by smoab::ExtractShell::findSkins().
{ typedef std::vector< smoab::EntityHandle >::const_iterator iterator; typedef std::vector< int >::const_iterator uiterator; uiterator usage = usageId.begin(); for( iterator i = entities.begin(); i != entities.end(); ++i, ++usage ) { internal::KeyType key( *i, *usage ); if( this->SingleUsageIds.find( key ) != this->SingleUsageIds.end() ) { this->SingleUsageIds.erase( key ); this->MultipleUsageIds.push_back( *i ); } else { this->SingleUsageIds.insert( key ); } } }
Definition at line 105 of file UsageTable.h.
References MultipleUsageIds.
Referenced by smoab::ExtractShell::findSkins().
{ smoab::Range multiples; std::copy( this->MultipleUsageIds.rbegin(), this->MultipleUsageIds.rend(), moab::range_inserter( multiples ) ); return multiples; }
Definition at line 113 of file UsageTable.h.
References SingleUsageIds.
Referenced by smoab::ExtractShell::findSkins().
{ smoab::Range single; std::copy( this->SingleUsageIds.rbegin(), this->SingleUsageIds.rend(), internal::key_inserter( single ) ); return single; }
std::vector< smoab::EntityHandle > smoab::detail::UsageTable::MultipleUsageIds [private] |
Definition at line 77 of file UsageTable.h.
Referenced by incrementUsage(), and multipleUsage().
std::set< internal::KeyType > smoab::detail::UsageTable::SingleUsageIds [private] |
Definition at line 78 of file UsageTable.h.
Referenced by incrementUsage(), and singleUsage().