All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Functions
Vector.h File Reference

Header file for the Vector CRTP base class. More...

#include <blaze/util/Assert.h>
#include <blaze/util/logging/FunctionTrace.h>

Go to the source code of this file.

Classes

struct  blaze::Vector< typename, bool >
 Base class for N-dimensional vectors.The Vector class is a base class for all arbitrarily sized (N-dimensional) dense and sparse vector classes within the Blaze library. It provides an abstraction from the actual type of the vector, but enables a conversion back to this type via the 'Curiously Recurring Template Pattern' (CRTP). More...
 

Namespaces

namespace  blaze
 Namespace of the Blaze C++ math library.
 

Functions

template<typename VT , bool TF>
size_t blaze::size (Vector< VT, TF > &v)
 Returns the current size/dimension of the vector. More...
 
Vector global functions
template<typename VT , bool TF>
size_t blaze::size (const Vector< VT, TF > &v)
 
template<typename VT1 , bool TF1, typename VT2 , bool TF2>
void blaze::assign (Vector< VT1, TF1 > &lhs, const Vector< VT2, TF2 > &rhs)
 Default implementation of the assignment of a vector to a vector. More...
 
template<typename VT1 , bool TF1, typename VT2 , bool TF2>
void blaze::addAssign (Vector< VT1, TF1 > &lhs, const Vector< VT2, TF2 > &rhs)
 Default implementation of the addition assignment of a vector to a vector. More...
 
template<typename VT1 , bool TF1, typename VT2 , bool TF2>
void blaze::subAssign (Vector< VT1, TF1 > &lhs, const Vector< VT2, TF2 > &rhs)
 Default implementation of the subtraction assignment of a vector to a vector. More...
 
template<typename VT1 , bool TF1, typename VT2 , bool TF2>
void blaze::multAssign (Vector< VT1, TF1 > &lhs, const Vector< VT2, TF2 > &rhs)
 Default implementation of the multiplication assignment of a vector to a vector. More...
 

Detailed Description

Header file for the Vector CRTP base class.

Copyright (C) 2011 Klaus Iglberger - All Rights Reserved

This file is part of the Blaze library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with a special exception for linking and compiling against the Blaze library, the so-called "runtime exception"; see the file COPYING. If not, see http://www.gnu.org/licenses/.