GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Macros | Functions
bsxfun-defs.cc File Reference
#include <algorithm>
#include <iostream>
#include "dim-vector.h"
#include "oct-locbuf.h"
#include "lo-error.h"
#include "mx-inlines.cc"
Include dependency graph for bsxfun-defs.cc:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define BSXFUN_OP2_DEF(OP, ARRAY, ARRAY1, ARRAY2)   ARRAY bsxfun_ ## OP (const ARRAY1& x, const ARRAY2& y)
 
#define BSXFUN_OP2_DEF_MXLOOP(OP, ARRAY, ARRAY1, ARRAY2, LOOP)
 
#define BSXFUN_OP_DEF(OP, ARRAY)   ARRAY bsxfun_ ## OP (const ARRAY& x, const ARRAY& y)
 
#define BSXFUN_OP_DEF_MXLOOP(OP, ARRAY, LOOP)
 
#define BSXFUN_POW_MIXED_MXLOOP(INT_TYPE)
 
#define BSXFUN_REL_DEF(OP, ARRAY)   boolNDArray bsxfun_ ## OP (const ARRAY& x, const ARRAY& y)
 
#define BSXFUN_REL_DEF_MXLOOP(OP, ARRAY, LOOP)
 
#define BSXFUN_STDOP_DEFS_MXLOOP(ARRAY)
 
#define BSXFUN_STDREL_DEFS_MXLOOP(ARRAY)
 
#define octave_bsxfun_defs_h   1
 

Functions

template<typename R , typename X , typename Y >
Array< R > do_bsxfun_op (const Array< X > &x, const Array< Y > &y, void(*op_vv)(size_t, R *, const X *, const Y *), void(*op_sv)(size_t, R *, X, const Y *), void(*op_vs)(size_t, R *, const X *, Y))
 
template<typename R , typename X >
void do_inplace_bsxfun_op (Array< R > &r, const Array< X > &x, void(*op_vv)(size_t, R *, const X *), void(*op_vs)(size_t, R *, X))
 

Macro Definition Documentation

#define BSXFUN_OP2_DEF (   OP,
  ARRAY,
  ARRAY1,
  ARRAY2 
)    ARRAY bsxfun_ ## OP (const ARRAY1& x, const ARRAY2& y)

Definition at line 216 of file bsxfun-defs.cc.

#define BSXFUN_OP2_DEF_MXLOOP (   OP,
  ARRAY,
  ARRAY1,
  ARRAY2,
  LOOP 
)
Value:
BSXFUN_OP2_DEF(OP, ARRAY, ARRAY1, ARRAY2) \
{ return do_bsxfun_op<ARRAY::element_type, ARRAY1::element_type, ARRAY2::element_type> \
(x, y, LOOP, LOOP, LOOP); }
#define BSXFUN_OP2_DEF(OP, ARRAY, ARRAY1, ARRAY2)
Definition: bsxfun-defs.cc:216
the element is set to zero In other the statement xample y
Definition: data.cc:5342
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE * x

Definition at line 227 of file bsxfun-defs.cc.

#define BSXFUN_OP_DEF (   OP,
  ARRAY 
)    ARRAY bsxfun_ ## OP (const ARRAY& x, const ARRAY& y)

Definition at line 213 of file bsxfun-defs.cc.

#define BSXFUN_OP_DEF_MXLOOP (   OP,
  ARRAY,
  LOOP 
)
Value:
BSXFUN_OP_DEF(OP, ARRAY) \
{ return do_bsxfun_op<ARRAY::element_type, ARRAY::element_type, ARRAY::element_type> \
(x, y, LOOP, LOOP, LOOP); }
#define BSXFUN_OP_DEF(OP, ARRAY)
Definition: bsxfun-defs.cc:213
the element is set to zero In other the statement xample y
Definition: data.cc:5342
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE * x

Definition at line 222 of file bsxfun-defs.cc.

