LSSTApplications
18.1.0
LSSTDataManagementBasePackage
stack
Linux64
afw
18.1.0
include
lsst
afw
table
python
columnView.h
Go to the documentation of this file.
1
/*
2
* LSST Data Management System
3
* Copyright 2008-2017 AURA/LSST.
4
*
5
* This product includes software developed by the
6
* LSST Project (http://www.lsst.org/).
7
*
8
* This program is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the LSST License Statement and
19
* the GNU General Public License along with this program. If not,
20
* see <https://www.lsstcorp.org/LegalNotices/>.
21
*/
22
#ifndef AFW_TABLE_PYBIND11_COLUMNVIEW_H_INCLUDED
23
#define AFW_TABLE_PYBIND11_COLUMNVIEW_H_INCLUDED
24
25
#include "pybind11/pybind11.h"
26
27
#include "
lsst/afw/table/BaseColumnView.h
"
28
29
namespace
lsst
{
30
namespace
afw
{
31
namespace
table {
32
namespace
python {
33
34
template
<
typename
Record>
35
using
PyColumnView
=
36
pybind11::class_<ColumnViewT<Record>,
std::shared_ptr<ColumnViewT<Record>
>,
BaseColumnView
>;
37
47
template
<
typename
Record>
48
PyColumnView<Record>
declareColumnView
(
pybind11::module
& mod,
std::string
const
&
name
,
bool
isBase =
false
) {
49
std::string
fullName;
50
if
(isBase) {
51
fullName =
"_"
+ name +
"ColumnViewBase"
;
52
}
else
{
53
fullName = name +
"ColumnView"
;
54
}
55
PyColumnView<Record>
cls
(mod, fullName.
c_str
());
56
cls
.def(
"getTable"
, &
ColumnViewT<Record>::getTable
);
57
cls
.def_property_readonly(
"table"
, &
ColumnViewT<Record>::getTable
);
58
return
cls
;
59
};
60
}
// namespace python
61
}
// namespace table
62
}
// namespace afw
63
}
// namespace lsst
64
#endif
lsst::afw::table::python::declareColumnView
PyColumnView< Record > declareColumnView(pybind11::module &mod, std::string const &name, bool isBase=false)
Declare member and static functions for a given instantiation of lsst::afw::table::ColumnViewT<Record...
Definition:
columnView.h:48
std::shared_ptr
lsst::afw::table::python::PyColumnView
pybind11::class_< ColumnViewT< Record >, std::shared_ptr< ColumnViewT< Record > >, BaseColumnView > PyColumnView
Definition:
columnView.h:36
lsst::afw::table::BaseColumnView
Column-wise view into a sequence of records that have been allocated contiguously.
Definition:
BaseColumnView.h:83
BaseColumnView.h
lsst::afw
Definition:
imageAlgorithm.dox:1
lsst::afw::geom.transform.transformContinued.name
string name
Definition:
transformContinued.py:32
std::string
STL class.
lsst::afw::geom.transform.transformContinued.cls
cls
Definition:
transformContinued.py:33
lsst
A base class for image defects.
Definition:
imageAlgorithm.dox:1
lsst::meas::modelfit.psf.psfContinued.module
module
Definition:
psfContinued.py:42
std::string::c_str
T c_str(T... args)
lsst::afw::table::ColumnViewT
Definition:
BaseColumnView.h:170
Generated on Thu Aug 8 2019 20:20:04 for LSSTApplications by
1.8.13