Changeset 553


Ignore:
Timestamp:
08/20/08 19:17:10 (11 years ago)
Author:
Eoin
Message:
 
Location:
trunk/src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/halIni.hpp

    r536 r553  
    77#pragma once 
    88 
    9 #define TXML_ARCHIVE_LOGGING 
     9//#define TXML_ARCHIVE_LOGGING 
    1010#include "global/txml_oarchive.hpp" 
    1111#include "global/txml_iarchive.hpp" 
  • trunk/src/halSession.cpp

    r532 r553  
    480480                                event_logger::info, a.timestamp()))); 
    481481 
     482                HAL_DEV_MSG(L"torrent_paused_alert"); 
    482483                get(a.handle)->signals().torrent_paused(); 
    483484        } 
  • trunk/src/halSession.hpp

    r552 r553  
    621621                signaler<> successful_listen; 
    622622                signaler<> torrent_finished; 
     623 
     624                boost::signal<bool()> torrent_paused; 
    623625        }  
    624626        signals; 
  • trunk/src/halSignaler.hpp

    r404 r553  
    88namespace hal 
    99{ 
     10 
     11struct signaler_wrapper : public boost::signals::trackable 
     12{ 
     13        signaler_wrapper(boost::function<bool ()> f) : 
     14                f_(f) 
     15        { 
     16                HAL_DEV_MSG(L"signaler_wrapper ctor"); 
     17        } 
     18 
     19        void operator()()  
     20        { 
     21                HAL_DEV_MSG(L"signaler_wrapper operator()"); 
     22 
     23                if (f_()) 
     24                { 
     25                        HAL_DEV_MSG(L"Disconnecting"); 
     26                        delete this; 
     27                } 
     28        } 
     29 
     30private: 
     31        boost::function<bool ()> f_; 
     32}; 
    1033 
    1134struct once 
  • trunk/src/halTorrentInternal.hpp

    r549 r553  
    455455{ 
    456456        signaler<> torrent_finished; 
    457         signaler<> torrent_paused; 
     457        boost::signal<void ()> torrent_paused; 
    458458}; 
    459459 
     
    850850 
    851851                        handle_.pause(); 
    852                         signals().torrent_paused.disconnect_all_once(); 
    853                         signals().torrent_paused.connect_once(bind(&torrent_internal::completed_pause, this)); 
     852                        //signals().torrent_paused.disconnect_all_once(); 
     853 
     854                        signaler_wrapper* sig = new signaler_wrapper(bind(&torrent_internal::completed_pause, this)); 
     855                        signals().torrent_paused.connect(bind(&signaler_wrapper::operator(), sig)); 
    854856 
    855857                        state_ = torrent_details::torrent_pausing;       
     
    867869                                assert(in_session()); 
    868870 
    869                                 signals().torrent_paused.disconnect_all_once(); 
    870                                 signals().torrent_paused.connect_once(bind(&torrent_internal::completed_stop, this)); 
     871//                              signals().torrent_paused.disconnect_all_once(); 
     872//                              signals().torrent_paused.connect_once(bind(&torrent_internal::completed_stop, this)); 
    871873                                handle_.pause(); 
    872874 
     
    900902                case torrent_details::torrent_stopping: 
    901903                case torrent_details::torrent_pausing: 
    902                         signals().torrent_paused.disconnect_all_once(); 
     904//                      signals().torrent_paused.disconnect_all_once(); 
    903905 
    904906                case torrent_details::torrent_active: 
    905                         signals().torrent_paused.disconnect_all_once(); 
    906                         signals().torrent_paused.connect_once(bind(&torrent_internal::handle_recheck, this)); 
     907//                      signals().torrent_paused.disconnect_all_once(); 
     908//                      signals().torrent_paused.connect_once(bind(&torrent_internal::handle_recheck, this)); 
    907909                        handle_.pause(); 
    908910                        state_ = torrent_details::torrent_pausing; 
     
    14271429        } 
    14281430         
    1429         void completed_pause() 
     1431        bool completed_pause() 
    14301432        { 
    14311433                mutex_t::scoped_lock l(mutex_); 
     
    14361438 
    14371439                HAL_DEV_MSG(L"completed_pause()"); 
     1440 
     1441                return true; 
    14381442        } 
    14391443 
Note: See TracChangeset for help on using the changeset viewer.