Vector.h
Go to the documentation of this file.
1 // this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-
2 
3 // -- BEGIN LICENSE BLOCK ----------------------------------------------
4 // This file is part of FZIs ic_workspace.
5 //
6 // This program is free software licensed under the LGPL
7 // (GNU LESSER GENERAL PUBLIC LICENSE Version 3).
8 // You can find a copy of this license in LICENSE folder in the top
9 // directory of the source code.
10 //
11 // © Copyright 2016 FZI Forschungszentrum Informatik, Karlsruhe, Germany
12 //
13 // -- END LICENSE BLOCK ------------------------------------------------
14 
15 //----------------------------------------------------------------------
22 //----------------------------------------------------------------------
23 #ifndef ICL_CORE_VECTOR_H_INCLUDED
24 #define ICL_CORE_VECTOR_H_INCLUDED
25 
26 #include <vector>
27 
28 #include "icl_core/BaseTypes.h"
30 
31 namespace icl_core {
32 
33 // \todo Create a wrapper class (and/or additional RT-safe implementations).
34 template <typename T>
35 class Vector : public std::vector<T>
36 {
37 public:
38  typedef typename std::vector<T>::size_type size_type;
39 
40  Vector() : std::vector<T>() {}
41  Vector(const Vector& c) : std::vector<T>(c) { }
42  Vector(const std::vector<T>& c) : std::vector<T>(c) { }
43  explicit Vector(size_type num, typename ConvertToRef<T>::ToConstRef val = DefaultConstruct<T>::C())
44  : std::vector<T>(num, val)
45  { }
46  template <typename input_iterator>
47  Vector(input_iterator start, input_iterator end) : std::vector<T>(start, end) { }
48 };
49 
60 
61 }
62 
63 #endif
Helper definitions for template programming.
std::vector< T >::size_type size_type
Definition: Vector.h:38
Vector< float > FloatVector
Definition: Vector.h:58
Vector< int64_t > Signed64Vector
Definition: Vector.h:57
Vector< double > DoubleVector
Definition: Vector.h:59
Vector< uint64_t > Unsigned64Vector
Definition: Vector.h:53
Vector< uint16_t > Unsigned16Vector
Definition: Vector.h:51
Vector< uint32_t > Unsigned32Vector
Definition: Vector.h:52
Vector(const Vector &c)
Definition: Vector.h:41
Vector< int16_t > Signed16Vector
Definition: Vector.h:55
Vector< int8_t > Signed8Vector
Definition: Vector.h:54
Contains Interface base classes and base types.
Vector(size_type num, typename ConvertToRef< T >::ToConstRef val=DefaultConstruct< T >::C())
Definition: Vector.h:43
Vector< uint8_t > Unsigned8Vector
Definition: Vector.h:50
Vector(input_iterator start, input_iterator end)
Definition: Vector.h:47
Vector< int32_t > Signed32Vector
Definition: Vector.h:56
Vector(const std::vector< T > &c)
Definition: Vector.h:42


fzi_icl_core
Author(s):
autogenerated on Mon Jun 10 2019 13:17:58