#define BSXFUN_POW_MIXED_MXLOOP (   INT_TYPE)
Value:
octave_int< T > pow(const octave_int< T > &a, const octave_int< T > &b)
void mx_inline_pow(size_t n, R *r, const X *x, const Y *y)
Definition: mx-inlines.cc:402
#define BSXFUN_OP2_DEF_MXLOOP(OP, ARRAY, ARRAY1, ARRAY2, LOOP)
Definition: bsxfun-defs.cc:227

Definition at line 254 of file bsxfun-defs.cc.

#define BSXFUN_REL_DEF (   OP,
  ARRAY 
)    boolNDArray bsxfun_ ## OP (const ARRAY& x, const ARRAY& y)

Definition at line 219 of file bsxfun-defs.cc.

#define BSXFUN_REL_DEF_MXLOOP (   OP,
  ARRAY,
  LOOP 
)
Value:
BSXFUN_REL_DEF(OP, ARRAY) \
{ return do_bsxfun_op<bool, ARRAY::element_type, ARRAY::element_type> \
(x, y, LOOP, LOOP, LOOP); }
#define BSXFUN_REL_DEF(OP, ARRAY)
Definition: bsxfun-defs.cc:219
the element is set to zero In other the statement xample y
Definition: data.cc:5342
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE * x

Definition at line 232 of file bsxfun-defs.cc.

#define BSXFUN_STDOP_DEFS_MXLOOP (   ARRAY)
Value:
#define BSXFUN_OP_DEF_MXLOOP(OP, ARRAY, LOOP)
Definition: bsxfun-defs.cc:222
void mx_inline_mul(size_t n, R *r, const X *x, const Y *y)
Definition: mx-inlines.cc:110
void mx_inline_xmin(size_t n, T *r, const T *x, const T *y)
Definition: mx-inlines.cc:349
void mx_inline_sub(size_t n, R *r, const X *x, const Y *y)
Definition: mx-inlines.cc:109
charNDArray max(char d, const charNDArray &m)
Definition: chNDArray.cc:228
void mx_inline_add(size_t n, R *r, const X *x, const Y *y)
Definition: mx-inlines.cc:108
void mx_inline_div(size_t n, R *r, const X *x, const Y *y)
Definition: mx-inlines.cc:111
charNDArray min(char d, const charNDArray &m)
Definition: chNDArray.cc:205
void mx_inline_xmax(size_t n, T *r, const T *x, const T *y)
Definition: mx-inlines.cc:350

Definition at line 237 of file bsxfun-defs.cc.

#define BSXFUN_STDREL_DEFS_MXLOOP (   ARRAY)
Value:
void mx_inline_le(size_t n, bool *r, const X *x, const Y *y)
Definition: mx-inlines.cc:153
void mx_inline_ne(size_t n, bool *r, const X *x, const Y *y)
Definition: mx-inlines.cc:157
void mx_inline_eq(size_t n, bool *r, const X *x, const Y *y)
Definition: mx-inlines.cc:156
#define BSXFUN_REL_DEF_MXLOOP(OP, ARRAY, LOOP)
Definition: bsxfun-defs.cc:232
void mx_inline_ge(size_t n, bool *r, const X *x, const Y *y)
Definition: mx-inlines.cc:155
void mx_inline_gt(size_t n, bool *r, const X *x, const Y *y)
Definition: mx-inlines.cc:154
void mx_inline_lt(size_t n, bool *r, const X *x, const Y *y)
Definition: mx-inlines.cc:152

Definition at line 245 of file bsxfun-defs.cc.

#define octave_bsxfun_defs_h   1

Definition at line 25 of file bsxfun-defs.cc.

Function Documentation

template<typename R , typename X , typename Y >
Array<R> do_bsxfun_op ( const Array< X > &  x,
const Array< Y > &  y,
void(*)(size_t, R *, const X *, const Y *)  op_vv,
void(*)(size_t, R *, X, const Y *)  op_sv,
void(*)(size_t, R *, const X *, Y op_vs 
)
template<typename R , typename X >
void do_inplace_bsxfun_op ( Array< R > &  r,
const Array< X > &  x,
void(*)(size_t, R *, const X *)  op_vv,
void(*)(size_t, R *, X)  op_vs 
)