Alexandria 2.31.0
SDC-CH common library for the Euclid project
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Functions
Euclid Namespace Reference

Namespaces

namespace  Configuration
 
namespace  FilePool
 
namespace  GridContainer
 
namespace  Histogram
 
namespace  MathUtils
 
namespace  NdArray
 
namespace  PhysicsUtils
 
namespace  regex
 
namespace  SOM
 
namespace  SourceCatalog
 
namespace  Table
 
namespace  Tuple
 
namespace  XYDataset
 

Classes

struct  _index_sequence_helper
 
struct  _index_sequence_helper< 0, Rest... >
 
struct  _integer_sequence
 
class  InstOrRefHolder
 
class  Semaphore
 
class  ThreadPool
 Basic thread pool implementation. More...
 

Typedefs

template<std::size_t... Idx>
using _index_sequence = _integer_sequence< std::size_t, Idx... >
 
template<std::size_t N>
using _make_index_sequence = typename _index_sequence_helper< N >::type
 

Functions

template<typename T , typename... Args>
std::unique_ptr< T > make_unique (Args &&... args)
 Constructs an object of type T and wraps it in a std::unique_ptr using args as the parameter list for the constructor of T.
 
template<typename T >
std::vector< T > stringToVector (std::string str, const std::string &separators=std::string(", "))
 

Detailed Description

Copyright (C) 2012-2021 Euclid Science Ground Segment

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3.0 of the License, 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 Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Catalog.cpp

Created on : Feb 4, 2014 Author : Nicolas Morisset

Typedef Documentation

◆ _index_sequence

template<std::size_t... Idx>
using Euclid::_index_sequence = typedef _integer_sequence<std::size_t, Idx...>

Definition at line 50 of file index_sequence.h.

◆ _make_index_sequence

template<std::size_t N>
using Euclid::_make_index_sequence = typedef typename _index_sequence_helper<N>::type

Definition at line 61 of file index_sequence.h.

Function Documentation

◆ make_unique()

template<typename T , typename... Args>
std::unique_ptr< T > Euclid::make_unique ( Args &&...  args)

Constructs an object of type T and wraps it in a std::unique_ptr using args as the parameter list for the constructor of T.

Parameters
argslist of arguments with which the instance of T will be constructed
Returns
std::unique_ptr of the instance of type T

Definition at line 42 of file memory_tools.h.

Referenced by Euclid::MathUtils::createSamplerFromGrid(), and Euclid::MathUtils::createSamplerFromGrid().

◆ stringToVector()

template<typename T >
std::vector< T > Euclid::stringToVector ( std::string  str,
const std::string separators = std::string(", ") 
)

Convert a string into a vector of any given type.

Template Parameters
TThe destination type. boost::lexical_cast<T> will be used internally.
Parameters
strThe original string.
separatorsList of characters to be used as separator. Defaults to the space and the comma.
Returns
A vector of type T.

Definition at line 44 of file StringUtils.h.

References std::vector< T >::begin(), std::vector< T >::end(), std::vector< T >::size(), and std::transform().

Here is the call graph for this function: