37 return self; |
37 return self; |
38 } |
38 } |
39 |
39 |
40 CMMAMMFRateControl::~CMMAMMFRateControl() |
40 CMMAMMFRateControl::~CMMAMMFRateControl() |
41 { |
41 { |
42 LOG( EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::~CMMAMMFRateControl"); |
42 LOG(EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::~CMMAMMFRateControl"); |
43 } |
43 } |
44 |
44 |
45 CMMAMMFRateControl::CMMAMMFRateControl(CMMAMMFPlayerBase* aPlayer) : |
45 CMMAMMFRateControl::CMMAMMFRateControl(CMMAMMFPlayerBase* aPlayer) : |
46 iPlayer(aPlayer), iCurrentRate(KMMADefaultRate) |
46 iPlayer(aPlayer), iCurrentRate(KMMADefaultRate) |
47 { |
47 { |
48 LOG( EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::CMMAMMFRateControl"); |
48 LOG(EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::CMMAMMFRateControl"); |
49 } |
49 } |
50 |
50 |
51 void CMMAMMFRateControl::ConstructL() |
51 void CMMAMMFRateControl::ConstructL() |
52 { |
52 { |
53 iPlayer->AddStateListenerL(this); |
53 iPlayer->AddStateListenerL(this); |
54 } |
54 } |
55 |
55 |
56 void CMMAMMFRateControl::StateChanged(TInt aState) |
56 void CMMAMMFRateControl::StateChanged(TInt aState) |
57 { |
57 { |
58 LOG( EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::StateChanged"); |
58 LOG(EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::StateChanged"); |
59 if (aState == CMMAPlayer::EStarted && iCurrentRate == KMMAMinRate) |
59 if (aState == CMMAPlayer::EStarted && iCurrentRate == KMMAMinRate) |
60 { |
60 { |
61 RMMFController& controller = iPlayer->Controller(); |
61 RMMFController& controller = iPlayer->Controller(); |
62 TInt err = controller.Pause(); |
62 TInt err = controller.Pause(); |
63 if ((err != KErrNone) && (err != KErrNotReady)) |
63 if ((err != KErrNone) && (err != KErrNotReady)) |
64 { |
64 { |
65 ELOG1( EJavaMMAPI, "CMMAMMFRateControl::StateChanged: Pause error %d", err); |
65 ELOG1(EJavaMMAPI, "CMMAMMFRateControl::StateChanged: Pause error %d", err); |
66 TBuf<KErrorMessageSize> errorMessage; |
66 TBuf<KErrorMessageSize> errorMessage; |
67 errorMessage.Format(KErrDefaultError, err); |
67 errorMessage.Format(KErrDefaultError, err); |
68 iPlayer->PostStringEvent(CMMAPlayerEvent::EError, errorMessage); |
68 iPlayer->PostStringEvent(CMMAPlayerEvent::EError, errorMessage); |
69 } |
69 } |
70 } |
70 } |
71 } |
71 } |
72 |
72 |
73 TInt CMMAMMFRateControl::SetRateL(TInt aRate) |
73 TInt CMMAMMFRateControl::SetRateL(TInt aRate) |
74 { |
74 { |
75 LOG( EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::SetRateL"); |
75 LOG(EJavaMMAPI, EInfo, "MMA:CMMAMMFRateControl::SetRateL"); |
76 RMMFController& controller = iPlayer->Controller(); |
76 RMMFController& controller = iPlayer->Controller(); |
77 |
77 |
78 TInt newRate; |
78 TInt newRate; |
79 if (aRate <= KMMAMinRate) |
79 if (aRate <= KMMAMinRate) |
80 { |
80 { |