Loading...
Searching...
No Matches
casacore::Copy_global_functions_copy Struct Reference
casa package (libcasa_casa) » Utilities_module

Copy methods . More...

`#include <Copy.h>`

## Public Member Functions

template<class T>
void | objmove (T *to, const T *from, size_t n)
| The general function to copy n objects from one place to another if overlap between to and from fields is possible.
template<class T>
void | objmove (T *to, const T *from, size_t n, size_t toStride, size_t fromStride)
template<class T>
void | objcopy (T *to, const T *from, size_t n)
| The non-general function to copy n objects from one place to another.
template<class T>
void | objcopy (T *to, const T *from, size_t n, size_t toStride, size_t fromStride)
template<class T>
void | objcopyctor (T *to, const T *from, size_t n)
template<class T>
void | objcopyctor (T *to, const T *from, size_t n, size_t toStride, size_t fromStride)
template<class T>
void | objset (T *to, const T fillValue, size_t n)
| Fill n elements of an array of objects with the given value, optionally with a stride.
template<class T>
void | objset (T *to, const T fillValue, size_t n, size_t toStride)

## Detailed Description

Copy methods .

Definition at line 129 of file Copy.h.

## Member Function Documentation

## objcopy() [1/2]

template<class T>

void casacore::Copy_global_functions_copy::objcopy | ( | T * | to,
|  | const T * | from,
|  | size_t | n )

inline

The non-general function to copy n objects from one place to another.

Strides may be specified, i.e. you may copy from every fromStride-th position into every toStride-th one.

Objcopy/objcopyctor does not take an overlap of source and destination into account. Objmove should be used if that is an issue.

Objcopyctor copy objects from from by calling copy constructor on each element in to.

An exception will be thrown if the source or the destination does not exist or if the strides are non-positive.

### Thrown Exceptions

- AipsError

Definition at line 196 of file Copy.h.

## objcopy() [2/2]

template<class T>

void casacore::Copy_global_functions_copy::objcopy | ( | T * | to,
|  | const T * | from,
|  | size_t | n,
|  | size_t | toStride,
|  | size_t | fromStride )

inline

Definition at line 198 of file Copy.h.

## objcopyctor() [1/2]

template<class T>

void casacore::Copy_global_functions_copy::objcopyctor | ( | T * | to,
|  | const T * | from,
|  | size_t | n )

inline

Definition at line 203 of file Copy.h.

## objcopyctor() [2/2]

template<class T>

void casacore::Copy_global_functions_copy::objcopyctor | ( | T * | to,
|  | const T * | from,
|  | size_t | n,
|  | size_t | toStride,
|  | size_t | fromStride )

inline

Definition at line 217 of file Copy.h.

## objmove() [1/2]

template<class T>

void casacore::Copy_global_functions_copy::objmove | ( | T * | to,
|  | const T * | from,
|  | size_t | n )

inline

The general function to copy n objects from one place to another if overlap between to and from fields is possible.

Strides may be specified, i.e. you may copy from every fromStride-th position into every toStride-th one. The function will call std::copy() when possible. Objmove works correctly if the source and destination overlap in any way. An exception will be thrown if the source or the destination does not exist (and n is non-zero) or if the strides are non-positive.

### Thrown Exceptions

- AipsError

Definition at line 143 of file Copy.h.

Referenced by objmove().

## objmove() [2/2]

template<class T>

void casacore::Copy_global_functions_copy::objmove | ( | T * | to,
|  | const T * | from,
|  | size_t | n,
|  | size_t | toStride,
|  | size_t | fromStride )

inline

Do the moves from the right.

Definition at line 147 of file Copy.h.

References objmove().

## objset() [1/2]

template<class T>

void casacore::Copy_global_functions_copy::objset | ( | T * | to,
|  | const T | fillValue,
|  | size_t | n )

inline

Fill n elements of an array of objects with the given value, optionally with a stride.

Note that the fillValue is passed by value.

An exception will be thrown if the destination array does not exist or if the stride is non-positive.

### Thrown Exceptions

- AipsError

Definition at line 250 of file Copy.h.

## objset() [2/2]

template<class T>

void casacore::Copy_global_functions_copy::objset | ( | T * | to,
|  | const T | fillValue,
|  | size_t | n,
|  | size_t | toStride )

inline

Definition at line 253 of file Copy.h.

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

- casa/Utilities/Copy.h