13 #if !defined (BENTLEY_CONFIG_NO_THREAD_SUPPORT)
28 virtual void OnCanceled() = 0;
37 std::function<void ()> m_onCanceled;
54 virtual bool IsCanceled() = 0;
56 virtual void Register(std::weak_ptr<ICancellationListener> listener) = 0;
67 bvector<std::weak_ptr<ICancellationListener>> m_listeners;
70 void OnCancelled()
const;
94 bvector <ICancellationTokenPtr> m_tokens;
109 BENTLEYDLL_EXPORT virtual void Register(std::weak_ptr<ICancellationListener> listener)
override;
#define BENTLEYDLL_EXPORT
Definition: Bentley.h:249
Definition: CancellationToken.h:50
virtual void Register(std::weak_ptr< ICancellationListener > listener)=0
Register custom listener for cancellation event.
Definition: CancellationToken.h:91
virtual ~ICancellationToken()
Definition: CancellationToken.h:52
Definition: CancellationToken.h:24
std::shared_ptr< struct MergeCancellationToken > MergeCancellationTokenPtr
Definition: CancellationToken.h:90
#define BEGIN_BENTLEY_TASKS_NAMESPACE
Definition: Tasks.h:13
std::shared_ptr< struct ICancellationToken > ICancellationTokenPtr
Definition: CancellationToken.h:49
SimpleCancellationToken(bool canceled)
Definition: CancellationToken.h:73
Definition: CancellationToken.h:34
Definition: CancellationToken.h:63
virtual ~ICancellationListener()
Definition: CancellationToken.h:26
virtual ~SimpleCancellationToken()
Definition: CancellationToken.h:74
virtual bool IsCanceled()=0
Check if token is cancelled.
#define ct1
Definition: mscons.h:118
#define END_BENTLEY_TASKS_NAMESPACE
Definition: Tasks.h:14
#define EXPORT_VTABLE_ATTRIBUTE
Definition: Bentley.h:67
std::shared_ptr< struct SimpleCancellationToken > SimpleCancellationTokenPtr
Definition: CancellationToken.h:62