ccgsl 2.7.2
C++wrappersforGnuScientificLibrary
gsl::integration::fixed_workspace Class Reference

Workspace for integration_fixed. More...

#include <integration.hpp>

Collaboration diagram for gsl::integration::fixed_workspace:
Collaboration graph

Public Member Functions

 fixed_workspace ()
 The default constructor is only really useful for assigning to. More...
 
 fixed_workspace (const gsl_integration_fixed_type *type, const size_t n, const double a, const double b, const double alpha, const double beta)
 The default constructor creates a new fixed_workspace with n elements. More...
 
 fixed_workspace (gsl_integration_fixed_workspace *v)
 Could construct from a gsl_integration_fixed_workspace. More...
 
 fixed_workspace (fixed_workspace const &v)
 The copy constructor. More...
 
fixed_workspaceoperator= (fixed_workspace const &v)
 The assignment operator. More...
 
 ~fixed_workspace ()
 The destructor only deletes the pointers if count reaches zero. More...
 
 fixed_workspace (fixed_workspace &&v)
 Move constructor. More...
 
fixed_workspaceoperator= (fixed_workspace &&v)
 Move operator. More...
 
bool operator== (fixed_workspace const &v) const
 Two fixed_workspace are identically equal if their elements are identical. More...
 
bool operator!= (fixed_workspace const &v) const
 Two fixed_workspace are different if their elements are not identical. More...
 
bool operator< (fixed_workspace const &v) const
 A container needs to define an ordering for sorting. More...
 
bool operator> (fixed_workspace const &v) const
 A container needs to define an ordering for sorting. More...
 
bool operator<= (fixed_workspace const &v) const
 A container needs to define an ordering for sorting. More...
 
bool operator>= (fixed_workspace const &v) const
 A container needs to define an ordering for sorting. More...
 
bool empty () const
 Find if the workspace is empty. More...
 
void swap (fixed_workspace &v)
 Swap two workspace. More...
 
gsl_integration_fixed_workspace * get () const
 Get the gsl_integration_fixed_workspace. More...
 
bool unique () const
 Find if this is the only object sharing the gsl_integration_fixed_workspace. More...
 
size_t use_count () const
 Find how many fixed_workspace objects share this pointer. More...
 
 operator bool () const
 Allow conversion to bool. More...
 

Private Attributes

gsl_integration_fixed_workspace * ccgsl_pointer
 The shared pointer. More...
 
size_t * count
 The shared reference count. More...
 

Detailed Description

Workspace for integration_fixed.

Definition at line 238 of file integration.hpp.

Constructor & Destructor Documentation

◆ fixed_workspace() [1/5]

gsl::integration::fixed_workspace::fixed_workspace ( )
inline

The default constructor is only really useful for assigning to.

Definition at line 243 of file integration.hpp.

References ccgsl_pointer, and count.

Referenced by operator=().

◆ fixed_workspace() [2/5]

gsl::integration::fixed_workspace::fixed_workspace ( const gsl_integration_fixed_type *  type,
const size_t  n,
const double  a,
const double  b,
const double  alpha,
const double  beta 
)
inlineexplicit

The default constructor creates a new fixed_workspace with n elements.

See gsl_integration_fixed_alloc for parameter details.

Parameters
typeThe type
nNumber of quadrature nodes
aLower limit of integration
bUpper limit of integration
alphaA weighting
betaA weighting
Returns
A fixed_workspace

Definition at line 260 of file integration.hpp.

References gsl::sf::mathieu::a(), gsl::sf::mathieu::b(), gsl::ran::beta(), ccgsl_pointer, count, and gsl::rstat::n().

◆ fixed_workspace() [3/5]

gsl::integration::fixed_workspace::fixed_workspace ( gsl_integration_fixed_workspace *  v)
inlineexplicit

Could construct from a gsl_integration_fixed_workspace.

This is not usually a good idea. In this case you should not use gsl_integration_fixed_workspace_free() to deallocate the memory.

Parameters
vThe workspace

Definition at line 278 of file integration.hpp.

References ccgsl_pointer, and count.

◆ fixed_workspace() [4/5]

gsl::integration::fixed_workspace::fixed_workspace ( fixed_workspace const &  v)
inline

The copy constructor.

This creates a new reference to the fixed_workspace.

Parameters
vThe integration_fixed_workspace to copy.

Definition at line 289 of file integration.hpp.

References ccgsl_pointer, and count.

◆ ~fixed_workspace()

gsl::integration::fixed_workspace::~fixed_workspace ( )
inline

The destructor only deletes the pointers if count reaches zero.

Definition at line 308 of file integration.hpp.

References ccgsl_pointer, and count.

◆ fixed_workspace() [5/5]

gsl::integration::fixed_workspace::fixed_workspace ( fixed_workspace &&  v)
inline

Move constructor.

Parameters
vThe fixed_workspace to move.

Definition at line 320 of file integration.hpp.

References count.

Member Function Documentation

◆ empty()

bool gsl::integration::fixed_workspace::empty ( ) const
inline

Find if the workspace is empty.

Returns
true if has size zero; otherwise false

Definition at line 397 of file integration.hpp.

References ccgsl_pointer.

◆ get()

gsl_integration_fixed_workspace * gsl::integration::fixed_workspace::get ( ) const
inline

Get the gsl_integration_fixed_workspace.

Returns
the gsl_integration_fixed_workspace

Definition at line 423 of file integration.hpp.

References ccgsl_pointer.

Referenced by gsl::integration::fixed(), gsl::integration::fixed_n(), gsl::integration::fixed_nodes(), and gsl::integration::fixed_weights().

◆ operator bool()

gsl::integration::fixed_workspace::operator bool ( ) const
inlineexplicit

Allow conversion to bool.

Returns
true or false according as this contains a pointer to a gsl_integration_fixed_workspace

Definition at line 443 of file integration.hpp.

References ccgsl_pointer.

◆ operator!=()

bool gsl::integration::fixed_workspace::operator!= ( fixed_workspace const &  v) const
inline

Two fixed_workspace are different if their elements are not identical.

Parameters
vThe workspace to be compared with this
Returns
false or true according as this and v have identical elements or not

Definition at line 350 of file integration.hpp.

References operator==().

◆ operator<()

bool gsl::integration::fixed_workspace::operator< ( fixed_workspace const &  v) const
inline

A container needs to define an ordering for sorting.

This uses standard lexicographical ordering and so is not useful, for eaxmple, for checking, that a workspace is nonnegative.

Parameters
vThe workspace to be compared with this
Returns
false or true according as this is less than v lexicographically

Definition at line 362 of file integration.hpp.

References ccgsl_pointer.

◆ operator<=()

bool gsl::integration::fixed_workspace::operator<= ( fixed_workspace const &  v) const
inline

A container needs to define an ordering for sorting.

This uses standard lexicographical ordering and so is not useful, for eaxmple, for checking, that a workspace is nonnegative.

Parameters
vThe workspace to be compared with this
Returns
false or true according as this is less than or equal to v lexicographically

Definition at line 382 of file integration.hpp.

References ccgsl_pointer.

◆ operator=() [1/2]

fixed_workspace & gsl::integration::fixed_workspace::operator= ( fixed_workspace &&  v)
inline

Move operator.

Parameters
vThe workspace to move.
Returns
A reference to this.

Definition at line 329 of file integration.hpp.

References fixed_workspace().

◆ operator=() [2/2]

fixed_workspace & gsl::integration::fixed_workspace::operator= ( fixed_workspace const &  v)
inline

The assignment operator.

This copies elementwise.

Parameters
vThe workspace to copy

Definition at line 296 of file integration.hpp.

References ccgsl_pointer, and count.

◆ operator==()

bool gsl::integration::fixed_workspace::operator== ( fixed_workspace const &  v) const
inline

Two fixed_workspace are identically equal if their elements are identical.

Parameters
vThe workspace to be compared with this
Returns
true or false according as this and v have identical elements or not

Definition at line 342 of file integration.hpp.

References ccgsl_pointer.

Referenced by operator!=().

◆ operator>()

bool gsl::integration::fixed_workspace::operator> ( fixed_workspace const &  v) const
inline

A container needs to define an ordering for sorting.

This uses standard lexicographical ordering and so is not useful, for eaxmple, for checking, that a workspace is nonnegative.

Parameters
vThe workspace to be compared with this
Returns
false or true according as this is greater than v lexicographically

Definition at line 372 of file integration.hpp.

References ccgsl_pointer.

◆ operator>=()

bool gsl::integration::fixed_workspace::operator>= ( fixed_workspace const &  v) const
inline

A container needs to define an ordering for sorting.

This uses standard lexicographical ordering and so is not useful, for eaxmple, for checking, that a workspace is nonnegative.

Parameters
vThe workspace to be compared with this
Returns
false or true according as this is no less than v lexicographically

Definition at line 392 of file integration.hpp.

References ccgsl_pointer.

◆ swap()

void gsl::integration::fixed_workspace::swap ( fixed_workspace v)
inline

Swap two workspace.

This works even if the workspace have different sizes because it swaps pointers.

Parameters
vThe workspace to swap with this.

Definition at line 404 of file integration.hpp.

References ccgsl_pointer, and count.

◆ unique()

bool gsl::integration::fixed_workspace::unique ( ) const
inline

Find if this is the only object sharing the gsl_integration_fixed_workspace.

Returns
true or falses according as this is the only workspace object sharing the gsl_integration_fixed_workspace

Definition at line 429 of file integration.hpp.

References count.

◆ use_count()

size_t gsl::integration::fixed_workspace::use_count ( ) const
inline

Find how many fixed_workspace objects share this pointer.

Returns
the number of fixed_workspace objects that share this pointer

Definition at line 434 of file integration.hpp.

References count.

Member Data Documentation

◆ ccgsl_pointer

gsl_integration_fixed_workspace* gsl::integration::fixed_workspace::ccgsl_pointer
private

◆ count

size_t* gsl::integration::fixed_workspace::count
private

The shared reference count.

Definition at line 416 of file integration.hpp.

Referenced by fixed_workspace(), operator=(), swap(), unique(), use_count(), and ~fixed_workspace().


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