Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
ExtremaPC::Result Struct Reference

Result of extrema computation containing all found extrema. Non-copyable to enforce use of const reference from Perform(). More...

#include <ExtremaPC.hxx>

Public Member Functions

 Result ()=default
 Default constructor.
 
 Result (const Result &)=delete
 Copy constructor is deleted.
 
Resultoperator= (const Result &)=delete
 Copy assignment is deleted.
 
 Result (Result &&)=default
 Move constructor.
 
Resultoperator= (Result &&)=default
 Move assignment.
 
bool IsDone () const
 Returns true if computation succeeded with finite number of extrema.
 
bool IsInfinite () const
 Returns true if there are infinite solutions.
 
int NbExt () const
 Returns number of extrema found (0 if infinite or failed).
 
const ExtremumResultoperator[] (int theIndex) const
 Access extremum by 0-based index.
 
double MinSquareDistance () const
 Returns the squared distance of the closest extremum. Returns infinity if no extrema found.
 
int MinIndex () const
 Returns the index of the closest extremum (0-based). Returns -1 if no extrema found.
 
double MaxSquareDistance () const
 Returns the squared distance of the farthest extremum. Returns 0 if no extrema found.
 
int MaxIndex () const
 Returns the index of the farthest extremum (0-based). Returns -1 if no extrema found.
 
void Clear ()
 Clear the result for reuse. Preserves allocated memory in Extrema vector.
 

Data Fields

ExtremaPC::Status Status = ExtremaPC::Status::NotDone
 Computation status.
 
NCollection_DynamicArray< ExtremumResultExtrema {8}
 Collection of found extrema.
 
double InfiniteSquareDistance = 0.0
 For infinite solutions, stores the constant squared distance. Only meaningful when Status == Status::InfiniteSolutions.
 

Detailed Description

Result of extrema computation containing all found extrema. Non-copyable to enforce use of const reference from Perform().

Constructor & Destructor Documentation

◆ Result() [1/3]

ExtremaPC::Result::Result ( )
default

Default constructor.

◆ Result() [2/3]

ExtremaPC::Result::Result ( const Result & )
delete

Copy constructor is deleted.

◆ Result() [3/3]

ExtremaPC::Result::Result ( Result && )
default

Move constructor.

Member Function Documentation

◆ Clear()

void ExtremaPC::Result::Clear ( )
inline

Clear the result for reuse. Preserves allocated memory in Extrema vector.

◆ IsDone()

bool ExtremaPC::Result::IsDone ( ) const
inline

Returns true if computation succeeded with finite number of extrema.

◆ IsInfinite()

bool ExtremaPC::Result::IsInfinite ( ) const
inline

Returns true if there are infinite solutions.

◆ MaxIndex()

int ExtremaPC::Result::MaxIndex ( ) const
inline

Returns the index of the farthest extremum (0-based). Returns -1 if no extrema found.

◆ MaxSquareDistance()

double ExtremaPC::Result::MaxSquareDistance ( ) const
inline

Returns the squared distance of the farthest extremum. Returns 0 if no extrema found.

◆ MinIndex()

int ExtremaPC::Result::MinIndex ( ) const
inline

Returns the index of the closest extremum (0-based). Returns -1 if no extrema found.

◆ MinSquareDistance()

double ExtremaPC::Result::MinSquareDistance ( ) const
inline

Returns the squared distance of the closest extremum. Returns infinity if no extrema found.

◆ NbExt()

int ExtremaPC::Result::NbExt ( ) const
inline

Returns number of extrema found (0 if infinite or failed).

◆ operator=() [1/2]

Result & ExtremaPC::Result::operator= ( const Result & )
delete

Copy assignment is deleted.

◆ operator=() [2/2]

Result & ExtremaPC::Result::operator= ( Result && )
default

Move assignment.

◆ operator[]()

const ExtremumResult & ExtremaPC::Result::operator[] ( int theIndex) const
inline

Access extremum by 0-based index.

Field Documentation

◆ Extrema

NCollection_DynamicArray<ExtremumResult> ExtremaPC::Result::Extrema {8}

Collection of found extrema.

◆ InfiniteSquareDistance

double ExtremaPC::Result::InfiniteSquareDistance = 0.0

For infinite solutions, stores the constant squared distance. Only meaningful when Status == Status::InfiniteSolutions.

◆ Status

ExtremaPC::Status ExtremaPC::Result::Status = ExtremaPC::Status::NotDone

Computation status.


The documentation for this struct was generated from the following file: