Files
libsst/Lib/Include/CML/vector/vector_ops.h
2026-04-03 00:22:39 -05:00

52 lines
1.5 KiB
C++

/* -*- C++ -*- ------------------------------------------------------------
Copyright (c) 2007 Jesse Anders and Demian Nave http://cmldev.net/
The Configurable Math Library (CML) is distributed under the terms of the
Boost Software License, v1.0 (see cml/LICENSE for details).
*-----------------------------------------------------------------------*/
/** @file
* @brief Defines vector operators.
*/
#ifndef vector_ops_h
#define vector_ops_h
#include <cml/et/scalar_ops.h>
#include <cml/vector/vector_expr.h>
#include <cml/vector/vecop_macros.h>
namespace cml {
CML_VEC_UNIOP( operator+, et::OpPos)
CML_VECXPR_UNIOP( operator+, et::OpPos)
CML_VEC_UNIOP( operator-, et::OpNeg)
CML_VECXPR_UNIOP( operator-, et::OpNeg)
CML_VEC_VEC_BINOP( operator+, et::OpAdd)
CML_VECXPR_VEC_BINOP( operator+, et::OpAdd)
CML_VEC_VECXPR_BINOP( operator+, et::OpAdd)
CML_VECXPR_VECXPR_BINOP( operator+, et::OpAdd)
CML_VEC_VEC_BINOP( operator-, et::OpSub)
CML_VECXPR_VEC_BINOP( operator-, et::OpSub)
CML_VEC_VECXPR_BINOP( operator-, et::OpSub)
CML_VECXPR_VECXPR_BINOP( operator-, et::OpSub)
CML_VEC_SCALAR_BINOP( operator*, et::OpMul)
CML_SCALAR_VEC_BINOP( operator*, et::OpMul)
CML_VECXPR_SCALAR_BINOP( operator*, et::OpMul)
CML_SCALAR_VECXPR_BINOP( operator*, et::OpMul)
CML_VEC_SCALAR_BINOP( operator/, et::OpDiv)
CML_VECXPR_SCALAR_BINOP( operator/, et::OpDiv)
} // namespace cml
#endif
// -------------------------------------------------------------------------
// vim:ft=cpp