+ // when it is on looped state, 2 case to send progress signal.
+ // (require && range_value >= marker) || << Signal at previous loop
+ // (marker > 0 && !finished && elaped >= marker) << Signal at current loop
+ if((mProgressMarker > 0.0f) && !finished && (elapsedFactor >= markerFactor))
+ {
+ // The application should be notified by NotificationManager, in another thread
+ progressReached = true;
+ mProgressReachedSignalRequired = false;
+ }
+ else
+ {
+ if(mProgressReachedSignalRequired && (edgeFactor >= markerFactor))
+ {
+ progressReached = true;
+ }
+ mProgressReachedSignalRequired = mProgressMarker > 0.0f;
+ }
+ }
+ else
+ {
+ // when it is not on looped state, only 1 case to send progress signal.
+ // (require && elaped >= marker)
+ if(mProgressReachedSignalRequired && (elapsedFactor >= markerFactor))
+ {
+ // The application should be notified by NotificationManager, in another thread
+ progressReached = true;
+ mProgressReachedSignalRequired = false;
+ }
+ }