qtms/src/qtmsringtoneimpl.cpp
changeset 50 762d760dcfdf
parent 27 cbb1bfb7ebfb
equal deleted inserted replaced
48:b7b49303d0c0 50:762d760dcfdf
    22 
    22 
    23 using namespace QTMS;
    23 using namespace QTMS;
    24 using namespace TMS;
    24 using namespace TMS;
    25 
    25 
    26 QTMSRingToneImpl::QTMSRingToneImpl()
    26 QTMSRingToneImpl::QTMSRingToneImpl()
    27     {
    27 {
    28     }
    28 }
    29 
    29 
    30 QTMSRingToneImpl::~QTMSRingToneImpl()
    30 QTMSRingToneImpl::~QTMSRingToneImpl()
    31     {
    31 {
    32     RemoveObserver(*this);
    32     RemoveObserver(*this);
    33     }
    33 }
    34 
    34 
    35 gint QTMSRingToneImpl::Create(QTMSRingTone*& qrt, TMS::TMSRingTone*& tmsrt)
    35 gint QTMSRingToneImpl::Create(QTMSRingTone*& qrt, TMS::TMSRingTone*& tmsrt)
    36     {
    36 {
    37     gint ret(QTMS_RESULT_INSUFFICIENT_MEMORY);
    37     gint ret(QTMS_RESULT_INSUFFICIENT_MEMORY);
    38     QTMSRingToneImpl* self = new QTMSRingToneImpl();
    38     QTMSRingToneImpl* self = new QTMSRingToneImpl();
    39     if (self)
    39     if (self) {
    40         {
       
    41         ret = self->PostConstruct();
    40         ret = self->PostConstruct();
    42         if (ret != QTMS_RESULT_SUCCESS)
    41         if (ret != QTMS_RESULT_SUCCESS) {
    43             {
       
    44             delete self;
    42             delete self;
    45             self = NULL;
    43             self = NULL;
    46             }
    44         }
    47         self->iRingTone = tmsrt;
    45         self->iRingTone = tmsrt;
    48         ret = self->AddObserver(*self, NULL);
    46         ret = self->AddObserver(*self, NULL);
    49         }
    47     }
    50     qrt = self;
    48     qrt = self;
    51     return ret;
    49     return ret;
    52     }
    50 }
    53 
    51 
    54 gint QTMSRingToneImpl::PostConstruct()
    52 gint QTMSRingToneImpl::PostConstruct()
    55     {
    53 {
    56     gint ret(QTMS_RESULT_SUCCESS);
    54     gint ret(QTMS_RESULT_SUCCESS);
    57     return ret;
    55     return ret;
       
    56 }
       
    57 
       
    58 gint QTMSRingToneImpl::AddObserver(TMS::TMSRingToneObserver& obsrvr, gpointer user_data)
       
    59 {
       
    60     gint ret(QTMS_RESULT_UNINITIALIZED_OBJECT);
       
    61     if (iRingTone) {
       
    62         ret = iRingTone->AddObserver(obsrvr, user_data);
    58     }
    63     }
    59 
       
    60 gint QTMSRingToneImpl::AddObserver(TMS::TMSRingToneObserver& obsrvr,
       
    61         gpointer user_data)
       
    62     {
       
    63     gint ret(QTMS_RESULT_UNINITIALIZED_OBJECT);
       
    64     if (iRingTone)
       
    65         {
       
    66         ret = iRingTone->AddObserver(obsrvr, user_data);
       
    67         }
       
    68     return ret;
    64     return ret;
    69     }
    65 }
    70 
    66 
    71 gint QTMSRingToneImpl::RemoveObserver(TMS::TMSRingToneObserver& obsrvr)
    67 gint QTMSRingToneImpl::RemoveObserver(TMS::TMSRingToneObserver& obsrvr)
    72     {
    68 {
    73     gint ret(QTMS_RESULT_UNINITIALIZED_OBJECT);
    69     gint ret(QTMS_RESULT_UNINITIALIZED_OBJECT);
    74     if (iRingTone)
    70     if (iRingTone) {
    75         {
       
    76         ret = iRingTone->RemoveObserver(obsrvr);
    71         ret = iRingTone->RemoveObserver(obsrvr);
    77         }
    72     }
    78     return ret;
    73     return ret;
    79     }
    74 }
    80 
    75 
    81 void QTMSRingToneImpl::RingtoneEvent(const TMS::TMSRingTone& /*rt*/,
    76 void QTMSRingToneImpl::RingtoneEvent(const TMS::TMSRingTone& /*rt*/, TMS::TMSSignalEvent event)
    82         TMS::TMSSignalEvent event)
    77 {
    83     {
       
    84     QTMSSignalEvent qevent;
    78     QTMSSignalEvent qevent;
    85     qevent.type = event.type;
    79     qevent.type = event.type;
    86     qevent.reason = event.reason;
    80     qevent.reason = event.reason;
    87     qevent.curr_state = event.curr_state;
    81     qevent.curr_state = event.curr_state;
    88     qevent.prev_state = event.prev_state;
    82     qevent.prev_state = event.prev_state;
    89     qevent.event_data = event.event_data;
    83     qevent.event_data = event.event_data;
    90     qevent.user_data = event.user_data;
    84     qevent.user_data = event.user_data;
    91 
    85 
    92     emit QTMS::QTMSRingTone::RingtoneEvent(static_cast<QTMSRingTone&> (*this),
    86     emit QTMS::QTMSRingTone::RingtoneEvent(static_cast<QTMSRingTone&> (*this), qevent);
    93             qevent);
    87 }
    94     }
       
    95 
    88 
    96 // End of file
    89 // End of file