Call the method on each extant SipDialog. The method must be defined in class SipDialog as: void method(SipDialog *);
| 176 | // Call the method on each extant SipDialog. |
| 177 | // The method must be defined in class SipDialog as: void method(SipDialog *); |
| 178 | void SipInterface::iterateDialogs(SipDialogMethodPointer method) |
| 179 | { |
| 180 | ScopedLock lock(mDialogMapLock); |
| 181 | for (SipDialogMap::iterator it1 = mDialogMap.begin(); it1 != mDialogMap.end(); it1++) { |
| 182 | SipDialogList_t &dialogs = it1->second; |
| 183 | for (SipDialogList_t::iterator it2 = dialogs.begin(); it2 != dialogs.end(); it2++) { |
| 184 | SipDialog *dialog = *it2; |
| 185 | (dialog->*method)(); |
| 186 | } |
| 187 | } |
| 188 | } |
| 189 | #endif |
| 190 | |
| 191 | void SipDialogMap::dmPeriodicService() |