예제 #1
0
void
ConnectionManager::reset()
{
  delete_connections_();
  clear_prototypes_();
  init_();
}
예제 #2
0
ConnectionManager::~ConnectionManager()
{
  delete_connections_();
  clear_prototypes_();

  for ( std::vector< ConnectorModel* >::iterator i = pristine_prototypes_.begin();
        i != pristine_prototypes_.end();
        ++i )
    if ( *i != 0 )
      delete *i;
}
예제 #3
0
void
ModelManager::finalize()
{
  clear_models_();
  clear_prototypes_();
  delete_secondary_events_prototypes();

  // We free all Node memory
  std::vector< std::pair< Model*, bool > >::iterator m;
  for ( m = pristine_models_.begin(); m != pristine_models_.end(); ++m )
  {
    // delete all nodes, because cloning the model may have created instances.
    ( *m ).first->clear();
  }
}
예제 #4
0
ModelManager::~ModelManager()
{
  clear_models_( true );

  clear_prototypes_();

  // Now we can delete the clean model prototypes
  std::vector< ConnectorModel* >::iterator i;
  for ( i = pristine_prototypes_.begin(); i != pristine_prototypes_.end(); ++i )
    if ( *i != 0 )
      delete *i;

  std::vector< std::pair< Model*, bool > >::iterator j;
  for ( j = pristine_models_.begin(); j != pristine_models_.end(); ++j )
    if ( ( *j ).first != 0 )
      delete ( *j ).first;
}