GemaCoreLib
The GeMA Core library
Loading...
Searching...
No Matches
gmMergeVectors.h
Go to the documentation of this file.
1
10#ifndef _GM_MERGE_VECTORS_H_
11#define _GM_MERGE_VECTORS_H_
12
13#include "gmCoreConfig.h"
15
16#include <QVector>
17
18// The basic INTERNAL worker for all MergeKVectors functions
19// See comments on the cpp file and in the API functions below
20template <class DataT>
21GMC_API_EXPORT void GmMergeKVectors(const QVector<DataT*>& vectors, const QVector<size_t>& sizes,
22 DataT* output);
23
28inline void GmUnsignedMergeKVectors(const QVector<unsigned*>& vectors, const QVector<size_t>& sizes,
29 unsigned* output)
30{
31 GmMergeKVectors<unsigned>(vectors, sizes, output);
32}
33
35template <GmSparseMatrixLayoutTypes T>
41
42// Explicit instantiation of the template for the two supported layout types
43template void GmTripletMergeKVectors<GM_CSR_SPARSE_FORMAT>(const QVector<GmSparseMatrixTripletData<GM_CSR_SPARSE_FORMAT>*>& vectors,
45
46template void GmTripletMergeKVectors<GM_CSC_SPARSE_FORMAT>(const QVector<GmSparseMatrixTripletData<GM_CSC_SPARSE_FORMAT>*>& vectors,
48
49
50#endif
51
Declaration of useful configuration definitions for the Core library.
#define GMC_API_EXPORT
Macro for controlling if the class is being exported (GEMA_CORE_LIB defined) or imported (GEMA_CORE_L...
Definition gmCoreConfig.h:35
void GmUnsignedMergeKVectors(const QVector< unsigned * > &vectors, const QVector< size_t > &sizes, unsigned *output)
Merges a set of "k" ordered vectors whose pointers and sizes are given by vectors and sizes,...
Definition gmMergeVectors.h:28
GMC_API_EXPORT void GmMergeKVectors(const QVector< DataT * > &vectors, const QVector< size_t > &sizes, DataT *output)
Merges a set of "k" ordered vectors whose pointers and sizes are given by vectors and sizes,...
Definition gmMergeVectors.cpp:151
void GmTripletMergeKVectors(const QVector< GmSparseMatrixTripletData< T > * > &vectors, const QVector< size_t > &sizes, GmSparseMatrixTripletData< T > *output)
Overload of GmUnsignedMergeKVectors() for triplet data.
Definition gmMergeVectors.h:36
Declaration of the GmSparseMatrixTripletData and GmSparseMatrixTripletBuffer template classes.
Aux structure used when building sparse matrices with the help of a triplet list. The tripet structur...
Definition gmSparseMatrixTripletData.h:60