Base Utilities¶
Core data structures and fundamental utilities for KFR.
A¶
functionhistogram_data<Bins, TCount>::above() Returns the count of values that fell above the histogram range.functionabs(E1 &&) Creates an expression that returns the absolute value ofx.functionabsmax(E1 &&, E2 &&) Creates an expression that returns the greater in magnitude ofxandy.functionabsmaxof(const E1 &) Returns the greatest in magnitude of all the elements in x.functionabsmin(E1 &&, E2 &&) Creates an expression that returns the smaller in magnitude ofxandy.functionabsminof(const E1 &) Returns the smallest in magnitude of all the elements in x.classabstract_vector<T, Tag> Generic 2D/3D container ofunivectorrows, parameterized by the row storage tag.classabstract_vector<T, tag_array_ref> Specialization ofabstract_vectorthat only holds a non-owning reference to external data.classabstract_vector<T, tag_dynamic_vector> Specialization ofabstract_vectorbacked by a dynamically sizedstd::vectorusing KFR'sdata_allocator.functiontensor<T, NDims>::access(const shape_type &) Returns a reference to the element atindices.functionacos(E1 &&) Creates an expression that returns the arc cosine of x.functionshape<Dims>::adapt(const shape<indims> &, cbool_t<stop>) Adapt a higher-rank shape to the current rank for indexing.functionshape<0>::adapt(const shape<odims> &, cbool_t<stop>) Adapt any shape to a scalar; always returns the empty shape.functionshape<Dims>::add_at(index_t, cval_t<index_t, Axis>) Addvalueto the axis selected by the template parameter.functionshape<Dims>::add_shape_undef(const shape<dims> &, const shape<dims> &) Variant ofadd_shapethat also propagatesundefined_size.functionshape<Dims>::add_shape(const shape<dims> &, const shape<dims> &) Combine two shapes using the broadcasting rulemax(max(x,y), x + y).functionshape<Dims>::add(const shape<dims> &) Element-wise addition of two shapes.functionadd(E &&...) Creates an expression that returns the sum of all the arguments passed to a function.functionshape<Dims>::add(index_t) Addvalueto the last axis.functionadjacent(Fn &&, E1 &&) Creates an expression that returns the result of calling \(fn(x_i, x_{i-1})\) .functiontensor<T, NDims>::allocate(size_t) Allocates aligned memory forsizeelements.variablegenerator_expj<T, VecWidth>::alphavariablegenerator_cossin<T, VecWidth>::alphavariablegenerator_sin<T, VecWidth>::alphafunctionfilter<T>::apply_zeros(T (&)[Size]) Feeds zero-valued samples to the filter and writes its tail to a fixed-size C array.functionfilter<T>::apply_zeros(T *, size_t) Feedssizezero-valued samples to the filter and writes the resulting tail.functionfilter<T>::apply_zeros(univector<T, Tag> &) Feeds zero-valued samples to the filter and writes its tail to a univector.functionfilter<T>::apply(T *, const expression_handle<T, 1> &, size_t) Evaluatessrcinto a raw destination buffer through the filter.functionfilter<T>::apply(T *, const Expr &, size_t) Evaluates the 1-dimensional expressionsrcinto a raw destination buffer through the filter.functionfilter<T>::apply(T *, const T *, size_t) Applies the filter to a raw buffer and writes the result to another buffer.functionfilter<T>::apply(T (&)[Size]) Applies the filter in-place to a fixed-size C array.functionfilter<T>::apply(T *, size_t) Applies the filter in-place to a raw buffer.functionfilter<T>::apply(T (&)[Size], T (&)[Size]) Applies the filter to a fixed-size C array and writes the result to another array.functionfilter<T>::apply(univector<T, Tag> &) Applies the filter in-place to a univector.functionfilter<T>::apply(univector<T, Tag1> &, const univector<T, Tag2> &) Applies the filter to a univector and writes the result to another univector.functionfilter<T>::apply(univector<T, Tag> &, const Expr &) Evaluates the 1-dimensional expressionsrcintodestthrough the filter.functionfilter<T>::apply(univector<T, Tag> &, const expression_handle<T, 1> &) Evaluatessrcintodestthrough the filter.functionarange(T, cbool_t<truncated>) Creates an expression that returns integer values spanning[0, stop)with step 1.functionarange(T, T, T, cbool_t<truncated>) Creates an expression that returns values spanning[start, stop)with the given step.typedefarg Alias that decays numeric/boolean argument types while preserving expression types unchanged.variableexpression_with_arguments<Args>::args Tuple holding all arguments.variableexpression_with_arguments<Arg>::args Tuple holding the single argument.typedefexpression_traits<expression_slice<Arg>>::ArgTraitstypedefexpression_traits<expression_cast<T, Arg>>::ArgTraitstypedefexpression_padded<Arg>::ArgTraitstypedefexpression_traits<expression_padded<Arg>>::ArgTraitstypedefexpression_reverse<Arg>::ArgTraitstypedefexpression_traits<expression_reverse<Arg>>::ArgTraitstypedefexpression_fixshape<Arg, Shape>::ArgTraitstypedefexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>::ArgTraitstypedefexpression_reshape<Arg, OutDims>::ArgTraitstypedefexpression_traits<expression_reshape<Arg, OutDims>>::ArgTraitstypedefexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::ArgTraits1typedefexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::ArgTraits2functionasin(E1 &&) Creates an expression that returns the arc sine of x.functionunivector_base<T, Class, true>::assign_expr(Input &&) Evaluatesinputand writes the result into the derived vector.functionsmall_buffer<T, Capacity>::assign(const small_buffer<T, Capacity> &) Replaces the contents with a copy ofother.functiontensor<T, NDims>::assign(const T &) Fills the tensor with a scalar value.functiontensor<T, NDims>::assign(const tensor<T, NDims> &) Copies the contents ofsrcinto this tensor. Both tensors must have the same shape.functiontensor<T, NDims>::astype() Returns a tensor with elements converted to typeU.functionatan2deg(E1 &&, E2 &&) Creates an expression that returns the arc tangent of y/x (expressed in degrees).functionatan2(E1 &&, E2 &&) Creates an expression that returns the arc tangent of y/x.functionatandeg(E1 &&) Creates an expression that returns the arc tangent of x, expressed in degrees.functionatan(E1 &&) Creates an expression that returns the arc tangent of x.functioninline_vector<T, N>::at(size_type) Returns a const reference to the element atindexwith bounds checking.functioninline_vector<T, N>::at(size_type) Returns a reference to the element atindexwith bounds checking.conceptaudio_sample Concept matching the C++ types accepted as audio samples.functionaudio_sample_bit_depth(audio_sample_type) Returns the bit depth of the given audio sample type.structaudio_sample_get_type<audio_sample_type::f32>structaudio_sample_get_type<audio_sample_type::f64>structaudio_sample_get_type<audio_sample_type::i16>structaudio_sample_get_type<audio_sample_type::i24>structaudio_sample_get_type<audio_sample_type::i32>classaudio_sample_get_type<type> Maps an audio_sample_type enumerator to its native C++ type.functionaudio_sample_is_float(audio_sample_type) Reports whether the given sample type is floating point.functionaudio_sample_sizeof(audio_sample_type) Returns the storage size in bytes of a sample of the given type.structaudio_sample_traits<f32>structaudio_sample_traits<f64>structaudio_sample_traits<i16>structaudio_sample_traits<i24>structaudio_sample_traits<i32>classaudio_sample_traits<T> Compile-time properties of an audio sample C++ type.enumaudio_sample_type Identifies the numeric format of an audio sample.typedefaudio_sample_type_clist List of all supported audio sample types.variableaxis_params<Axis, N>::axis The axis index.variableaxis_params_v Inline variable form ofaxis_paramsfor use in expressions.classaxis_params<Axis, N> Compile-time axis descriptor used by SIMD tensor accessors.constructoraxis_params<Axis, N>::axis_params<Axis, N>() Default-construct an axis parameter object.
B¶
functionexpression_counter<T, Dims>::back()functioninline_vector<T, N>::back() Returns a reference to the last element.functioninline_vector<T, N>::back() Returns a const reference to the last element.functionsmall_buffer<T, Capacity>::back()functionsmall_buffer<T, Capacity>::back()typedefshape<Dims>::base Underlying static array storing oneindex_tper axis.functioninline_vector<T, N>::begin() Returns an iterator to the first element.functioninline_vector<T, N>::begin() Returns a const iterator to the first element.functiontensor<T, NDims>::begin() Returns an iterator to the first element.functionsmall_buffer<T, Capacity>::begin()functionsmall_buffer<T, Capacity>::begin()functionbegin_pass(const expression_handle<T, NDims> &, shape<NDims>, shape<NDims>) Internal ADL-provided implementation forexpression_handleexpressions.functionbegin_pass(const expression_with_arguments<Args...> &, shape<Dims>, shape<Dims>) Notifies all arguments of anexpression_with_argumentsthat a pass is beginning.functionbegin_pass(const internal_generic::anything &, shape<Dims>, shape<Dims>) No-op pass begin/end hooks for theanythingplaceholder type.functionhistogram_data<Bins, TCount>::below() Returns the count of values that fell below the histogram range.variablegenerator_expj<T, VecWidth>::betavariablegenerator_cossin<T, VecWidth>::betavariablegenerator_sin<T, VecWidth>::betafunctiontensor<T, NDims>::binary_inplace(const tensor<U, dims> &, Fn &&) Applies a binary function element-wise withrhsin place.functiontensor<T, NDims>::binary(const tensor<U, dims> &, Fn &&) Applies a binary function element-wise withrhsand returns the resulting tensor.functionbind_expression(Fn &&, Args &&...) Constructs anexpression_functionfrom a callable and arguments.
C¶
functioncabs(E1 &&) Creates an expression that returns the absolute value (magnitude) of the complex number x.functioncabssqr(E1 &&) Creates an expression that returns the squared absolute value (magnitude squared) of the complex number x.functiontensor<T, NDims>::calc_index(const shape_type &) Computes the linear offset of the element atindicesusing the tensor's strides.enum constantnpy_decode_result::cannot_read Failed to read data or headerfunctioncarg(E1 &&) Creates an expression that returns the phase angle (argument) of the complex number x.functioncartesian(E1 &&) Creates an expression that converts a complex number to cartesian form.functioncast(Arg &&) Creates an expression that converts the values ofargto typeT.functioncast(Arg &&, ctype_t<T>) Creates an expression that converts the values ofargto typeT.functioninline_vector<T, N>::cbegin() Returns a const iterator to the first element.functionsmall_buffer<T, Capacity>::cbegin()functioncbrt(E1 &&) Creates an expression that returns the cube root of x.functioncconj(E1 &&) Creates an expression that returns the complex conjugate of the complex numberx.functionccos(E1 &&) Creates an expression that returns the cosine of the complex value x.functionccosh(E1 &&) Creates an expression that returns the hyperbolic cosine of the complex value x.functionceil(E1 &&) Creates an expression that returns the smallest integer value not less thanx.functioninline_vector<T, N>::cend() Returns a const iterator to one past the last element.functionsmall_buffer<T, Capacity>::cend()functioncexp10(E1 &&) Creates an expression that returns 10 raised to the complex number x.functioncexp2(E1 &&) Creates an expression that returns 2 raised to the complex number x.functioncexp(E1 &&) Creates an expression that returns \(e\) raised to the complex number x.variablecindex Variable template form ofcindex_t.typedefcindex_t Compile-time constant of typeindex_t.functionclamp(E1 &&, E2 &&) Creates an expression that returns the first argument clamped to a range [0, hi]functionclamp(E1 &&, E2 &&, E3 &&) Creates an expression that returns the first argument clamped to a range [lo, hi]functionsmall_buffer<T, Capacity>::clear() Resets the buffer to zero elements, releasing any heap allocation.functionclog10(E1 &&) Creates an expression that returns the common (base-10) logarithm of the complex number x.functionclog2(E1 &&) Creates an expression that returns the binary (base-2) logarithm of the complex number x.functionclog(E1 &&) Creates an expression that returns the natural logarithm of the complex number x.typedefcomplex Complex number type alias.functionexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::concat_shape(const shape<dims> &, const shape<dims> &)functionconcatenate(Arg1 &&, Arg2 &&) Creates an expression that concatenates two input expressions along the given axis.functionconcatenate(Arg1 &&, Arg2 &&, Arg3 &&) Creates an expression that concatenates three input expressions along the given axis.typedeftensor<T, NDims>::const_contiguous_iteratortypedefinline_vector<T, N>::const_iteratortypedeftensor<T, NDims>::const_iteratortypedefinline_vector<T, N>::const_pointertypedeftensor<T, NDims>::const_pointertypedefinline_vector<T, N>::const_referencetypedeftensor_subscript<T, Derived, std::integer_sequence<index_t, Dims...>>::const_referencetypedeftensor<T, NDims>::const_referencefunctiontensor<T, NDims>::contiguous_begin() Returns a contiguous iterator to the first element. The tensor must be contiguous.functiontensor<T, NDims>::contiguous_begin_unsafe() Returns a contiguous iterator to the first element without checking contiguity.functiontensor<T, NDims>::contiguous_end() Returns a contiguous iterator past the last element. The tensor must be contiguous.functiontensor<T, NDims>::contiguous_end_unsafe() Returns a contiguous iterator past the last element without checking contiguity.typedeftensor<T, NDims>::contiguous_iteratorfunctionconvert_endianness(T *, size_t) Reverses the byte order (endianness) of a contiguous array of values in place.functionconvert_sample(const Tin &) Converts a single audio sample between two different native types.functionconvert(Tout *, const Tin *, size_t) Converts audio samples between two compile-time-known formats.functionconvert(Tout *, const void *, audio_sample_type, size_t) Converts audio samples whose input format is selected at runtime.functionconvert(void *, audio_sample_type, const Tin *, size_t) Converts audio samples whose output format is selected at runtime.functiontensor<T, NDims>::copy() Returns a deep copy of the tensor.functiontensor<T, NDims>::copy_from(const tensor<T, NDims> &) Copies the contents ofotherinto this tensor.functioncosdeg(E1 &&) Creates an expression that returns the trigonometric cosine of x (expressed in degrees).functioncos(E1 &&) Creates an expression that returns the trigonometric cosine of x.functioncosh(E1 &&) Creates an expression that returns the hyperbolic cosine of x.functioncoshsinh(E1 &&) Creates an expression that returns the hyperbolic cosine of the even elements of x and the hyperbolic sine of the odd elements of x.functioncossindeg(E1 &&) Creates an expression that returns the trigonometric cosine of the even elements of x and sine of the odd elements. x must be expressed in degrees.functioncossin(E1 &&) Creates an expression that returns the trigonometric cosine of the even elements of x and sine of the odd elements. x must be a vector.functioncoth(E1 &&) Creates an expression that returns the hyperbolic cotangent of x.variableexpression_with_arguments<Args>::count Number of arguments held by the expression.variableexpression_with_arguments<Arg>::count Number of arguments held by the expression (always 1).variableexpression_unpack<E>::countvariableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::counterfunctioncounter(T) Creates a 1-Dexpression_counterwith step 1.functioncounter(T, Arg, Args...) Creates an N-dimensionalexpression_counterwith one step per dimension.functionunivector_base<T, Class, true>::cref() Returns a const reference to the underlying data.functionunivector_base<T, Class, false>::cref() Returns a const reference to the underlying data.functioncsin(E1 &&) Creates an expression that returns the sine of the complex value x.functioncsinh(E1 &&) Creates an expression that returns the hyperbolic sine of the complex number x.functioncsqr(E1 &&) Creates an expression that returns the square of the complex number x.functioncsqrt(E1 &&) Creates an expression that returns the square root of the complex number x.functioncub(E1 &&) Creates an expression that returns the cube ofx.variablecursor<Dims>::current Current multi-dimensional index.classcursor<Dims> Multi-dimensional iteration cursor.
D¶
variableexpression_adjacent<Fn, E>::datafunctioninline_vector<T, N>::data() Returns a pointer to the underlying element storage.functioninline_vector<T, N>::data() Returns a const pointer to the underlying element storage.functiontensor<T, NDims>::data() Returns a pointer to the underlying data.variableexpression_histogram<Bins, E, TCount>::datafunctionsmall_buffer<T, Capacity>::data()functionsmall_buffer<T, Capacity>::data()functiontensor<T, NDims>::deallocate(T *) Deallocates memory previously returned by allocate().functiondeinterleave(Tout **, const Tin *, size_t, size_t) Deinterleaves and converts audio samples from a single buffer.functiondeinterleave(univector2d<Tout, Tag1, Tag2> &, const univector<Tin, Tag3> &) Deinterleaves and converts audio samples into a 2D univector.variablefraction::denominator Denominator of the fraction (always positive after normalization).typedeftensor<T, NDims>::tensor_iterator::difference_typetypedeftensor<T, NDims>::nested_iterator_t::difference_typefunctiondimensions(E1 &&) Creates an expression that adjusts the dimensionality of another expression.functionshape<Dims>::dims() Returns the number of dimensions (compile-time constant).functionshape<0>::dims() Returns the number of dimensions (always 0).functionshape<dynamic_shape>::dims() Returns the number of dimensions at run time.variableexpression_traits<T>::dimsvariableexpression_with_traits<Arg>::dimsvariableexpression_function<Fn, Args>::dims Number of dimensions of the expression.variableexpression_discard<Tin, Dims>::dimsvariableexpression_traits<expression_scalar<T>>::dimsvariableexpression_traits<expression_counter<T, Dims>>::dimsvariableexpression_slice<Arg>::dimsvariableexpression_traits<expression_slice<Arg>>::dimsvariableexpression_traits<expression_cast<T, Arg>>::dimsvariableexpression_traits<expression_lambda<T, Dims, Fn, Rnd>>::dimsvariableexpression_traits<expression_padded<Arg>>::dimsvariableexpression_traits<expression_reverse<Arg>>::dimsvariableexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>::dimsvariableexpression_traits<expression_reshape<Arg, OutDims>>::dimsvariableexpression_traits<expression_linspace<T, truncated>>::dimsvariableexpression_concatenate<Arg1, Arg2, ConcatAxis>::dimsvariableexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::dimsvariableexpression_unpack<E>::dimsvariableexpression_adjacent<Fn, E>::dimsvariableexpression_trace<E>::dimsvariableexpression_dimensions<Dims, E>::dimsvariableexpression_traits<univector<T, Tag>>::dimsvariableexpression_traits<expression_handle<T, Dims>>::dims Number of dimensions.variableexpression_traits<expression_placeholder<T, Dims, Key>>::dims Number of dimensions.variablegenerator<T, VecWidth, Class, Twork>::dimsvariabletensor_subscript<T, Derived, std::integer_sequence<index_t, Dims...>>::dimsvariabletensor<T, NDims>::dims Number of dimensions.variableexpression_traits<tensor<T, Dims>>::dimsvariableexpression_random_uniform<T, Dims, Reference>::dimsvariableexpression_random_range<T, Dims, Reference>::dimsvariableexpression_random_normal<T, Dims, Reference>::dimsvariableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::dimstypedefdimset Fixed-size bitmask indexed by tensor axis.functionshape<0>::dot(const shape<0> &) Dot product with another scalar shape; the empty product is 0.functionshape<Dims>::dot(const shape<dims> &) Dot product of the two shapes (element-wise multiply and sum).functiondotproduct(E1 &&, E2 &&) Returns the dot product of two vectors.variabledynamic_shape Sentinel rank value indicating a run-time-determined rank.
E¶
functioninline_vector<T, N>::empty() Returnstrueif the vector holds no elements.functiontensor<T, NDims>::empty() Returnstrueif the tensor has no elements.functionsmall_buffer<T, Capacity>::empty()functioninline_vector<T, N>::end() Returns an iterator to one past the last element.functioninline_vector<T, N>::end() Returns a const iterator to one past the last element.functiontensor<T, NDims>::end() Returns the end sentinel iterator.functionsmall_buffer<T, Capacity>::end()functionsmall_buffer<T, Capacity>::end()functionend_pass(const expression_handle<T, NDims> &, shape<NDims>, shape<NDims>) Internal ADL-provided implementation forexpression_handleexpressions.functionend_pass(const expression_with_arguments<Args...> &, shape<Dims>, shape<Dims>) Notifies all arguments of anexpression_with_argumentsthat a pass has ended.functionend_pass(const internal_generic::anything &, shape<Dims>, shape<Dims>)variableexpression_linspace<T, truncated>::endpointfunctioneq(E1 &&, E2 &&) Creates an expression that returns whethere1is equal toe2.functionexp10(E1 &&) Creates an expression that returns 10 raised to the given power x.functionexp2(E1 &&) Creates an expression that returns 2 raised to the given power x.functionexp_fmadd(E1 &&, E2 &&, E3 &&) Creates an expression that returns exp(x * m + a).classexpand_cvals<T, Tpl, cvals_t<T, vals...>> Specialization ofexpand_cvalsthat instantiatesTplwith the pack values.classexpand_cvals<T, Tpl, Pack> Expands acvals_tpack into a template expecting non-type parameters.functionexp(E1 &&) Creates an expression that returns \(e\) raised to the given power x.variableexpression_traits<T>::explicit_operandvariableexpression_traits_defaults::explicit_operandvariableexpression_with_traits<Arg>::explicit_operandconceptexpr_element Concept satisfied by scalar vector element types.classexpression_adjacent<Fn, E> Expression that applies a binary function to each value and its previous value.constructorexpression_adjacent<Fn, E>::expression_adjacent<Fn, E>(Fn &&, E &&)conceptexpression_argument Concept satisfied by input expressions that must appear as an explicit operand (i.e. not implicitly convertible from a scalar argument).conceptexpression_arguments Concept satisfied when allEare input expressions and at least one of them is an explicit operand.classexpression_cast<T, Arg> Expression that converts the values of the wrapped expression to typeT.classexpression_concatenate<Arg1, Arg2, ConcatAxis> Expression that joins two expressions along a single axis.constructorexpression_concatenate<Arg1, Arg2, ConcatAxis>::expression_concatenate<Arg1, Arg2, ConcatAxis>(Arg1 &&, Arg2 &&)classexpression_counter<T, Dims> Expression that produces a sequence of valuesstart, start + step, start + 2*step, ...for one or more dimensions.classexpression_dimensions<Dims, E> Expression that adjusts the dimensionality of another expression.variableexpression_dims Inline variable holding the number of dimensions of an expression.classexpression_discard<Tin, Dims> Output expression that discards all written values.classexpression_filter<T> Filter adapter that wraps an expression containing a placeholder.constructorexpression_filter<T>::expression_filter<T>() Default-constructing constructor for subclasses.constructorexpression_filter<T>::expression_filter<T>(expression_handle<T, 1>) Constructs the filter from a placeholder expression handle.classexpression_fixshape<Arg, Shape> Expression that overrides the shape of another expression with a compile-time shape.constructorexpression_fixshape<Arg, Shape>::expression_fixshape<Arg, Shape>(Arg &&)deduction guideexpression_function Deduction guide for constructing anexpression_functionfrom an argument holder and a callable.deduction guideexpression_function Deduction guide for constructing anexpression_functionfrom an rvalue argument holder and a callable.deduction guideexpression_function Deduction guide for constructing anexpression_functionfrom an lvalue argument holder and a callable.classexpression_function<Fn, Args> Expression that applies a callable to its arguments.constructorexpression_function<Fn, Args>::expression_function<Fn, Args...>(arg<Args &&>...) Constructs the expression from a pack of arguments with a default-constructed callable.constructorexpression_function<Fn, Args>::expression_function<Fn, Args...>(expression_with_arguments<Args...>, Fn &&) Constructs the expression from an argument holder and a callable.constructorexpression_function<Fn, Args>::expression_function<Fn, Args...>(Fn &&, arg<Args &&>...) Constructs the expression from a callable and a pack of arguments.classexpression_handle<T, Dims> Opaque type-erased handle to an expression (forward declaration).constructorexpression_handle<T, Dims>::expression_handle<T, Dims>() Construct an empty (invalid) handle.constructorexpression_handle<T, Dims>::expression_handle<T, Dims>(const void *, const expression_vtable<T, Dims> *, std::shared_ptr<expression_resource>) Construct a handle referencinginstancewith vtablevtable.classexpression_histogram<Bins, E, TCount> Expression that computes a histogram as data flows through it.constructorexpression_histogram<Bins, E, TCount>::expression_histogram<Bins, E, TCount>(E &&, size_t) Constructs a runtime-sized histogram expression.classexpression_lambda<T, Dims, Fn, Rnd> Expression backed by a user-provided callable.classexpression_linspace<T, truncated> Expression that produces evenly spaced values fromstarttostop.constructorexpression_linspace<T, truncated>::expression_linspace<T, truncated>(symmetric_linspace_t, T, size_t, bool)constructorexpression_linspace<T, truncated>::expression_linspace<T, truncated>(T, T, size_t, bool)typedefexpression_make_function Alias that produces anexpression_functionwith decayed argument types.typedefexpression_pack Type alias for the expression that packs several expressions into a single vector-valued expression.classexpression_padded<Arg> Expression that extends another expression with a constant fill value.constructorexpression_padded<Arg>::expression_padded<Arg>(Arg &&, typename ArgTraits::value_type)classexpression_placeholder<T, Dims, Key> A placeholder expression that can be bound to a concrete expression at runtime.constructorexpression_placeholder<T, Dims, Key>::expression_placeholder<T, Dims, Key>()variableexpression_random_access Inline variable indicating whether an expression supports random access.classexpression_random_normal<T, Dims, Reference> Expression that produces normally distributed (Gaussian) random values.classexpression_random_range<T, Dims, Reference> Expression that produces uniformly distributed random values in [min, max).classexpression_random_uniform<T, Dims, Reference> Expression that produces uniformly distributed random values in [0, 1).classexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn> Expression that reduces an input expression to a single value.constructorexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::expression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>(ReduceFn, TransformFn, FinalFn) Constructs the reducer.classexpression_reshape<Arg, OutDims> Expression that exposes the same data as another expression with a different shape.constructorexpression_reshape<Arg, OutDims>::expression_reshape<Arg, OutDims>(Arg &&, const shape<OutDims> &)structexpression_resource Base class for owning the storage of a type-erased expression.destructorexpression_resource::~expression_resource() Returns a pointer to the owned expression instance, ornullptr.classexpression_resource_impl<E>expression_resourcethat owns an expression of typeEby value.destructorexpression_resource_impl<E>::~expression_resource_impl<E>()constructorexpression_resource_impl<E>::expression_resource_impl<E>(E &&) Take ownership ofeby move.classexpression_reverse<Arg> Expression that exposes another expression with its trailing dimension reversed.constructorexpression_reverse<Arg>::expression_reverse<Arg>(Arg &&)classexpression_scalar<T> Expression that wraps a single scalar value of typeT.classexpression_slice<Arg> Expression that exposes a sub-region of another expression.constructorexpression_slice<Arg>::expression_slice<Arg>(Arg &&, shape<dims>, shape<dims>)classexpression_trace<E> Expression that prints the requested values to the console for debugging purposes.structexpression_traits_defaults Base struct providing default values for expression traits.classexpression_traits<const T> Pass-through specialization that forwards traits for const-qualified expression types.classexpression_traits<const T &> Pass-through specialization that forwards traits for const lvalue reference expression types.classexpression_traits<const T &&> Pass-through specialization that forwards traits for const rvalue reference expression types.classexpression_traits<expression_cast<T, Arg>>classexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>classexpression_traits<expression_counter<T, Dims>>classexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>classexpression_traits<expression_handle<T, Dims>>expression_traitsspecialization forexpression_handle.classexpression_traits<expression_lambda<T, Dims, Fn, Rnd>>classexpression_traits<expression_linspace<T, truncated>>classexpression_traits<expression_padded<Arg>>classexpression_traits<expression_placeholder<T, Dims, Key>>expression_traitsspecialization forexpression_placeholder.classexpression_traits<expression_reshape<Arg, OutDims>>classexpression_traits<expression_reverse<Arg>>classexpression_traits<expression_scalar<T>>classexpression_traits<expression_slice<Arg>>classexpression_traits<T> Primary traits template for expressions.classexpression_traits<T &> Pass-through specialization that forwards traits for lvalue reference expression types.classexpression_traits<T &&> Pass-through specialization that forwards traits for rvalue reference expression types.classexpression_traits<T> Specialization ofexpression_traitsfor scalar vector element types.classexpression_traits<tensor<T, Dims>> Expression traits for tensor, enabling its use as an expression argument.classexpression_traits<univector<T, Tag>> Expression traits forunivector, allowing it to participate in KFR expression evaluation.classexpression_unpack<E> Expression that writes a single vector-valued input into several output expressions.constructorexpression_unpack<E>::expression_unpack<E...>(E &&...)typedefexpression_value_type Helper alias that extracts the value type of an expression.classexpression_vtable<T, Dims> Virtual table providing type-erased access to an expression of value typeTand dimensionalityDims.functionexpression_vtable<T, Dims>::expression_vtable<T, Dims>(ctype_t<Expression>) Build the vtable for concrete expression typeExpression.deduction guideexpression_with_arguments Deduction guide forexpression_with_arguments.classexpression_with_arguments<Arg> Single-argument specialization ofexpression_with_arguments.constructorexpression_with_arguments<Arg>::expression_with_arguments<Arg>(Arg &&) Constructs the expression from a single argument.classexpression_with_arguments<Args> Holds the arguments of an expression along with their dimension masks.constructorexpression_with_arguments<Args>::expression_with_arguments<Args...>(arg<Args &&>...) Constructs the expression from a pack of arguments.classexpression_with_traits<Arg> Wraps a single-argument expression and forwards its traits.functionshape<Dims>::extend(index_t) Promote the shape to a higher rank by prepending axes.functionshape<0>::extend(index_t) Promote the scalar shape to a higher rank by prepending axes of sizevalue.
F¶
enum constantaudio_sample_type::f32enum constantaudio_sample_type::f64functionfactorial_approx(E1 &&) Creates an expression that returns the approximate factorial of x.functionfastcosdeg(E1 &&) Creates an expression that returns an approximation of the trigonometric cosine of x (expressed in degrees).functionfastcos(E1 &&) Creates an expression that returns an approximation of the trigonometric cosine of x.functionfastsindeg(E1 &&) Creates an expression that returns an approximation of the trigonometric sine of x (expressed in degrees).functionfastsin(E1 &&) Creates an expression that returns an approximation of the trigonometric sine of x.variableexpression_padded<Arg>::fill_valuevariableexpression_filter<T>::filter_expr The wrapped placeholder expression.classfilter<T> Abstract base class for single-argument filters, mainly intended for DSP processing.destructorfilter<T>::~filter<T>() Destructor.functionfinal_mean(T, size_t) Finalizer formean.functionfinal_rootmean(T, size_t) Finalizer forrms.variableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::finalfnfunctiontensor<T, NDims>::finalizer() Returns the memory finalizer holding the data alive.functionexpression_with_arguments<Args>::first() Returns a reference to the first argument.functionexpression_with_arguments<Args>::first() Returns a const reference to the first argument.functionexpression_with_arguments<Arg>::first() Returns a reference to the stored argument.functionexpression_with_arguments<Arg>::first() Returns a const reference to the stored argument.typedefexpression_with_arguments<Args>::first_arg Alias for the type of the first argument.typedefexpression_with_arguments<Arg>::first_arg Alias for the argument type.typedefexpression_with_arguments<Args>::first_arg_traits Traits of the first argument.typedefexpression_with_arguments<Arg>::first_arg_traits Traits of the argument.typedefexpression_with_traits<Arg>::first_arg_traitstypedefexpression_unpack<E>::first_arg_traitstypedefexpression_dimensions<Dims, E>::first_arg_traitstypedefexpression_unpack<E>::first_value_typevariablefixed_shape Convenience variable template for instantiating afixed_shape_t.classfixed_shape_t<Values> Type-level storage for a fixedshapebuilt from a list of constants.constructorfixed_shape_t<Values>::fixed_shape_t<Values...>()functionfixshape(Arg &&, const fixed_shape_t<ShapeValues...> &) Creates an expression that overrides the shape ofargwith a compile-time shape.functiontensor<T, NDims>::tensor_iterator::flat_index() Returns the flat (linear) index of the current element.functiontensor<T, NDims>::flatten() Returns a 1D tensor view of the data.functiontensor<T, NDims>::flatten_may_copy(bool) Returns a 1D tensor view of the data, copying if necessary.functionfloor(E1 &&) Creates an expression that returns the largest integer value not greater thanx.variableexpression_function<Fn, Args>::fn Callable applied to the arguments.variableexpression_lambda<T, Dims, Fn, Rnd>::fnvariableexpression_adjacent<Fn, E>::fnvariableexpression_vtable<T, Dims>::fn_begin_pass begin_pass callback.variableexpression_vtable<T, Dims>::fn_end_pass end_pass callback.variableexpression_vtable<T, Dims>::fn_get_elements get_elements callbacks per axis/size.variableexpression_vtable<T, Dims>::fn_reset reset callback.variableexpression_vtable<T, Dims>::fn_set_elements set_elements callbacks per axis/size.variableexpression_vtable<T, Dims>::fn_shapeof Shape query callback.variableexpression_vtable<T, Dims>::fn_substitute Placeholder substitution callback.functionexpression_with_arguments<Args>::fold_idx(Fn &&) Folds a callable over compile-time indices of the arguments.functionexpression_with_arguments<Arg>::fold_idx(Fn &&) Folds a callable over the compile-time index of the argument.functionexpression_with_arguments<Args>::fold(Fn &&) Folds a callable over the stored arguments, passing them by value.functionexpression_with_arguments<Arg>::fold(Fn &&) Folds a callable over the stored argument.functionfract(E1 &&) Creates an expression that returns the fractional part ofx.structfraction Exact rational number represented as a numerator/denominator pair.constructorfraction::fraction(i64, i64) Construct a fraction from a numerator and denominator.functionshape<Dims>::from_flat(size_t) Convert a flat offset to multi-dimensional indices.functionshape<0>::from_flat(size_t) Inverse ofto_flat: returns the empty shape.functionshape<Dims>::from_std_array(const std::array<TI, Dims> &) Build ashapefrom astd::array.functionexpression_counter<T, Dims>::front()functioninline_vector<T, N>::front() Returns a reference to the first element.functioninline_vector<T, N>::front() Returns a const reference to the first element.functionsmall_buffer<T, Capacity>::front()functionsmall_buffer<T, Capacity>::front()typedefexpression_vtable<T, Dims>::func_get Signature of a get_elements callback: readNsamples intodest.typedefexpression_vtable<T, Dims>::func_pass Signature of the begin_pass/end_pass callbacks.typedefexpression_vtable<T, Dims>::func_reset Signature of the reset callback.typedefexpression_vtable<T, Dims>::func_set Signature of a set_elements callback: writeNsamples fromsrc.typedefexpression_vtable<T, Dims>::func_shapeof Signature of the shape query callback.typedefexpression_vtable<T, Dims>::func_substitute Signature of the placeholder substitution callback.
G¶
functiongamma(E1 &&) Creates an expression that returns the approximate gamma function of x.functionshape<Dims>::ge(const shape<dims> &) Element-wise greater-than-or-equal comparison.functionge(E1 &&, E2 &&) Creates an expression that returns whethere1is greater than or equal toe2.functiongen_cossin(T1, T2) Creates an expression that generates values using the following formula:\\[ x_i= \begin{cases} \cos(start + i \cdot step), & \text{if } i \text{ is even}\\ \sin(start + i \cdot step), & \text{otherwise} \end{cases} \\]functiongen_exp2(T1, T2) Creates an expression that generates values using the following formula:\\[ x_i = 2^{ start + i \cdot step } \\]functiongen_expj(T1, T2) Creates an expression that generates values using the following formula:\\[ x_i = e^{ j ( start + i \cdot step ) } \\]functiongen_exp(T1, T2) Creates an expression that generates values using the following formula:\\[ x_i = e^{ start + i \cdot step } \\]functiongen_linear(T1, T2) Creates an expression that generates values starting fromstartand usingstepas the increment between successive numbers.functiongen_random_normal(const random_state &, T, T) Creates an expression that produces normally distributed values using a copied state.functiongen_random_normal(std::reference_wrapper<random_state>, T, T) Creates an expression that produces normally distributed values using a referenced state.functiongen_random_normal(T, T) Creates an expression that produces normally distributed values seeded from the cycle counter.functiongen_random_range(const random_state &, T, T) Creates an expression that produces random values in [min, max) using a copied state.functiongen_random_range(std::reference_wrapper<random_state>, T, T) Creates an expression that produces random values in [min, max) using a referenced state.functiongen_random_range(T, T) Creates an expression that produces random values in [min, max) seeded from the cycle counter.functiongen_random_uniform() Creates an expression that produces uniform pseudorandom values in [0, 1) seeded from the cycle counter.functiongen_random_uniform(const random_state &) Creates an expression that produces uniform pseudorandom values in [0, 1) using a copied state.functiongen_random_uniform(std::reference_wrapper<random_state>) Creates an expression that produces uniform pseudorandom values in [0, 1) using a referenced state.functiongen_sin(T1, T2) Creates an expression that generates values using the following formula:\\[ x_i = \sin( start + i \cdot step ) \\]functiongenerator<T, VecWidth, Class, Twork>::generate() Produces a vector ofNvalues from the generator and advances its internal state.classgenerator_cossin<T, VecWidth> Generator that produces interleaved cosine and sine values\\[ x_i = \begin{cases} \cos(start + i \cdot step), & \text{if } i \text{ is even}\\ \sin(start + i \cdot step), & \text{otherwise} \end{cases} \\]constructorgenerator_cossin<T, VecWidth>::generator_cossin<T, VecWidth>(T, T) Constructs an interleaved cosine/sine generator.classgenerator_exp2<T, VecWidth> Generator that produces a base-2 exponential sequence \(x_i = 2^{ start + i \cdot step }\) .constructorgenerator_exp2<T, VecWidth>::generator_exp2<T, VecWidth>(T, T) Constructs a base-2 exponential generator.classgenerator_expj<T, VecWidth> Generator that produces a complex exponential \(x_i = e^{ j ( start + i \cdot step ) }\) .constructorgenerator_expj<T, VecWidth>::generator_expj<T, VecWidth>(ST, ST) Constructs a complex exponential generator.classgenerator_exp<T, VecWidth> Generator that produces an exponential sequence \(x_i = e^{ start + i \cdot step }\) .constructorgenerator_exp<T, VecWidth>::generator_exp<T, VecWidth>(T, T) Constructs an exponential generator.classgenerator_linear<T, VecWidth> Generator that produces an arithmetic progression \(x_i = start + i \cdot step\) .constructorgenerator_linear<T, VecWidth>::generator_linear<T, VecWidth>(T, T) Constructs a linear generator.classgenerator_sin<T, VecWidth> Generator that produces sine values \(x_i = \sin( start + i \cdot step )\) .constructorgenerator_sin<T, VecWidth>::generator_sin<T, VecWidth>(T, T) Constructs a sine generator.classgenerator<T, VecWidth, Class, Twork> CRTP base for stateful streaming generators that produce fixed-width vectors of values on demand.functionfixed_shape_t<Values>::get()functionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::get() Returns the reduced value.functionget_element(E &&, shape<Dims>) Reads a single element from an expression at the given index.functionexpression_adjacent<Fn, E>::get_elements(const expression_adjacent<Fn, E> &, shape<dims>, axis_params<VecAxis, N>)functionget_elements(const expression_cast<T, Arg> &, const shape<NDims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_concatenate<Arg1, Arg2, ConcatAxis> &, const shape<NDims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_counter<T, 1> &, const shape<1> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_counter<T, dims> &, const shape<dims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionexpression_dimensions<Dims, E>::get_elements(const expression_dimensions<Dims, E> &, shape<dims>, axis_params<VecAxis, N>)functionget_elements(const expression_fixshape<Arg, Shape> &, const shape<Traits::dims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_function<Fn, Args...> &, const shape<Dims> &, const axis_params<Axis, N> &) Reads a vector of elements from anexpression_function.functionget_elements(const expression_handle<T, NDims> &, const shape<NDims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forexpression_handleexpressions.functionexpression_histogram<Bins, E, TCount>::get_elements(const expression_histogram<Bins, E, TCount> &, const shape<expression_with_traits<E>::dims> &, const axis_params<Axis, N> &)functionget_elements(const expression_lambda<T, Dims, Fn, Rnd> &, const shape<Dims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_linspace<T, truncated> &, const shape<1> &, const axis_params<0, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_padded<Arg> &, const shape<Traits::dims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_placeholder<T, Dims, Key> &, shape<Dims>, axis_params<VecAxis, N>) Internal ADL-provided implementation forexpression_placeholderexpressions.functionexpression_random_normal<T, Dims, Reference>::get_elements(const expression_random_normal<T, Dims, Reference> &, shape<Dims>, axis_params<VecAxis, N>) Internal ADL-provided implementation forfunctionexpression_random_range<T, Dims, Reference>::get_elements(const expression_random_range<T, Dims, Reference> &, shape<Dims>, axis_params<VecAxis, N>) Internal ADL-provided implementation forfunctionexpression_random_uniform<T, Dims, Reference>::get_elements(const expression_random_uniform<T, Dims, Reference> &, shape<Dims>, axis_params<VecAxis, N>) Internal ADL-provided implementation forfunctionget_elements(const expression_reshape<Arg, outdims> &, const shape<Traits::dims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_reverse<Arg> &, const shape<Traits::dims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_scalar<T> &, const shape<0> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionget_elements(const expression_slice<Arg> &, const shape<NDims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation forfunctionexpression_trace<E>::get_elements(const expression_trace<E> &, shape<dims>, axis_params<VecAxis, N>)functiongenerator<T, VecWidth, Class, Twork>::get_elements(const generator<T, VecWidth, Class, Twork> &, const shape<1> &, const axis_params<0, N> &) Internal ADL-provided implementation forgeneratorexpressions. Returns a vector ofNgenerated values at the givenindex.functionget_elements(const tensor<T, NDims> &, const shape<NDims> &, const axis_params<Axis, N> &) Internal ADL-provided implementation for tensor expressions. ReadsNelements alongAxisstarting atindexfromself.functionget_elements(const univector<T, Tag> &, const shape<1> &, const axis_params<0, N> &) Internal ADL-provided implementation forget_elementsexpressions.functionget_elements(T &&, const shape<0> &, const axis_params<Axis, N> &) Returns a scalar element broadcast to a vector.functiontensor<T, NDims>::get_range(index_t &, index_t &, index_t &, signed_index_t, const tensor_range &) Computes the range for a tensor_range specifier. Handles optional start/stop/step, negative indices, and clamping to the axis size.functiontensor<T, NDims>::get_range(index_t &, index_t &, index_t &, signed_index_t, index_t) Computes the range for a single integer index.functiontensor<T, NDims>::get_ranges(shape_type &, shape_type &, shape_type &, cvals_t<index_t, Num...>, const std::tuple<Index...> &) Computes the start, shape, and step for each axis given a set of indices and ranges. Axes without a corresponding index cover the full extent of the axis.functionget_shape() Returns the static shape of an expression type.functionexpression_traits<T>::get_shape()functionexpression_with_traits<Arg>::get_shape()functionexpression_function<Fn, Args>::get_shape() Returns the static shape of the expression type.functionexpression_discard<Tin, Dims>::get_shape()functionexpression_traits<expression_scalar<T>>::get_shape()functionexpression_traits<expression_counter<T, Dims>>::get_shape()functionexpression_traits<expression_slice<Arg>>::get_shape()functionexpression_traits<expression_cast<T, Arg>>::get_shape()functionexpression_traits<expression_lambda<T, Dims, Fn, Rnd>>::get_shape()functionexpression_traits<expression_padded<Arg>>::get_shape()functionexpression_traits<expression_reverse<Arg>>::get_shape()functionexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>::get_shape()functionexpression_traits<expression_reshape<Arg, OutDims>>::get_shape()functionexpression_traits<expression_linspace<T, truncated>>::get_shape()functionexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::get_shape()functionexpression_unpack<E>::get_shape()functionexpression_dimensions<Dims, E>::get_shape()functionexpression_traits<univector<T, Tag>>::get_shape() Returns the static shape of the univector type. For fixed-size vectors this is the compile-time size; otherwise it isundefined_size.functionexpression_traits<expression_handle<T, Dims>>::get_shape() Static shape query: undefined for an unbound handle.functionexpression_traits<expression_placeholder<T, Dims, Key>>::get_shape() Static shape query: undefined for an unbound placeholder.functiongenerator<T, VecWidth, Class, Twork>::get_shape()functionexpression_traits<tensor<T, Dims>>::get_shape() Returns the static shape of the expression, with undefined extents.functionexpression_random_uniform<T, Dims, Reference>::get_shape()functionexpression_random_range<T, Dims, Reference>::get_shape()functionexpression_random_normal<T, Dims, Reference>::get_shape()functionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::get_shape()functiongenerator<T, VecWidth, Class, Twork>::get_shape(const Class &)functionexpression_traits<expression_cast<T, Arg>>::get_shape(const expression_cast<T, Arg> &)functionexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::get_shape(const expression_concatenate<Arg1, Arg2, ConcatAxis> &)functionexpression_traits<expression_counter<T, Dims>>::get_shape(const expression_counter<T, Dims> &)functionexpression_dimensions<Dims, E>::get_shape(const expression_dimensions<Dims, E> &)functionexpression_discard<Tin, Dims>::get_shape(const expression_discard<Tin, Dims> &)functionexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>::get_shape(const expression_fixshape<Arg, fixed_shape_t<ShapeValues...>> &)functionexpression_function<Fn, Args>::get_shape(const expression_function<Fn, Args...> &) Returns the shape of the expression instance.functionexpression_traits<expression_handle<T, Dims>>::get_shape(const expression_handle<T, Dims> &) Query the shape of the referenced expression via its vtable.functionexpression_traits<expression_lambda<T, Dims, Fn, Rnd>>::get_shape(const expression_lambda<T, Dims, Fn, Rnd> &)functionexpression_traits<expression_linspace<T, truncated>>::get_shape(const expression_linspace<T, truncated> &)functionexpression_traits<expression_padded<Arg>>::get_shape(const expression_padded<Arg> &)functionexpression_traits<expression_placeholder<T, Dims, Key>>::get_shape(const expression_placeholder<T, Dims, Key> &) Shape of the bound expression, orinfinite_sizewhen unbound.functionexpression_random_normal<T, Dims, Reference>::get_shape(const expression_random_normal<T, Dims, Reference> &)functionexpression_random_range<T, Dims, Reference>::get_shape(const expression_random_range<T, Dims, Reference> &)functionexpression_random_uniform<T, Dims, Reference>::get_shape(const expression_random_uniform<T, Dims, Reference> &)functionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::get_shape(const expression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn> &)functionexpression_traits<expression_reshape<Arg, OutDims>>::get_shape(const expression_reshape<Arg, OutDims> &)functionexpression_traits<expression_reverse<Arg>>::get_shape(const expression_reverse<Arg> &)functionexpression_traits<expression_scalar<T>>::get_shape(const expression_scalar<T> &)functionexpression_traits<expression_slice<Arg>>::get_shape(const expression_slice<Arg> &)functionexpression_unpack<E>::get_shape(const expression_unpack<E...> &)functionexpression_with_traits<Arg>::get_shape(const expression_with_traits<Arg> &)functionexpression_traits<T>::get_shape(const T &)functionexpression_traits<tensor<T, Dims>>::get_shape(const tensor<T, Dims> &) Returns the shape ofself.functionexpression_traits<univector<T, Tag>>::get_shape(const univector<T, Tag> &) Returns the runtime shape ofu.functionget_shape(T &&) Returns the shape of an expression instance.functiongenerator_sin<T, VecWidth>::get_value() Returns the sine components of the current interleaved cos/sin state.functionrepresentation<fmt_t<kfr::tensor<T, dims>, t, width, prec>>::get(const fmt_t<kfr::tensor<T, dims>, t, width, prec> &) Returns the formatted string representation ofvalue.functionrepresentation<fmt_t<kfr::univector<T, Tag>, t, width, prec>>::get(const fmt_t<kfr::univector<T, Tag>, t, width, prec> &) Returns a string representation ofvaluewith per-element formatting.functionrepresentation<kfr::fraction>::get(const kfr::fraction &)functionrepresentation<kfr::shape<dims>>::get(const kfr::shape<dims> &) Returns the string representation ofvalue.functionrepresentation<kfr::tensor<T, dims>>::get(const kfr::tensor<T, dims> &) Returns the string representation ofvalue.functionrepresentation<kfr::univector<T, Tag>>::get(const kfr::univector<T, Tag> &) Returns a string representation ofvalue.functionrepresentation<kfr::npy_decode_result>::get(kfr::npy_decode_result)functionexpression_with_arguments<Args>::getmask(csize_t<idx>) Returns the dimension mask for the argument at positionidx.functionexpression_with_arguments<Arg>::getmask(csize_t<idx>) Returns the sentinel dimension mask for the single argument.functionunivector<T, Size>::get(size_t, value_type) Returns the element atindex,orfallback_valueifindexis out of range.functionunivector<T, tag_array_ref>::get(size_t, value_type) Returns the element atindex,orfallback_valueifindexis out of range.functionunivector<T, tag_dynamic_vector>::get(size_t, value_type) Returns the element atindex,orfallback_valueifindexis out of range.functiongt(E1 &&, E2 &&) Creates an expression that returns whethere1is greater thane2.
H¶
variableexpression_placeholder<T, Dims, Key>::handle Handle to the bound expression, or empty if unbound.functiontensor<T, NDims>::has_contiguous_strides(const shape_type &, const shape_type &) Returnstrueifstridesdescribe a packed layout in some axis order.concepthas_expression_traits Concept that is satisfied whenexpression_traits<T>is well-formed.functionshape<Dims>::has_infinity() Detect theinfinite_sizesentinel among the axes.functionshape<0>::has_infinity() A scalar shape has no axes, so it can never containinfinite_size.variabletensor<T, NDims>::has_tensor_range Returnstrueif any ofIndex...is a tensor_range.classhistogram_data<Bins, TCount> Holds the bin counts for a histogram.constructorhistogram_data<Bins, TCount>::histogram_data<Bins, TCount>(size_t) Constructs a runtime-sized histogram.functionhistogram_expression(E &&) Creates an expression that computes a histogram as data flows through it.functionhistogram_expression(E &&, size_t) Creates an expression that computes a histogram as data flows through it.functionhistogram(E &&) Returns the histogram of the expression data.functionhistogram(E &&, size_t) Returns the histogram of the expression data.functionhorner_even(E &&...) Creates an expression that evaluates a polynomial with even powers using Horner's method.functionhorner_odd(E &&...) Creates an expression that evaluates a polynomial with odd powers using Horner's method.functionhorner(E &&...) Creates an expression that evaluates a polynomial using Horner's method.
I¶
enum constantaudio_sample_type::i16enum constantaudio_sample_type::i24enum constantaudio_sample_type::i32functioniceil(E1 &&) Creates an expression that returns the integer equivalent of ceil(x).functionifloor(E1 &&) Creates an expression that returns the integer equivalent of floor(x).functionimag(E1 &&) Creates an expression that returns the imaginary part of the complex valuex.variableexpression_dimensions<Dims, E>::in_dimsvariableexpression_reshape<Arg, OutDims>::in_shapevariabletensor<T, NDims>::nested_iterator_t::indextypedefindex_t Unsigned integer type used for tensor indices and axis sizes.variabletensor<T, NDims>::tensor_iterator::indicesfunctionindices(const shape<Dims> &, axis_params<VecAxis, N>) Computes the vector of indices along an axis for a vectorized read.variableinfinite_size Sentinel value denoting a dimension of unbounded/unknown size.functiongenerator_expj<T, VecWidth>::init_cossin(ST, ST) Initializes a vector of complex exponentials with angular frequencywand starting phasephase.functiongenerator_cossin<T, VecWidth>::init_cossin(T, T) Initializes a vector of interleaved cosine/sine pairs with angular frequencywand starting phasephase.classinline_vector<T, N> A sequence container with fixed-capacity inline storage.constructorinline_vector<T, N>::inline_vector<T, N>() Creates an empty vector.constructorinline_vector<T, N>::inline_vector<T, N>(const inline_vector<T, N> &)constructorinline_vector<T, N>::inline_vector<T, N>(inline_vector<T, N> &&)functioninline_vector<T, N>::inline_vector<T, N>(Iter, Iter) Creates a vector from the range[first, last).constructorinline_vector<T, N>::inline_vector<T, N>(size_type) Creates a vector holdinginitial_sizevalue-initialized elements.constructorinline_vector<T, N>::inline_vector<T, N>(size_type, T) Creates a vector holdinginitial_sizecopies ofinitial_value.constructorinline_vector<T, N>::inline_vector<T, N>(std::initializer_list<T>) Creates a vector from a brace-enclosed initializer list.conceptinput_expression Concept satisfied by expressions that can be read from.conceptinput_output_expression Concept satisfied by expressions that are both readable and writable.variableexpression_padded<Arg>::input_shapevariableexpression_reverse<Arg>::input_shapefunctionexpression_resource::instance()functionexpression_resource_impl<E>::instance()variableexpression_handle<T, Dims>::instance Pointer to the concrete expression instance.functioninterleave(const univector2d<Tin, Tag1, Tag2> &) Interleaves audio samples of a 2D univector into a new buffer.functioninterleave(E1 &&, E2 &&) Creates an expression that interleaves the lanes ofxandy.functioninterleave(Tout *, const Tin **, size_t, size_t) Interleaves and converts audio samples into a single buffer.functioninterleave(univector<Tout, Tag1> &, const univector2d<Tin, Tag2, Tag3> &) Interleaves and converts audio samples from a 2D univector.enum constantnpy_decode_result::invalid_header Malformed headerenum constantnpy_decode_result::invalid_shape Shape mismatchenum constantnpy_decode_result::invalid_type Type mismatchvariableexpression_linspace<T, truncated>::invsizefunctionipow(E1 &&, E2 &&) Creates an expression that returnsxraised to the integer powerb.functioniround(E1 &&) Creates an expression that returns the integer equivalent of round(x).variableunivector<T, Size>::is_aligned True: aligned to the maximum vector alignment.variableunivector<T, tag_array_ref>::is_aligned False: alignment of the referenced data is unknown.variableunivector<T, tag_dynamic_vector>::is_aligned True: aligned to the maximum vector alignment.variableis_arg Inline variable that istruewhenT(after decay) is a numeric or boolean type and can therefore be passed by value as an argument.variableunivector<T, Size>::is_array True: backed bystd::array.variableunivector<T, tag_array_ref>::is_array False: not backed bystd::array.variableunivector<T, tag_dynamic_vector>::is_array False: not backed bystd::array.variableunivector<T, Size>::is_array_ref False: owns its data.variableunivector<T, tag_array_ref>::is_array_ref True: holds a reference to external data.variableunivector<T, tag_dynamic_vector>::is_array_ref False: owns its data.functiontensor<T, NDims>::is_contiguous() Returnstrueif the tensor data is stored contiguously.functiontensor<T, NDims>::tensor_iterator::is_end() Returnstrueif this iterator is the end sentinel.variableis_expr_element Inline variable that istruewhenTis a non-cv-qualified scalar vector element type.variableis_infinite Inline variable that istruewhen the shape ofEis infinite.variableis_input_expression Inline variable that istruewhenEsatisfiesinput_expression.variableis_input_output_expression Inline variable that istruewhenEsatisfiesinput_output_expression.functiontensor<T, NDims>::is_last_contiguous() Returnstrueif the last axis has stride 1.variableis_output_expression Inline variable that istruewhenEsatisfiesoutput_expression.variableunivector<T, Size>::is_vector False: not dynamically sized.variableunivector<T, tag_array_ref>::is_vector False: not dynamically sized.variableunivector<T, tag_dynamic_vector>::is_vector True: dynamically sized.functiontensor<T, NDims>::iterate(Fn &&) Callsfnfor each element together with its multi-dimensional index.typedefinline_vector<T, N>::iteratortypedeftensor<T, NDims>::iteratortypedeftensor<T, NDims>::tensor_iterator::iterator_categorytypedeftensor<T, NDims>::nested_iterator_t::iterator_categoryfunctionitrunc(E1 &&) Creates an expression that returns the integer equivalent of trunc(x).
K¶
L¶
functionlambda_generator(Fn &&) Creates an expression backed by a non-random-access callable.functionlambda(Fn &&, cbool_t<RandomAccess>) Creates an expression backed by a callable.functionshape<Dims>::le(const shape<dims> &) Element-wise less-than-or-equal comparison.functionle(E1 &&, E2 &&) Creates an expression that returns whethere1is less than or equal toe2.functionlinspace(T1, T2, size_t, bool, cbool_t<truncated>) Creates an expression that returns evenly spaced numbers over a specified interval.functionload_from_npy(tensor<T, Dims> &, Fn &&) Loads a tensor from.npyformat using a custom read callback.typedeflockfree_ring_buffer Backward-compatible alias forspsc_ring_buffer.functionlog10(E1 &&) Creates an expression that returns the common (base-10) logarithm of x.functionlog2(E1 &&) Creates an expression that returns the binary (base-2) logarithm of x.functionlog_fmadd(E1 &&, E2 &&, E3 &&) Creates an expression that returns log(x) * m + a.functionlogb(E1 &&) Creates an expression that returns the rounded binary (base-2) logarithm of x.functionlog(E1 &&) Creates an expression that returns the natural logarithm of x.functionlogm(E1 &&, E2 &&) Creates an expression that returns log(x) * y.functionlogn(E1 &&, E2 &&) Creates an expression that returns the logarithm of x with base y.functionlt(E1 &&, E2 &&) Creates an expression that returns whethere1is less thane2.
M¶
variablesmall_buffer<T, Capacity>::m_data Pointer to the active storage (inline or heap).variablesmall_buffer<T, Capacity>::m_preallocated Inline storage for up tovariableinline_vector<T, N>::m_size Current number of elements stored.variablesmall_buffer<T, Capacity>::m_size Number of elements currently stored.variableinline_vector<T, N>::m_values Inline storage for the elements.functionmake_complex(E1 &&, E2 &&) Creates an expression that constructs a complex value from the real partreand the imaginary partim.functionmake_memory_finalizer(Fn &&) Creates a memory finalizer that invokesfnwhen the handle is destroyed.functionmake_resource(E &&) Create anexpression_resourceowninge(moved in), allocated with proper alignment.functionmake_univector(const Container &) Creates univector from a container (must have data() and size() methods)functionmake_univector(const T (&)[N]) Creates univector from a sized arrayfunctionmake_univector(const T *, size_t) Creates univector from data and sizefunctionmake_univector(Container &) Creates univector from a container (must have data() and size() methods)functionmake_univector(T (&)[N]) Creates univector from a sized arrayfunctionmake_univector(T *, size_t) Creates univector from data and sizefunctiontensor<T, NDims>::map(Fn &&) Appliesfnto each element and returns the resulting tensor.variableexpression_with_arguments<Args>::masks Per-argument dimension masks computed from each argument's shape.functionmatrix_transpose(T *, const T *, shape<Dims>) Transposes a matrix (supports scalar and compound types).variableexpression_random_range<T, Dims, Reference>::maxvariablemax_index_t Maximum representable value ofindex_t.variablemax_sindex_t Maximum representable value ofsigned_index_t.functionmax(E1 &&, E2 &&) Creates an expression that returns the greater ofxandy.variablecursor<Dims>::maximum Upper bound (exclusive) for each axis.variablemaximum_dims Upper bound on the number of dimensions supported byshape.variablemaximum_expression_width Maximum vector width (in elements) supported by an expression handle for typeT.functionmaxof(const E1 &) Returns the greatest of all the elements in x.functionmean(const E1 &) Returns the arithmetic mean of all the elements in x.typedefmemory_finalizer Shared ownership handle for a memory finalizer.variableexpression_random_range<T, Dims, Reference>::minfunctionshape<Dims>::min(const shape<dims> &, const shape<dims> &) Element-wise minimum of two shapes.functionmin(E1 &&, E2 &&) Creates an expression that returns the smaller ofxandy.variablecursor<Dims>::minimum Lower bound (inclusive) for each axis.functionminof(const E1 &) Returns the smallest of all the elements in x.functionmix(E1 &&, E2 &&, E3 &&) Creates an expression that returns the linear blend ofxandy.functionmixs(E1 &&, E2 &&, E3 &&) Creates an expression that returns the signed linear blend ofxandy.functionmodzerobessel(E1 &&) Creates an expression that returns the modified Bessel function of the first kind of order 0 of x.variableexpression_random_normal<T, Dims, Reference>::mufunctionmul(E &&...) Creates an expression that returns the product of all the arguments passed to a function.
N¶
functionne(E1 &&, E2 &&) Creates an expression that returns whethere1is not equal toe2.functiontensor<T, NDims>::nested_begin() Returns a nested iterator to the first sub-tensor along the first axis.functiontensor<T, NDims>::nested_end() Returns the nested iterator sentinel past the last sub-tensor.typedeftensor<T, NDims>::nested_iteratorstructtensor<T, NDims>::nested_iterator_t Iterator over the first axis yielding sub-tensors of one fewer dimension.functiongenerator_linear<T, VecWidth>::next() Advances the generator state by one native vector width.functiongenerator_exp<T, VecWidth>::next() Advances the generator state by one native vector width using the precomputed multiplicative growth factor.functiongenerator_expj<T, VecWidth>::next() Advances the complex rotation by one native vector width using the recurrence relation.functiongenerator_exp2<T, VecWidth>::next() Advances the generator state by one native vector width using the precomputed multiplicative growth factor.functiongenerator_cossin<T, VecWidth>::next() Advances the rotation by one native vector width using the recurrence relation.functiongenerator_sin<T, VecWidth>::next() Advances the rotation by one native vector width using the recurrence relation.variableexpression_vtable<T, Dims>::Nmax Largest supported block size.functionfraction::normalize() Reduce the fraction to lowest terms and enforce a positive denominator.enumnpy_decode_result Status returned by the.npyloading function.variableexpression_vtable<T, Dims>::Nsizes Number of supported power-of-two block sizes (1 .. maximum_expression_width<T>).typedefexpression_with_arguments<Args>::nth Alias for the type of the argument at positiontypedefexpression_with_arguments<Arg>::nth Alias for the argument type (any index).typedefexpression_with_arguments<Args>::nth_trait Alias for the traits of the argument at positiontypedefexpression_with_arguments<Arg>::nth_trait Alias for the traits of the argument.variablefraction::numerator Numerator of the fraction.
O¶
enum constantnpy_decode_result::ok Successfully loadedfunctionones() Creates an expression that always evaluates to one.functionshape<Dims>::operator*() Access the underlying static array.functionshape<Dims>::operator->() Pointer-like access to the underlying static array.functionfraction::operator+() Unary plus (returns a copy of the fraction).functionfraction::operator-() Unary minus (negates the numerator).functiontensor<T, NDims>::tensor_iterator::operator*() Dereferences the iterator to the referenced element.functiontensor<T, NDims>::tensor_iterator::operator->() Accesses the referenced element by pointer.functiontensor<T, NDims>::tensor_iterator::operator++() Prefix increment, advancing to the next element in row-major order.functiontensor<T, NDims>::nested_iterator_t::operator*() Dereferences the iterator to the sub-tensor at the current index.functiontensor<T, NDims>::nested_iterator_t::operator++() Prefix increment, advancing to the next sub-tensor.functionstate_holder<T, false>::operator->() Returns a pointer to the state (const overload).functionstate_holder<T, false>::operator->() Returns a pointer to the state (non-const overload).functionstate_holder<T, false>::operator*() Returns a reference to the state (const overload).functionstate_holder<T, false>::operator*() Returns a reference to the state (non-const overload).functionstate_holder<T, true>::operator->() Returns a pointer to the state (const overload).functionstate_holder<T, true>::operator->() Returns a pointer to the state (non-const overload).functionstate_holder<T, true>::operator*() Returns a reference to the state (const overload).functionstate_holder<T, true>::operator*() Returns a reference to the state (non-const overload).operatorexpression_handle<T, Dims>::operatortrueif the handle references a valid instance.operatorfraction::operator True if the fraction is non-zero.functionfraction::operator+=(const fraction &) Add-assign.functionfraction::operator-=(const fraction &) Subtract-assign.functionfraction::operator*=(const fraction &) Multiply-assign.functionfraction::operator/=(const fraction &) Divide-assign.functionfraction::operator+(const fraction &, const fraction &) Add two fractions.functionfraction::operator-(const fraction &, const fraction &) Subtract two fractions.functionfraction::operator*(const fraction &, const fraction &) Multiply two fractions.functionfraction::operator/(const fraction &, const fraction &) Divide two fractions.functionfraction::operator==(const fraction &, const fraction &) Equality comparison.functionfraction::operator!=(const fraction &, const fraction &) Inequality comparison.functionfraction::operator<(const fraction &, const fraction &) Less-than comparison.functionfraction::operator<=(const fraction &, const fraction &) Less-than-or-equal comparison.functionfraction::operator>(const fraction &, const fraction &) Greater-than comparison.functionfraction::operator>=(const fraction &, const fraction &) Greater-than-or-equal comparison.functiontensor<T, NDims>::operator()(const Index &...) Returns a sub-tensor (slice) selected by a mix of integer indices and tensor_range specifiers. Axes indexed by integers are removed from the result; axes indexed by tensor_range are kept.functioninline_vector<T, N>::operator=(const inline_vector<T, N> &)functioninline_vector<T, N>::operator==(const inline_vector<T, N> &) Returnstrueif both vectors contain the same elements in the same order.functioninline_vector<T, N>::operator!=(const inline_vector<T, N> &) Returnstrueif the vectors differ in size or contents.functiontensor<T, NDims>::nested_iterator_t::operator==(const nested_iterator_t &) Returnstrueif two iterators refer to the same position.functiontensor<T, NDims>::nested_iterator_t::operator!=(const nested_iterator_t &) Returnstrueif two iterators refer to different positions.functionrandom_state::operator=(const random_state &)functionshape<0>::operator==(const shape<0> &) Two scalar shapes are always equal.functionshape<0>::operator!=(const shape<0> &) Two scalar shapes are never unequal.functiontensor<T, NDims>::operator()(const shape_type &, const shape_type &) Returns a sub-tensor (slice) spanning fromstarttostop.functiontensor<T, NDims>::operator=(const T &) Fills the tensor with a scalar value (const overload).functiontensor<T, NDims>::operator=(const T &) Fills the tensor with a scalar value (rvalue overload).functiontensor<T, NDims>::tensor_iterator::operator==(const tensor_iterator &) Returnstrueif two iterators refer to the same position.functiontensor<T, NDims>::tensor_iterator::operator!=(const tensor_iterator &) Returnstrueif two iterators refer to different positions.functiontensor<T, NDims>::operator=(const tensor<T, NDims> &) Copy-assigns the tensor, sharing the data ofsrc.functiontensor<T, NDims>::operator=(const tensor<T, NDims> &) Copy-assigns the tensor fromsrc(const overload).functiontensor<T, NDims>::operator=(const tensor<T, NDims> &) Copy-assigns the tensor fromsrc(rvalue overload).functiontensor<T, NDims>::operator==(const tensor<T, NDims> &, const tensor<T, NDims> &) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(const tensor<T, NDims> &, tensor<T, NDims> &&) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(const tensor<T, NDims> &, tensor<T, NDims> &) Returnstrueif both tensors have the same shape and equal elements.functionoperator==(const univector<T, T1> &, const univector<T, T2> &) Returnstrueif the two univectors have equal size and element-wise equal contents.functionoperator!=(const univector<T, T1> &, const univector<T, T2> &) Returnstrueif the two univectors differ in size or in any element.functionunivector<T, tag_dynamic_vector>::operator=(const univector<T, tag_dynamic_vector> &)functionexpression_resource_impl<E>::operator Aligned delete overload matching the aligned allocation inmake_resource.operatorfraction::operator Convert to double (exact value).functionoperator-(E1 &&) Creates an expression that returns the arithmetic negation ofe1.functionoperator~(E1 &&) Creates an expression that returns the bitwise NOT ofe1.functionoperator+(E1 &&, E2 &&) Creates an expression that returns the sum ofe1ande2.functionoperator-(E1 &&, E2 &&) Creates an expression that returns the difference betweene1ande2.functionoperator*(E1 &&, E2 &&) Creates an expression that returns the product ofe1ande2.functionoperator/(E1 &&, E2 &&) Creates an expression that returns the quotient ofe1divided bye2.functionoperator%(E1 &&, E2 &&) Creates an expression that returns the remainder ofe1divided bye2.functionoperator&(E1 &&, E2 &&) Creates an expression that returns the bitwise AND ofe1ande2.functionoperator|(E1 &&, E2 &&) Creates an expression that returns the bitwise OR ofe1ande2.functionoperator^(E1 &&, E2 &&) Creates an expression that returns the bitwise XOR ofe1ande2.functionoperator<<(E1 &&, E2 &&) Creates an expression that returnse1shifted left bye2bits.functionoperator>>(E1 &&, E2 &&) Creates an expression that returnse1shifted right bye2bits.functionoperator+=(E1 &&, E2 &&) Addse2toe1in place and returns a reference toe1.functionoperator-=(E1 &&, E2 &&) Subtractse2frome1in place and returns a reference toe1.functionoperator*=(E1 &&, E2 &&) Multipliese1bye2in place and returns a reference toe1.functionoperator/=(E1 &&, E2 &&) Dividese1bye2in place and returns a reference toe1.functionoperator%=(E1 &&, E2 &&) Assigns the remainder ofe1divided bye2toe1and returns a reference toe1.functionoperator|=(E1 &&, E2 &&) Assigns the bitwise OR ofe1ande2toe1and returns a reference toe1.functionoperator&=(E1 &&, E2 &&) Assigns the bitwise AND ofe1ande2toe1and returns a reference toe1.functionoperator^=(E1 &&, E2 &&) Assigns the bitwise XOR ofe1ande2toe1and returns a reference toe1.functionoperator<<=(E1 &&, E2 &&) Shiftse1left bye2bits in place and returns a reference toe1.functionoperator>>=(E1 &&, E2 &&) Shiftse1right bye2bits in place and returns a reference toe1.operatorfraction::operator Convert to float (exact value).functionexpression_function<Fn, Args>::operator=(In &&) Processes an input expression into this output expression.functiontensor<T, NDims>::operator[](index_t) Returns a reference to the element at the given flat index.functioninline_vector<T, N>::operator=(inline_vector<T, N> &&)functionexpression_unpack<E>::operator=(Input &&) Assigns the values ofinputto all wrapped output expressions.functionunivector_base<T, Class, true>::operator=(Input &&) Assigns an expression to the vector. The expression must have at most one dimension; its elements are written to the vector starting at index 0.functionunivector_base<T, Class, false>::operator=(Input &&) Assignment from an expression is disabled for non-expression vectors. Always triggers a static assertion failure.functionunivector<T, tag_dynamic_vector>::operator=(Input &&) Assigns an expression to the vector, resizing it when the expression has a finite size.functiontensor<T, NDims>::operator=(Input &&) Evaluatesinputand assigns the result to this tensor (const overload).functiontensor<T, NDims>::operator=(Input &&) Evaluatesinputand assigns the result to this tensor (rvalue overload).functiontensor<T, NDims>::operator=(Input &&) Evaluatesinputand assigns the result to this tensor (lvalue overload).functiontensor<T, NDims>::tensor_iterator::operator++(int) Postfix increment.functiontensor<T, NDims>::nested_iterator_t::operator++(int) Postfix increment.operatorfraction::operator Convert to integer (truncates toward zero).functionrandom_state::operator=(random_state &&)functionhistogram_data<Bins, TCount>::operator[](size_t) Returns the count in binn.functioninline_vector<T, N>::operator[](size_type) Returns a const reference to the element atindex(no bounds checking).functioninline_vector<T, N>::operator[](size_type) Returns a reference to the element atindex(no bounds checking).functionsmall_buffer<T, Capacity>::operator=(small_buffer<T, Capacity>) Copy- and move-assigns fromotherusing copy-and-swap.functionsmall_buffer<T, Capacity>::operator[](std::size_t)functionsmall_buffer<T, Capacity>::operator[](std::size_t)functiontensor<T, NDims>::operator=(tensor<T, NDims> &&) Move-assigns the tensor fromsrc.functiontensor<T, NDims>::operator==(tensor<T, NDims> &&, const tensor<T, NDims> &) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(tensor<T, NDims> &, const tensor<T, NDims> &) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(tensor<T, NDims> &&, tensor<T, NDims> &&) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(tensor<T, NDims> &&, tensor<T, NDims> &) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(tensor<T, NDims> &, tensor<T, NDims> &&) Returnstrueif both tensors have the same shape and equal elements.functiontensor<T, NDims>::operator==(tensor<T, NDims> &, tensor<T, NDims> &) Returnstrueif both tensors have the same shape and equal elements.functiontensor_subscript<T, Derived, std::integer_sequence<index_t, Dims...>>::operator()(type_for<index_t, Dims>...) Accesses the element at the given multi-dimensional index.functionunivector<T, tag_dynamic_vector>::operator=(univector<T, tag_dynamic_vector> &&)functionunivector<T, tag_dynamic_vector>::operator=(univector<T, tag_dynamic_vector> &) Copy assignment from a mutable univector (forwards to the const overload).functionshape<Dims>::operator Implicit conversion toindex_tfor 1D shapes.typedefopt_index_t Optional signed index used bytensor_range.variableexpression_reshape<Arg, OutDims>::out_shapeconceptoutput_expression Concept satisfied by expressions that can be written to.
P¶
functionpack(Args &&...) Creates an expression that packs several input expressions into a single vector-valued expression.functionpadded(Arg &&, T) Creates an expression that extendsargwith a constant fill value.functionplaceholder(csize_t<Key>) Create an unboundexpression_placeholderwith the given key.typedefinline_vector<T, N>::pointertypedeftensor<T, NDims>::pointertypedeftensor<T, NDims>::tensor_iterator::pointertypedeftensor<T, NDims>::nested_iterator_t::pointerfunctionpolar(E1 &&) Creates an expression that converts a complex number to polar form.functionsmall_buffer<T, Capacity>::pop_back() Removes the last element.functionpow2(E1 &&) Creates an expression that returnsxraised to the power of 2.functionpow3(E1 &&) Creates an expression that returnsxraised to the power of 3.functionpow4(E1 &&) Creates an expression that returnsxraised to the power of 4.functionpow5(E1 &&) Creates an expression that returnsxraised to the power of 5.functionpow(E1 &&, E2 &&) Creates an expression that returns x raised to the given power y.functionfilter<T>::process_buffer(T *, const T *, size_t) Filterssizesamples fromsrcintodest.functionexpression_filter<T>::process_buffer(T *, const T *, size_t)functionfilter<T>::process_expression(T *, const expression_handle<T, 1> &, size_t) Evaluatessizesamples of the expressionsrcintodest.functionexpression_filter<T>::process_expression(T *, const expression_handle<T, 1> &, size_t)functionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::process(const vec<Tin, N> &)functionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::process(const vec<Tin, width> &)functionprocess(Out &&, In &&, shape<0>, shape<0>, csize_t<gw>) Processes a zero-dimensional input expression into a zero-dimensional output expression.functionprocess(Out &&, In &&, shape<outdims>, shape<outdims>, csize_t<gw>) Processes a multi-dimensional input expression into a multi-dimensional output expression.functionshape<Dims>::product() Product of every axis size (total number of elements).functionshape<0>::product() Product of all axes; the empty product is 0.functionshape<dynamic_shape>::product() Product of every axis size; 0 for an empty shape.functionproduct(const E1 &) Returns the product of all the elements in x.functionsmall_buffer<T, Capacity>::push_back(const T &) Appendsvalueto the end of the buffer.functioninline_vector<T, N>::push_back(T) Appendsvalueto the end of the vector.functionhistogram_data<Bins, TCount>::put(const vec<T, N> &) Adds a vector of values to the histogram, incrementing the appropriate bins.functionhistogram_data<Bins, TCount>::put(T) Adds a single value to the histogram.
R¶
variableexpression_traits<T>::random_accessvariableexpression_traits_defaults::random_accessvariableexpression_with_traits<Arg>::random_accessvariableexpression_function<Fn, Args>::random_access when all arguments support random access.variableexpression_traits<expression_slice<Arg>>::random_accessvariableexpression_traits<expression_cast<T, Arg>>::random_accessvariableexpression_traits<expression_lambda<T, Dims, Fn, Rnd>>::random_accessvariableexpression_traits<expression_padded<Arg>>::random_accessvariableexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>::random_accessvariableexpression_traits<expression_reshape<Arg, OutDims>>::random_accessvariableexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::random_accessvariableexpression_adjacent<Fn, E>::random_accessvariableexpression_traits<expression_handle<T, Dims>>::random_access Handles are not random-access.variablegenerator<T, VecWidth, Class, Twork>::random_accessfunctionrandom_bits(random_state &) Generates more than 16 bytes of random data.functionrandom_init() Initializes the random number generator state using the CPU cycle counter.functionrandom_init(u32, u32, u32, u32) Initializes the random number generator with four 32-bit seed values.functionrandom_init(u64, u64) Initializes the random number generator with two 64-bit seed values.functionrandom_next(random_state &) Advances the internal state of the pseudo-random number generator.functionrandom_normal(random_state &, T, T) Generates N normally distributed (Gaussian) random values using Box-Muller transform.functionrandom_range(random_state &, T, T) Generates random values uniformly distributed in the range [min, max) for integral types.structrandom_state Internal state of the pseudo-random number generator.constructorrandom_state::random_state() Default-constructs the state initialized to all zeros.constructorrandom_state::random_state(const random_state &)constructorrandom_state::random_state(random_state &&)functionrandom_uniform(random_state &) Generates a vector of uniformly distributed floating-point numbers in [0.0, 1.0).functionrandommantissa(random_state &) Generates a vector of f32 values with mantissas in [1.0, 2.0).functionrandommantissa(random_state &) Generates a vector of f64 values with mantissas in [1.0, 2.0).functionreal(E1 &&) Creates an expression that returns the real part of the complex valuex.functionrebind(const expression_function<Fn, OldArgs...> &, NewArgs &&...) Construct a new expression using the same function as ineand new argumentsfunctionrebind(expression_function<Fn, OldArgs...> &&, NewArgs &&...) Construct a new expression using the same function as ineand new arguments.functionreduce(const E1 &, ReduceFn &&, TransformFn &&, FinalFn &&) Reduces a range to a single value.variableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::reducefnfunctiontensor<T, NDims>::reduce(Fn &&, T) Reduces all elements usingfnand an initial value.functionunivector_base<T, Class, true>::ref() Returns a mutable reference to the underlying data.functionunivector_base<T, Class, true>::ref() Returns a const reference to the underlying data.functionunivector_base<T, Class, false>::ref() Returns a mutable reference to the underlying data.functionunivector_base<T, Class, false>::ref() Returns a const reference to the underlying data.functionunivector<T, tag_array_ref>::ref() Returns*thisas a reference. Intended for use on rvalues to forward the contained reference without copying.typedefinline_vector<T, N>::referencetypedeftensor_subscript<T, Derived, std::integer_sequence<index_t, Dims...>>::referencetypedeftensor<T, NDims>::referencetypedeftensor<T, NDims>::tensor_iterator::referencetypedeftensor<T, NDims>::nested_iterator_t::referencefunctionshape<Dims>::remove_back() Drop the last axis.functionshape<dynamic_shape>::remove_back() Drop the last axis.functionshape<Dims>::remove_front() Drop the first axis.functionshape<dynamic_shape>::remove_front() Drop the first axis.functionrender(Expr &&) Converts an expression to a dynamically sized univector.functionrender(Expr &&, csize_t<Size>) Converts an expression to a fixed-size univector.functionrender(Expr &&, size_t, size_t) Converts a slice of an expression to a dynamically sized univector of the given size.classrepresentation<fmt_t<kfr::tensor<T, dims>, t, width, prec>> Specialization of representation for a formatted tensor, providing formatted string conversion.classrepresentation<fmt_t<kfr::univector<T, Tag>, t, width, prec>>representationspecialization that formats a fmt_t-wrappedunivectoras a string, applying the wrapped format options to each element.structrepresentation<kfr::fraction> String representation specialization forfraction.structrepresentation<kfr::npy_decode_result>classrepresentation<kfr::shape<dims>> String representation of ashape, used byas_stringand the formatting framework.classrepresentation<kfr::tensor<T, dims>> Specialization of representation for tensor, providing string conversion.classrepresentation<kfr::univector<T, Tag>>representationspecialization that formats aunivectoras a string using KFR's built-in array formatting.functiontensor<T, NDims>::require_contiguous() Throws if the tensor is not contiguous.functionfilter<T>::reset() Resets the internal state (such as a delay line).functionexpression_filter<T>::reset() Resets the state of the wrapped expression.functionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::reset()functionreset(const expression_handle<T, NDims> &) Internal ADL-provided implementation forexpression_handleexpressions.functionreset(const expression_with_arguments<Args...> &) Resets all arguments of anexpression_with_arguments.functionreset(const internal_generic::anything &) No-op reset hook for theanythingplaceholder type.functiontensor<T, NDims>::reshape_may_copy(const kfr::shape<dims> &, bool) Returns a tensor with a different shape, copying if necessary.functionreshape(Arg &&, const shape<OutDims> &) Creates an expression that exposes the same data asargwith a different shape.functiontensor<T, NDims>::reshape(const kfr::shape<dims> &) Returns a tensor with a different shape without copying. The tensor must be contiguous.functionunivector<T, Size>::resize(size_t) No-op for API compatibility with dynamically sized vectors.functionunivector<T, tag_array_ref>::resize(size_t) No-op for API compatibility with dynamically sized vectors.functionsmall_buffer<T, Capacity>::resize(std::size_t) Resizes the buffer tonewsizeelements.variableexpression_handle<T, Dims>::resource Owning resource, or null for a non-owning handle.functiongenerator<T, VecWidth, Class, Twork>::resync(T) Reinitializes the generator state so that the next produced value corresponds to the givenstart.functionreverse(Arg &&) Creates an expression that exposesargwith its trailing dimension reversed.functionshape<Dims>::revindex(size_t) Read an axis by its position from the back.functionshape<0>::revindex(size_t) Read an axis by its position from the back; always returns 1 because there are no axes.functionunivector_base<T, Class, true>::ringbuf_read(size_t &, T &) Reads a single element from the ring buffer atcursorintovalueand advances the cursor.functionunivector_base<T, Class, true>::ringbuf_read(size_t &, T *, size_t) Readsdestsizeelements from the ring buffer atcursorintodest.The buffer is treated as circular: reads that cross the end wrap around to the beginning. Ifdestsizeexceeds the buffer capacity, only the most recentsize()elements are produced and the leading portion ofdestis skipped.cursoris advanced by the number of elements actually read and wrapped into[0,size()).functionunivector_base<T, Class, true>::ringbuf_read(size_t &, vec<T, N> &) ReadsNelements from the ring buffer atcursorinto the SIMD vectorx.functionunivector_base<T, Class, true>::ringbuf_step(size_t &, size_t) Advancescursorbystep,wrapping it into the[0,size()) range.functionunivector_base<T, Class, true>::ringbuf_write(size_t &, const T &) Writes a singlevalueinto the ring buffer atcursorand advances the cursor.functionunivector_base<T, Class, true>::ringbuf_write(size_t &, const T *, size_t) Writessrcsizeelements fromsrcinto the ring buffer starting atcursor.The buffer is treated as circular: data that does not fit before the end wraps around to the beginning. Ifsrcsizeexceeds the buffer capacity, only the most recentsize()elements are kept and the rest is skipped.cursoris advanced by the number of elements actually written and wrapped into[0,size()).functionunivector_base<T, Class, true>::ringbuf_write(size_t &, const vec<T, N> &) Writes theNelements of the SIMD vectorxinto the ring buffer atcursor.functionrms(const E1 &) Returns the root mean square of all the elements in x.functionroot(E1 &&, E2 &&) Creates an expression that returns the real nth root of x.functionshape<Dims>::rotate_left() Rotate the axes left by one position.functionshape<dynamic_shape>::rotate_left() Rotate the axes left by one position.functionshape<Dims>::rotate_right() Rotate the axes right by one position.functionshape<dynamic_shape>::rotate_right() Rotate the axes right by one position.functionround(E1 &&) Creates an expression that returnsxrounded to the nearest integer.
S¶
variablestate_holder<T, false>::s The owned state value.variablestate_holder<T, true>::s Pointer to the externally owned state. Never null for a valid holder.functionsatadd(E1 &&, E2 &&) Creates an expression that addsxandyusing saturation.functionsatsub(E1 &&, E2 &&) Creates an expression that subtractsyfromxusing saturation.functionsave_to_npy(const tensor<T, Dims> &, Fn &&) Saves a tensor to.npyformat using a custom write callback.functionscalar(T) Creates an expression that wraps a single value.variableaudio_sample_traits<i16>::scale Maximum representable magnitude used as conversion scale.variableaudio_sample_traits<i24>::scale Maximum representable magnitude used as conversion scale.variableaudio_sample_traits<i32>::scale Maximum representable magnitude used as conversion scale.variableaudio_sample_traits<f32>::scale Scale factor for float samples (always 1).variableaudio_sample_traits<f64>::scale Scale factor for double samples (always 1).variableseed_from_rdtsc Tag value used to seed the random number generator from the CPU cycle counter.structseed_from_rdtsc_t Tag type for seeding the random number generator from the CPU cycle counter.functionselect(E1 &&, E2 &&, E3 &&) Creates an expression that returnsxifmis true, otherwise returnsy.functionsequence(const Ts &...) Creates an expression that cycles through the provided list of values.functionset_elements(const expression_cast<T, Arg> &, const shape<NDims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forfunctionexpression_discard<Tin, Dims>::set_elements(const expression_discard<Tin, Dims> &, shape<Dims>, axis_params<VecAxis, N>, const std::type_identity_t<vec<Tin, N>> &) Discards a vector write.functionset_elements(const expression_handle<T, NDims> &, const shape<NDims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forexpression_handleexpressions.functionset_elements(const expression_slice<Arg> &, const shape<NDims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forfunctionset_elements(const tensor<T, NDims> &, const shape<NDims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation for tensor expressions. WritesvalueasNelements alongAxisstarting atindexintoself.functionset_elements(expression_fixshape<Arg, Shape> &, const shape<Traits::dims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forfunctionset_elements(expression_function<fn::packtranspose, Args...> &, shape<Tr::dims>, axis_params<Axis, N>, const std::type_identity_t<vec<typename Tr::value_type, N>> &) Internal ADL-provided implementation forfunctionexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::set_elements(expression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn> &, shape<Dims>, axis_params<VecAxis, N>, const std::type_identity_t<vec<Tin, N>> &)functionset_elements(expression_reshape<Arg, outdims> &, const shape<Traits::dims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forfunctionset_elements(expression_reverse<Arg> &, const shape<Traits::dims> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forfunctionexpression_unpack<E>::set_elements(expression_unpack<E...> &, shape<dims>, axis_params<Axis, N>, const std::type_identity_t<vec<value_type, N>> &)functionset_elements(T &, const shape<0> &, const axis_params<Axis, N> &, const std::type_identity_t<vec<T, N>> &) Stores a single-element vector into a scalar element.functionset_elements(univector<T, Tag> &, const shape<1> &, const axis_params<0, N> &, const std::type_identity_t<vec<T, N>> &) Internal ADL-provided implementation forset_elementsexpressions.functionshape<Dims>::set_revindex(size_t, index_t) Write an axis by its position from the back.functionshape<0>::set_revindex(size_t, index_t) Set an axis by its position from the back; a no-op.constructorshape<0>::shape() Default-construct an empty (scalar) shape.deduction guideshape Deduction guide forshapefrom a parameter pack.functiontensor<T, NDims>::shape() Returns the shape of the tensor.structshape<0> Scalar shape specialization.typedeftensor<T, NDims>::shape_typeclassshape<dims> Fixed-rank multidimensional shape used bytensor.constructorshape<Dims>::shape<dims>(const base &) Construct a shape from a base static array.structshape<dynamic_shape> Run-time-rank shape specialization.constructorshape<0>::shape(index_t) Construct a scalar shape; the value is ignored.functionshape<dynamic_shape>::shape(shape<Dims>) Construct a dynamic-rank shape from a fixed-rank one.variableexpression_random_normal<T, Dims, Reference>::sigmatypedefsigned_index_t Signed integer type used for tensor indices and axis sizes.functionsinc(E1 &&) Creates an expression that returns the sinc function of x.functionsincosdeg(E1 &&) Creates an expression that returns the trigonometric sine of the even elements of x and cosine of the odd elements. x must be expressed in degrees.functionsincos(E1 &&) Creates an expression that returns the trigonometric sine of the even elements of x and cosine of the odd elements. x must be a vector.functionsindeg(E1 &&) Creates an expression that returns the trigonometric sine of x (expressed in degrees).functionsin(E1 &&) Creates an expression that returns the trigonometric sine of x.functionsinhcosh(E1 &&) Creates an expression that returns the hyperbolic sine of the even elements of x and the hyperbolic cosine of the odd elements of x.functionsinh(E1 &&) Creates an expression that returns the hyperbolic sine of x.functionsink(E &&) Reads the expressionexprthrough the whole range.functionshape<0>::size() Returns the number of elements (always 0).variableexpression_slice<Arg>::sizevariableexpression_linspace<T, truncated>::sizefunctionspsc_ring_buffer<T>::size() Returns an approximate number of elements currently available for dequeue.functioninline_vector<T, N>::size() Returns the number of elements currently stored.functiontensor<T, NDims>::size() Returns the total number of elements in the tensor.functionhistogram_data<Bins, TCount>::size() Returns the number of bins.functionsmall_buffer<T, Capacity>::size()variableexpression_concatenate<Arg1, Arg2, ConcatAxis>::size1functionsize_add(size_t, size_t) Saturating addition for shape sizes.variableunivector<T, Size>::size_known True: the size is known at compile time.variableunivector<T, tag_array_ref>::size_known False: the size is not known at compile time.variableunivector<T, tag_dynamic_vector>::size_known False: the size is not known at compile time.functionsize_min(size_t) Returns the minimum of a single value.functionsize_min(size_t, size_t, Ts...) Returns the minimum of two or more values (recursively).functionsize_of_shape(const shape<dims> &) Total number of elements described by a shape.functionsize_sub(size_t, size_t) Saturating subtraction for shape sizes.typedefunivector<T, Size>::size_typetypedefunivector<T, tag_array_ref>::size_typetypedefunivector<T, tag_dynamic_vector>::size_typetypedefinline_vector<T, N>::size_typetypedeftensor<T, NDims>::size_typefunctionslice(Arg &&, std::type_identity_t<shape<Dims>>, std::type_identity_t<shape<Dims>>) Creates an expression that exposes a sub-region of another expression.functionunivector_base<T, Class, true>::slice(size_t, size_t) Returns subrange of the vector. If start is greater or equal to this->size, returns empty univector If requested size is greater than this->size, returns only available elementsfunctionunivector_base<T, Class, true>::slice(size_t, size_t) Returns subrange of the vector. If start is greater or equal to this->size, returns empty univector If requested size is greater than this->size, returns only available elementsclasssmall_buffer<T, Capacity> A dynamically-sized buffer with a small-size optimization.constructorsmall_buffer<T, Capacity>::small_buffer<T, Capacity>() Constructs an empty buffer pointing at the inline storage.destructorsmall_buffer<T, Capacity>::~small_buffer<T, Capacity>() Destructor; releases any heap allocation.constructorsmall_buffer<T, Capacity>::small_buffer<T, Capacity>(const small_buffer<T, Capacity> &) Copy-constructs fromother.constructorsmall_buffer<T, Capacity>::small_buffer<T, Capacity>(small_buffer<T, Capacity> &&) Move-constructs fromother,leavingotherin an empty state.constructorsmall_buffer<T, Capacity>::small_buffer<T, Capacity>(std::size_t) Constructs a buffer withsizedefault-initialized elements.classspsc_ring_buffer<T> Single-producer/single-consumer queue backed by an externalunivector.constructorspsc_ring_buffer<T>::spsc_ring_buffer<T>() Constructs an empty queue withfrontandtailset to 0.functionsqr(E1 &&) Creates an expression that returns the square ofx.functionsqrt(E1 &&) Creates an expression that returns the positive square root of x. \(\sqrt{x}\)variabletensor<T, NDims>::tensor_iterator::srcvariabletensor<T, NDims>::nested_iterator_t::srctypedefgenerator_expj<T, VecWidth>::STvariabletensor_range::start Start of the range (inclusive).std::nulloptmeans "from the beginning" (or "to the end" for negative steps).variableexpression_counter<T, Dims>::startvariableexpression_slice<Arg>::startvariableexpression_linspace<T, truncated>::startvariableexpression_random_uniform<T, Dims, Reference>::statevariableexpression_random_range<T, Dims, Reference>::statevariableexpression_random_normal<T, Dims, Reference>::stateclassstate_holder<T, false> Owning specialization ofstate_holder.constructorstate_holder<T, false>::state_holder<T, false>()constructorstate_holder<T, false>::state_holder<T, false>(const state_holder<T, false> &)constructorstate_holder<T, false>::state_holder<T, false>(state_holder<T, false> &&)constructorstate_holder<T, false>::state_holder<T, false>(state_holder<T, true>) Converts a stateless holder into an owning one by copying the referenced state.constructorstate_holder<T, false>::state_holder<T, false>(std::reference_wrapper<const T>)constructorstate_holder<T, false>::state_holder<T, false>(std::reference_wrapper<T>)constructorstate_holder<T, false>::state_holder<T, false>(T) Constructs the holder by moving in a state value.classstate_holder<T, Stateless> Holds a state value, either by ownership or by reference, depending on theStatelesstemplate parameter.classstate_holder<T, true> Stateless (non-owning) specialization ofstate_holder.constructorstate_holder<T, true>::state_holder<T, true>()constructorstate_holder<T, true>::state_holder<T, true>(const state_holder<T, true> &)constructorstate_holder<T, true>::state_holder<T, true>(const T &)constructorstate_holder<T, true>::state_holder<T, true>(state_holder<T, true> &&)constructorstate_holder<T, true>::state_holder<T, true>(std::reference_wrapper<T>) Constructs the holder from a reference wrapper, storing a pointer to the referenced object.constructorstate_holder<T, true>::state_holder<T, true>(T)constructorstate_holder<T, true>::state_holder<T, true>(T &)constructorstate_holder<T, true>::state_holder<T, true>(T &&)functionexpression_vtable<T, Dims>::static_begin_pass(void *, shape<Dims>, shape<Dims>) begin_pass trampoline: forwards tobegin_passforExpression.functionexpression_vtable<T, Dims>::static_end_pass(void *, shape<Dims>, shape<Dims>) end_pass trampoline: forwards toend_passforExpression.functionexpression_vtable<T, Dims>::static_get_elements(void *, shape<Dims>, T *) get_elements trampoline: forwards toget_elementsforExpression.functionexpression_vtable<T, Dims>::static_reset(void *) reset trampoline: forwards toresetforExpression.functionexpression_vtable<T, Dims>::static_set_elements(void *, shape<Dims>, const T *) set_elements trampoline: forwards toset_elementsforExpression.functionexpression_vtable<T, Dims>::static_shapeof(void *, shape<Dims> &) shapeof trampoline: queriesexpression_traits::get_shapeforExpression.variableshape<0>::static_size Compile-time size of the shape, always zero.variableunivector<T, Size>::static_size Compile-time size of the vector.functionexpression_vtable<T, Dims>::static_substitute(void *, expression_handle<T, Dims>) substitute trampoline: invokeskfr::substituteonExpression.functionstddev(const E1 &) Computes the standard deviation of the given expression.variabletensor_range::step Step between elements. Defaults to 1. May be negative for a reverse iteration.variablegenerator_exp<T, VecWidth>::stepvariablegenerator_expj<T, VecWidth>::stepvariablegenerator_exp2<T, VecWidth>::stepvariablegenerator_cossin<T, VecWidth>::stepvariablegenerator_sin<T, VecWidth>::stepvariableexpression_counter<T, Dims>::stepsvariabletensor_range::stop End of the range (exclusive).std::nulloptmeans "to the end" (or "from the beginning" for negative steps).variableexpression_linspace<T, truncated>::stoptypedefinline_vector<T, N>::stored_size_type Smallest unsigned integer able to hold values up tofunctiontensor<T, NDims>::strides() Returns the strides of the tensor.functionshape<Dims>::sub_shape_undef(const shape<dims> &, const shape<dims> &) Variant ofsub_shapethat also propagatesundefined_size.functionshape<Dims>::sub_shape(const shape<dims> &, const shape<dims> &) Subtract one shape from another, treatinginfinite_sizeas infinite.functionshape<Dims>::sub(const shape<dims> &) Element-wise subtraction of two shapes.functionsub(E1 &&, E2 &&) Creates an expression that returns the difference betweenxandy.functionsubstitute(const internal_generic::anything &, Args &&...) Fallbacksubstitutethat accepts any expression and arguments and does nothing.functionexpression_handle<T, Dims>::substitute(expression_handle<T, Dims>) Replace the placeholder inside the referenced expression withnew_handle.functionsubstitute(expression_handle<T, Dims> &, expression_handle<T, Dims>, csize_t<Key>) Substitute the placeholder inside the expression referenced byexpr.functionsubstitute(expression_placeholder<T, Dims, Key> &, expression_handle<T, Dims>, csize_t<Key>) Bind a placeholder to a concrete expression handle.functionsubstitute(expression_with_arguments<Args...> &, expression_handle<T, Dims>, csize_t<Key>) Recursively substitute a placeholder inside a composite expression.functionshape<Dims>::sum() Sum of every axis size.functionsum(const E1 &) Returns the sum of all the elements in x.functionsumsqr(const E1 &) Returns the sum of squares of all the elements in x.functionsmall_buffer<T, Capacity>::swap(small_buffer<T, Capacity> &, small_buffer<T, Capacity> &) Swaps the contents of two buffers.variablesymmetric_linspacestructsymmetric_linspace_t Tag type used to select the symmetric-linspace constructor ofexpression_linspace.functionsymmlinspace(T, size_t, cbool_t<truncated>) Creates an expression that returns evenly spaced numbers over a symmetric interval.functiongenerator_linear<T, VecWidth>::sync(T) Reinitializes the generator so the next vector starts atstart.functiongenerator_exp<T, VecWidth>::sync(T) Reinitializes the generator so the next vector starts atstart.functiongenerator_expj<T, VecWidth>::sync(T) Reinitializes the generator so the next vector starts at phasestart.functiongenerator_exp2<T, VecWidth>::sync(T) Reinitializes the generator so the next vector starts atstart.functiongenerator_cossin<T, VecWidth>::sync(T) Reinitializes the generator so the next vector starts at phasestart.functiongenerator_sin<T, VecWidth>::sync(T) Reinitializes the generator so the next vector starts at phasestart.
T¶
enum constant(Unnamed enum at base/univector.hpp:42:1)::tag_array_ref Tag for a non-owning reference to external data.enum constant(Unnamed enum at base/univector.hpp:42:1)::tag_dynamic_vector Tag for a dynamically sized, owning vector.functiontall() Build a range that spans the entire axis (defaults for all three components).functiontandeg(E1 &&) Creates an expression that returns the trigonometric tangent of x (expressed in degrees).functiontan(E1 &&) Creates an expression that returns the trigonometric tangent of x.functiontanh(E1 &&) Creates an expression that returns the hyperbolic tangent of x.functiontensor_from_container(Container) Creates a 1D tensor referencing the data of a container. The container is moved into a memory finalizer so the data remains valid for the tensor's lifetime.structtensor<T, NDims>::tensor_iterator Tensor iterator. Iterates through the flattened array in row-major order.structtensor_range Half-open or one-ended range descriptor for tensor slicing.classtensor_subscript<T, Derived, Dims> Base for the subscript operator helper of tensor.classtensor_subscript<T, Derived, std::integer_sequence<index_t, Dims...>> Specialization of tensor_subscript for an explicit integer sequence of dimensions.classtensor<T, dynamic_shape> Specialization of tensor for a dynamic shape. Not implemented yet.classtensor<T, NDims> Holds or references multidimensional data and provides access to individual elements and complex operations on the data.constructortensor<T, NDims>::tensor<T, NDims>() Default constructor. Creates a tensor with a null shape.constructortensor<T, NDims>::tensor<T, NDims>(const shape_type &) Constructs a tensor with the given shape and allocates memory for it.constructortensor<T, NDims>::tensor<T, NDims>(const shape_type &, const shape_type &) Constructs a tensor with the given shape and a packed stride layout.constructortensor<T, NDims>::tensor<T, NDims>(const shape_type &, const shape_type &, std::initializer_list<T>) Constructs a tensor with the given shape and strides and fills it from a flat initializer list.constructortensor<T, NDims>::tensor<T, NDims>(const shape_type &, const shape_type &, T) Constructs a tensor with the given shape and strides, allocates memory, and fills it withvalue.constructortensor<T, NDims>::tensor<T, NDims>(const shape_type &, const std::initializer_list<T> &) Constructs a tensor with the given shape, allocates memory, and fills it from a flat initializer list.constructortensor<T, NDims>::tensor<T, NDims>(const shape_type &, T) Constructs a tensor with the given shape, allocates memory, and fills it withvalue.functiontensor<T, NDims>::tensor<T, NDims>(const std::initializer_list<std::initializer_list<std::initializer_list<std::initializer_list<U>>>> &) Initializes a 4D tensor from a braced list. Defined for 4D tensors only.functiontensor<T, NDims>::tensor<T, NDims>(const std::initializer_list<std::initializer_list<std::initializer_list<U>>> &) Initializes a 3D tensor from a braced list. Defined for 3D tensors only.functiontensor<T, NDims>::tensor<T, NDims>(const std::initializer_list<std::initializer_list<U>> &) Initializes a 2D tensor from a braced list. Defined for 2D tensors only.functiontensor<T, NDims>::tensor<T, NDims>(const std::initializer_list<U> &) Initializes a 1D tensor from a braced list. Defined for 1D tensors only.constructortensor<T, NDims>::tensor<T, NDims>(const tensor<T, NDims> &)constructortensor<T, NDims>::tensor<T, NDims>(const tensor<T, NDims> &&)functiontensor<T, NDims>::tensor<T, NDims>(Input &&) Constructs a tensor by evaluating an expression.constructortensor<T, NDims>::tensor<T, NDims>(T *, const shape_type &, const shape_type &, memory_finalizer) Constructs a tensor from an external pointer, shape, strides, and finalizer.constructortensor<T, NDims>::tensor<T, NDims>(T *, const shape_type &, memory_finalizer) Constructs a tensor from an external pointer, shape, and finalizer using default strides.constructortensor<T, NDims>::tensor<T, NDims>(tensor<T, NDims> &&)constructortensor<T, NDims>::tensor<T, NDims>(tensor<T, NDims> &)functiontensor<T, NDims>::to_array() Copies the tensor elements into a std::array.functionto_filter(E &&) Creates a filter from an expression containing a placeholder.functionto_filter(expression_handle<T, 1> &&) Creates a filter from an expression handle containing a placeholder.functionshape<0>::to_flat(const shape<0> &) Flat offset for a scalar; the only valid offset is 0.functionshape<Dims>::to_flat(const shape<Dims> &) Convert multi-dimensional indices to a flat offset.functionto_handle(E &) Converts the given expression into an opaque handle.functionto_handle(E &&) Converts the given expression into an opaque handle.functionshape<Dims>::to_std_array() Convert the shape to astd::array.functiontensor<T, NDims>::to_string(int, int, std::string, std::string, std::string) Returns a string representation of the tensor.functionto_vec(const shape<Dims> &) Converts a shape to a vector of unsigned integers.functionshape<Dims>::tomask() Build adimsetmask with bits set for non-collapsed axes.functionshape<0>::tomask() Build adimsetwith all bits set.functionhistogram_data<Bins, TCount>::total() Returns the total number of values added to the histogram.functiontprocess_body(Out &&, In &&, size_t, size_t, size_t, shape<outdims>, shape<indims>) Core loop body that copies a vectorized slice fromintoout.functiontrace(E1 &&) Creates an expression that prints the requested values to the console for debugging purposes.functionshape<Dims>::trailing_zeros() Number of trailing axes of size 1, counting from the back.functionshape<0>::trailing_zeros() A scalar shape has no trailing collapsed axes.functiontrange(std::optional<signed_index_t>, std::optional<signed_index_t>, std::optional<signed_index_t>) Build atensor_rangefrom explicit start/stop/step values.variableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::transformfnfunctionshape<Dims>::transpose() Reverse the order of the axes.functiontensor<T, NDims>::transpose() Returns a tensor with the order of axes reversed. For 0D and 1D tensors returns*this.functiontrender(const E &) Evaluates an expression and returns the result as a tensor.functiontrender(const E &, shape<Traits::dims>) Evaluates an expression up tosizeand returns the result as a tensor.functionshape<Dims>::trim() Reduce the shape to a lower rank by dropping leading axes.functionshape<0>::trim() Reduce the scalar shape to a smaller rank.functionshape<Dims>::trunc() Drop the last axis. Synonym forremove_back.functiontruncate(Arg &&, std::type_identity_t<shape<Dims>>) Creates an expression that exposesargstarting at the origin with the givensize.functionunivector_base<T, Class, true>::truncate(size_t) Returns subrange of the vector starting from 0. If requested size is greater than this->size, returns only available elementsfunctionunivector_base<T, Class, true>::truncate(size_t) Returns subrange of the vector starting from 0. If requested size is greater than this->size, returns only available elementsfunctiontrunc(E1 &&) Creates an expression that returns the integer part ofxby removing its fractional part.functionspsc_ring_buffer<T>::try_dequeue(T *, size_t, const univector<T, Tag> &, bool) Attempts to dequeuesizeelements frombufferintodest.functionspsc_ring_buffer<T>::try_enqueue(const T *, size_t, univector<T, Tag> &, bool) Attempts to enqueuesizeelements fromsourceintobuffer.functiontstart(signed_index_t, signed_index_t) Build a range that starts atstartand continues to the end of the axis.functiontstep(signed_index_t) Build a range that uses the specified step but no explicit start or stop.functiontstop(signed_index_t, signed_index_t) Build a range that stops atstop.typedefrepresentation<kfr::shape<dims>>::typetypedefrepresentation<kfr::univector<T, Tag>>::typetypedefrepresentation<fmt_t<kfr::univector<T, Tag>, t, width, prec>>::typetypedefaudio_sample_get_type<audio_sample_type::i16>::type Native C++ type corresponding toaudio_sample_type::i16.typedefaudio_sample_get_type<audio_sample_type::i24>::type Native C++ type corresponding toaudio_sample_type::i24.typedefaudio_sample_get_type<audio_sample_type::i32>::type Native C++ type corresponding toaudio_sample_type::i32.typedefaudio_sample_get_type<audio_sample_type::f32>::type Native C++ type corresponding toaudio_sample_type::f32.typedefaudio_sample_get_type<audio_sample_type::f64>::type Native C++ type corresponding toaudio_sample_type::f64.variableaudio_sample_traits<i16>::type Matchingaudio_sample_typeenumerator.variableaudio_sample_traits<i24>::type Matchingaudio_sample_typeenumerator.variableaudio_sample_traits<i32>::type Matchingaudio_sample_typeenumerator.variableaudio_sample_traits<f32>::type Matchingaudio_sample_typeenumerator.variableaudio_sample_traits<f64>::type Matchingaudio_sample_typeenumerator.typedefexpand_cvals<T, Tpl, cvals_t<T, vals...>>::typetypedefrepresentation<kfr::fraction>::typetypedefrepresentation<kfr::tensor<T, dims>>::typetypedefrepresentation<fmt_t<kfr::tensor<T, dims>, t, width, prec>>::typetypedefrepresentation<kfr::npy_decode_result>::typetypedefexpression_with_arguments<Args>::type_listtypedefexpression_with_arguments<Arg>::type_list
U¶
functiontensor<T, NDims>::unary_inplace(Fn &&) Appliesfnto each element in place.functiontensor<T, NDims>::unary(Fn &&) Applies a unary function to each element and returns the resulting tensor.variableundefined_size Sentinel value denoting a dimension whose size is not yet known.typedefunivector2d Alias for a 2D container of univectors.typedefunivector3d Alias for a 3D container of univectors.classunivector_base<T, Class, false> Specialization for univectors that cannot be assigned from expressions. Provides only reference access to the underlying data.classunivector_base<T, Class, is_expression> Base class for allunivectorspecializations, providing common operations such as slicing, references and ring-buffer helpers. Ring-buffer helpers operate on caller-owned cursors and are intended for single-threaded use only; concurrent access requires external synchronization.classunivector_base<T, Class, true> Specialization for univectors that can be assigned from expressions.typedefunivector_dyn Alias forunivector<T, tag_dynamic_vector>;typedefunivector_ref Alias forunivector<T, tag_array_ref>;typedefunivector_tag Tag type that selects the storage strategy of aunivectororabstract_vector.classunivector<T, Size> Class that represent data in KFR. Many KFR functions can take this class as an argument. Can inherit from std::vector, std::array or keep only reference to data and its size.constructorunivector<T, Size>::univector<T, Size>()functionunivector<T, Size>::univector<T, Size>(const T &, const Args &...) Constructs the vector from a brace-enclosed list of values.constructorunivector<T, Size>::univector<T, Size>(const univector<T, Size> &)functionunivector<T, Size>::univector<T, Size>(Input &&) Constructs the vector and initializes it from an input expression.constructorunivector<T, Size>::univector<T, Size>(size_t, const T &) Constructs the vector withSizecopies ofvalue.constructorunivector<T, Size>::univector<T, Size>(univector<T, Size> &)constructorunivector<T, Size>::univector<T, Size>(univector<T, Size> &&)classunivector<T, tag_array_ref> Non-owning univector specialization that holds a reference to external data.constructorunivector<T, tag_array_ref>::univector<T, tag_array_ref>(array_ref<T> &&)constructorunivector<T, tag_array_ref>::univector<T, tag_array_ref>(const array_ref<T> &)functionunivector<T, tag_array_ref>::univector<T, tag_array_ref>(const univector<T, Tag> &) Constructs a reference from a const univector of any storage tag.constructorunivector<T, tag_array_ref>::univector<T, tag_array_ref>(const univector<T, tag_array_ref> &)functionunivector<T, tag_array_ref>::univector<T, tag_array_ref>(const univector<U, Tag> &) Constructs a const reference from a const univector of a different element type. Only participates in overload resolution whenTis const-qualified and the underlying element types match after removing const.functionunivector<T, tag_array_ref>::univector<T, tag_array_ref>(univector<T, Tag> &) Constructs a reference from a mutable univector of any storage tag.constructorunivector<T, tag_array_ref>::univector<T, tag_array_ref>(univector<T, tag_array_ref> &)constructorunivector<T, tag_array_ref>::univector<T, tag_array_ref>(univector<T, tag_array_ref> &&)functionunivector<T, tag_array_ref>::univector<T, tag_array_ref>(univector<U, Tag> &) Constructs a const reference from a mutable univector of a different element type.functionunivector<T, tag_array_ref>::univector<T, tag_array_ref>(univector<U, Tag> &&) Constructs a const reference by taking a reference to the data of a temporary univector.classunivector<T, tag_dynamic_vector> Dynamically sized, owning univector backed bystd::vectorusing KFR'sdata_allocator. Memory is aligned to the maximum vector alignment.constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>()constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(const array_ref<const T> &) Constructs from a constarray_refby copying its elements.constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(const array_ref<T> &) Constructs from a mutablearray_refby copying its elements.functionunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(const std::vector<T, Allocator> &) Deleted overload to prevent construction from astd::vectorwith a foreign allocator.constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(const std::vector<T, data_allocator<T>> &) Copy-constructs from astd::vectorusing the same allocator.constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(const univector<T, tag_dynamic_vector> &)functionunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(Input &&) Constructs the vector from an input expression, resizing to the expression's size. The expression must be finite and have at most one dimension.functionunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(std::vector<T, Allocator> &&) Deleted overload to prevent construction from astd::vectorwith a foreign allocator.constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(std::vector<T, data_allocator<T>> &&) Move-constructs from astd::vectorusing the same allocator.constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(univector<T, tag_dynamic_vector> &)constructorunivector<T, tag_dynamic_vector>::univector<T, tag_dynamic_vector>(univector<T, tag_dynamic_vector> &&)enum constantaudio_sample_type::unknownenum(Unnamed enum at base/univector.hpp:42:1) Compile-time tags selecting the storage strategy of aunivector.functionunpack(E &&...) Creates an expression that fans out a vector input into several output expressions.
V¶
variablerandom_state::v Internal 128-bit state stored as four 32-bit lanes.variableaxis_params<Axis, N>::value Alias ofwidthkept for backwards compatibility.variableexpression_scalar<T>::valuevariablegenerator<T, VecWidth, Class, Twork>::valuevariableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::valuetypedefexpression_traits<T>::value_typetypedefexpression_with_traits<Arg>::value_typetypedefexpression_function<Fn, Args>::value_type Value type produced by the expression.typedefexpression_discard<Tin, Dims>::value_typetypedefexpression_traits<expression_scalar<T>>::value_typetypedefexpression_traits<expression_counter<T, Dims>>::value_typetypedefexpression_traits<expression_slice<Arg>>::value_typetypedefexpression_traits<expression_cast<T, Arg>>::value_typetypedefexpression_traits<expression_lambda<T, Dims, Fn, Rnd>>::value_typetypedefexpression_traits<expression_padded<Arg>>::value_typetypedefexpression_traits<expression_reverse<Arg>>::value_typetypedefexpression_traits<expression_fixshape<Arg, fixed_shape_t<ShapeValues...>>>::value_typetypedefexpression_traits<expression_reshape<Arg, OutDims>>::value_typetypedefexpression_traits<expression_linspace<T, truncated>>::value_typetypedefexpression_traits<expression_concatenate<Arg1, Arg2, ConcatAxis>>::value_typetypedefexpression_unpack<E>::value_typetypedefexpression_adjacent<Fn, E>::value_typetypedefexpression_trace<E>::value_typetypedefexpression_dimensions<Dims, E>::value_typetypedefunivector<T, Size>::value_typetypedefunivector<T, tag_array_ref>::value_typetypedefunivector<T, tag_dynamic_vector>::value_typetypedefexpression_traits<univector<T, Tag>>::value_typetypedefexpression_traits<expression_handle<T, Dims>>::value_typetypedefexpression_placeholder<T, Dims, Key>::value_typetypedefexpression_traits<expression_placeholder<T, Dims, Key>>::value_typetypedefgenerator<T, VecWidth, Class, Twork>::value_typetypedefinline_vector<T, N>::value_typetypedeftensor<T, NDims>::value_typetypedeftensor<T, NDims>::tensor_iterator::value_typetypedeftensor<T, NDims>::nested_iterator_t::value_typetypedefexpression_traits<tensor<T, Dims>>::value_typetypedefexpression_random_uniform<T, Dims, Reference>::value_typetypedefexpression_random_range<T, Dims, Reference>::value_typetypedefexpression_random_normal<T, Dims, Reference>::value_typetypedefexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::value_typetypedefexpression_histogram<Bins, E, TCount>::value_typefunctionhistogram_data<Bins, TCount>::values() Returns a reference to the bin counts, excluding the below/above counters.functionvariance(const E1 &) Computes the variance of the given input expression.typedefhistogram_data<Bins, TCount>::vector_typevariablegenerator_linear<T, VecWidth>::vstepvariablegenerator_exp<T, VecWidth>::vstepvariablegenerator_exp2<T, VecWidth>::vstepvariableexpression_handle<T, Dims>::vtable Pointer to the static vtable for the instance type.
W¶
variableaxis_params<Axis, N>::width The vector width.variablegenerator<T, VecWidth, Class, Twork>::widthvariableexpression_reduce<Tout, Dims, Twork, Tin, ReduceFn, TransformFn, FinalFn>::width
This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.