factory.h File Reference

Base class for class factories and memory allocation functions. More...

#include <complex>
#include <itpp/base/binary.h>

Go to the source code of this file.

Classes

class  itpp::Factory
 Base class for class factories. More...

Functions

template<class T >
void itpp::create_elements (T *&ptr, int n, const Factory &)
 Create an n-length array of T to be used as Array, Vec or Mat elements.
template<>
void itpp::create_elements< unsigned char > (unsigned char *&ptr, int n, const Factory &)
 Specialization for unsigned char data arrays (used in GF2Mat).
template<>
void itpp::create_elements< bin > (bin *&ptr, int n, const Factory &)
 Specialization for binary data arrays.
template<>
void itpp::create_elements< short int > (short int *&ptr, int n, const Factory &)
 Specialization for short integer data arrays.
template<>
void itpp::create_elements< int > (int *&ptr, int n, const Factory &)
 Specialization for integer data arrays.
template<>
void itpp::create_elements< double > (double *&ptr, int n, const Factory &)
 Specialization for 16-byte aligned double data arrays.
template<>
void itpp::create_elements< std::complex< double > > (std::complex< double > *&ptr, int n, const Factory &)
 Specialization for 16-byte aligned complex double data arrays.
template<class T >
void itpp::destroy_elements (T *&ptr, int n)
 Destroy an array of Array, Vec or Mat elements.
template<>
void itpp::destroy_elements< unsigned char > (unsigned char *&ptr, int)
 Specialization for unsigned char data arrays (used in GF2Mat).
template<>
void itpp::destroy_elements< bin > (bin *&ptr, int)
 Specialization for binary data arrays.
template<>
void itpp::destroy_elements< short int > (short int *&ptr, int)
 Specialization for short integer data arrays.
template<>
void itpp::destroy_elements< int > (int *&ptr, int)
 Specialization for integer data arrays.
template<>
void itpp::destroy_elements< double > (double *&ptr, int)
 Specialisation for 16-byte aligned double data arrays.
template<>
void itpp::destroy_elements< std::complex< double > > (std::complex< double > *&ptr, int)
 Specialisation for 16-byte aligned complex double data arrays.
template<class T >
void itpp::create_elements (Array< T > *&ptr, int n, const Factory &f)
 Create an n-length array of Array<T> to be used as Array elements.
template<class T >
void itpp::create_elements (Mat< T > *&ptr, int n, const Factory &f)
 Create an n-length array of Mat<T> to be used as Array elements.
template<class T >
void itpp::create_elements (Vec< T > *&ptr, int n, const Factory &f)
 Create an n-length array of Vec<T> to be used as Array elements.

Variables

const Factory itpp::DEFAULT_FACTORY
 Default (dummy) factory.


Detailed Description

Base class for class factories and memory allocation functions.

Author:
Johan Bergman and Adam Piatyszek
-------------------------------------------------------------------------

Copyright (C) 1995-2008 (see AUTHORS file for a list of contributors)

This file is part of IT++ - a C++ library of mathematical, signal processing, speech processing, and communications classes and functions.

IT++ 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 of the License, or (at your option) any later version.

IT++ 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 IT++. If not, see <http://www.gnu.org/licenses/>.

-------------------------------------------------------------------------


Generated on Tue Jun 2 10:02:13 2009 for mixpp by  doxygen 1.5.8