Changeset 19858

Show
Ignore:
Timestamp:
03/09/07 10:08:03 (2 years ago)
Author:
patrick
Message:

Clear mDevTable and mProxyTable after the objects contained therein are
deleted.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • juggler/trunk/modules/gadgeteer/gadget/InputManager.cpp

    r19729 r19858  
    8484void InputManager::shutdown() 
    8585{ 
    86    for (tDevTableType::iterator a = mDevTable.begin(); a != mDevTable.end(); ++a)    // Stop all devices 
     86   typedef tDevTableType::iterator dev_iter_t; 
     87 
     88   // Stop and delete all devices. 
     89   for ( dev_iter_t a = mDevTable.begin(); a != mDevTable.end(); ++a ) 
    8790   { 
    8891      if ((*a).second != NULL) 
     
    9396   } 
    9497 
     98   mDevTable.clear(); 
     99 
    95100   // Delete all the proxies 
    96    for ( std::map<std::string, Proxy*>::iterator j = mProxyTable.begin(); 
    97          j != mProxyTable.end(); 
    98          ++j ) 
     101   typedef std::map<std::string, Proxy*>::iterator proxy_iter_t; 
     102   for ( proxy_iter_t j = mProxyTable.begin(); j != mProxyTable.end(); ++j ) 
    99103   { 
    100104      delete (*j).second; 
    101105   } 
     106 
     107   mProxyTable.clear(); 
    102108} 
    103109 
  • juggler/trunk/modules/gadgeteer/gadget/InputManager.h

    r19729 r19858  
    7272   InputManager(); 
    7373 
     74   /** 
     75    * Shuts down this Input Manager instance (if it has not already been 
     76    * shut down). 
     77    * 
     78    * @see shutdown() 
     79    */ 
    7480   virtual ~InputManager(); 
    7581 
     
    127133 
    128134   /** 
    129     * Shutdown all devices and proxies. 
     135    * Shuts down all devices and proxies. 
     136    * 
     137    * @post \c mDevTable is empty. \c mProxyTable is empty. 
    130138    * 
    131139    * @since 1.1.20 
    132140    */ 
    133141   void shutdown(); 
     142 
    134143private: 
    135144   /**