Loading...
Searching...
No Matches
BinaryNinja::SimilaritySessionCompletion Class Reference

Tracks stop requests, progress, and timing for a session run. More...

Detailed Description

Tracks stop requests, progress, and timing for a session run.

Public Member Functions

 SimilaritySessionCompletion (BNSimilaritySessionCompletion *completion)
 SimilaritySessionCompletion ()
 Creates an independent completion state, normally only for calling providers or resolvers directly.
bool IsFinished () const
void RequestStop ()
 Asks the run to stop.
bool IsStopRequested () const
double GetProgress (const SimilaritySessionCompletionQuery &query) const
 Returns progress from 0.0 to 1.0.
void SetProgress (const SimilaritySessionCompletionQuery &query, double progress)
 Increases progress for a node and one provider or resolver.
std::chrono::milliseconds GetTiming (const SimilaritySessionCompletionQuery &query) const
 Returns elapsed time for the selected part of the run.
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNSimilaritySessionCompletion, BNNewSimilaritySessionCompletionReference, BNFreeSimilaritySessionCompletion >
 CoreRefCountObject ()
virtual ~CoreRefCountObject ()
BNSimilaritySessionCompletionGetObject () const
void AddRef ()
void Release ()
void AddRefForRegistration ()
void ReleaseForRegistration ()
void AddRefForCallback ()
void ReleaseForCallback ()

Additional Inherited Members

Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNSimilaritySessionCompletion, BNNewSimilaritySessionCompletionReference, BNFreeSimilaritySessionCompletion >
std::atomic< int > m_refs
bool m_registeredRef
BNSimilaritySessionCompletionm_object

Constructor & Destructor Documentation

◆ SimilaritySessionCompletion() [1/2]

SimilaritySessionCompletion::SimilaritySessionCompletion ( BNSimilaritySessionCompletion * completion)

◆ SimilaritySessionCompletion() [2/2]

SimilaritySessionCompletion::SimilaritySessionCompletion ( )

Creates an independent completion state, normally only for calling providers or resolvers directly.

Member Function Documentation

◆ IsFinished()

bool SimilaritySessionCompletion::IsFinished ( ) const

◆ RequestStop()

void SimilaritySessionCompletion::RequestStop ( )

Asks the run to stop.

Long-running callbacks should check IsStopRequested regularly.

◆ IsStopRequested()

bool SimilaritySessionCompletion::IsStopRequested ( ) const

◆ GetProgress()

double SimilaritySessionCompletion::GetProgress ( const SimilaritySessionCompletionQuery & query) const

Returns progress from 0.0 to 1.0.

Exactly 1.0 means the selected part of the run has finished.

◆ SetProgress()

void SimilaritySessionCompletion::SetProgress ( const SimilaritySessionCompletionQuery & query,
double progress )

Increases progress for a node and one provider or resolver.

Progress cannot decrease.

Note
Call this only from the provider or resolver selected by `query`.

◆ GetTiming()

std::chrono::milliseconds SimilaritySessionCompletion::GetTiming ( const SimilaritySessionCompletionQuery & query) const

Returns elapsed time for the selected part of the run.