Esempio n. 1
0
 // Calls to these get compiled away when PROGRESS is undefined.
 partial void SetDepth(Promise next);
Esempio n. 2
0
 void IProgressListener.ResolveOrSetProgress(Promise sender, UnsignedFixed32 progress)
 {
     SetProgress(progress);
     ReleaseWithoutDisposeCheck();
 }
Esempio n. 3
0
 void IProgressListener.CancelOrSetProgress(Promise sender, UnsignedFixed32 progress)
 {
     _suspended     = true;
     _currentAmount = progress;
     ReleaseWithoutDisposeCheck();
 }
Esempio n. 4
0
 protected override bool SubscribeProgressIfWaiterAndContinueLoop(ref IProgressListener progressListener, out Promise previous, ref ValueLinkedStack <PromisePassThrough> passThroughs)
 {
     if (_state != State.Pending)
     {
         previous = null;
         return(false);
     }
     return(SubscribeProgressAndContinueLoop(ref progressListener, out previous));
 }
Esempio n. 5
0
 void IProgressListener.SetProgress(Promise sender, UnsignedFixed32 progress)
 {
     SetProgress(progress);
 }
Esempio n. 6
0
                public static ProgressDelegateCapture <TCapture> GetOrCreate(TCapture capturedValue, Action <TCapture, float> onProgress, Promise owner, CancelationToken cancelationToken = default(CancelationToken))
                {
                    var progress = _pool.IsNotEmpty ? (ProgressDelegateCapture <TCapture>)_pool.Pop() : new ProgressDelegateCapture <TCapture>();

                    progress._capturedValue = capturedValue;
                    progress._onProgress    = onProgress;
                    progress.Reset(owner, cancelationToken);
                    return(progress);
                }
Esempio n. 7
0
                protected override bool SubscribeProgressAndContinueLoop(ref IProgressListener progressListener, out Promise previous)
                {
                    // This is guaranteed to be pending.
                    bool firstSubscribe = _progressListeners.IsEmpty;

                    progressListener.Retain();
                    _progressListeners.Push(progressListener);
                    previous = _valueOrPrevious as Promise;
                    if (_secondPrevious)
                    {
                        if (!firstSubscribe)
                        {
                            return(false);
                        }
                        // Subscribe this to the returned promise.
                        progressListener = this;
                    }
                    return(previous != null);
                }
Esempio n. 8
0
 void Internal.ITreeHandleable.MakeReadyFromSettled(Promise owner, Internal.IValueContainer valueContainer)
 {
     throw new System.InvalidOperationException();
 }
Esempio n. 9
0
                public static ProgressDelegate GetOrCreate(Action <float> onProgress, Promise owner, CancelationToken cancelationToken = default(CancelationToken))
                {
                    var progress = _pool.IsNotEmpty ? (ProgressDelegate)_pool.Pop() : new ProgressDelegate();

                    progress._onProgress = onProgress;
                    progress.Reset(owner, cancelationToken);
                    return(progress);
                }
Esempio n. 10
0
 protected virtual void Dispose()
 {
     _owner = null;
     _cancelationRegistration = default(CancelationRegistration);
 }
Esempio n. 11
0
 void Internal.ITreeHandleable.MakeReady(Promise owner, Internal.IValueContainer valueContainer, ref ValueLinkedQueue <Internal.ITreeHandleable> handleQueue)
 {
     throw new System.InvalidOperationException();
 }
Esempio n. 12
0
 protected virtual bool SubscribeProgressIfWaiterAndContinueLoop(ref InternalProtected.IProgressListener progressListener, out Promise previous, ref ValueLinkedStack <InternalProtected.PromisePassThrough> passThroughs)
 {
     return((previous = _valueOrPrevious as Promise) != null);
 }
Esempio n. 13
0
 protected virtual bool SubscribeProgressAndContinueLoop(ref InternalProtected.IProgressListener progressListener, out Promise previous)
 {
     progressListener.Retain();
     _progressListeners.Push(progressListener);
     return((previous = _valueOrPrevious as Promise) != null);
 }
Esempio n. 14
0
 partial void SetDepth(Promise next)
 {
     next.SetDepth(_waitDepthAndProgress);
 }
Esempio n. 15
0
 void IProgressListener.CancelOrSetProgress(Promise sender, UnsignedFixed32 progress)
 {
     Release();
 }
 partial void IncrementProgress(Promise feed);