ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
matrix.h
Go to the documentation of this file.
1
/***********************************************************************
2
* Software License Agreement (BSD License)
3
*
4
* Copyright 2008-2011 Marius Muja (mariusm@cs.ubc.ca). All rights reserved.
5
* Copyright 2008-2011 David G. Lowe (lowe@cs.ubc.ca). All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions
9
* are met:
10
*
11
* 1. Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* 2. Redistributions in binary form must reproduce the above copyright
14
* notice, this list of conditions and the following disclaimer in the
15
* documentation and/or other materials provided with the distribution.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
*************************************************************************/
28
29
30
#ifndef MPI_MATRIX_H_
31
#define MPI_MATRIX_H_
32
33
#include <
FLANN/util/matrix.h
>
34
#include <boost/serialization/array.hpp>
35
36
37
namespace
boost
{
38
namespace
serialization {
39
40
template
<
class
Archive,
class
T>
41
void
serialize
(Archive & ar,
flann::Matrix<T>
& matrix,
const
unsigned
int
version
)
42
{
43
ar & matrix.
rows
& matrix.
cols
& matrix.
stride
;
44
if
(Archive::is_loading::value) {
45
matrix =
flann::Matrix<T>
(
new
T[matrix.
rows
*matrix.
cols
], matrix.
rows
, matrix.
cols
, matrix.
stride
);
46
}
47
ar & boost::serialization::make_array(matrix.
ptr
(), matrix.
rows
*matrix.
cols
);
48
}
49
50
}
51
}
52
53
54
#endif
/* MPI_MATRIX_H_ */
version
std::string version
Definition:
FileIOFactory.cpp:140
flann::Matrix_::cols
size_t cols
Definition:
matrix.h:73
flann::Matrix_::rows
size_t rows
Definition:
matrix.h:72
flann::Matrix_::stride
size_t stride
Definition:
matrix.h:74
flann::Matrix
Definition:
matrix.h:104
flann::Matrix::ptr
T * ptr() const
Definition:
matrix.h:127
boost::serialization::serialize
void serialize(Archive &ar, flann::Matrix< T > &matrix, const unsigned int version)
Definition:
matrix.h:41
boost
Definition:
index.h:265
matrix.h
libs
Reconstruction
lib
FLANN
mpi
matrix.h
Generated on Wed Jan 28 2026 09:00:59 for ACloudViewer by
1.9.1