lsst.astshim
gf5dcc679e7+7aca86229d
Toggle main menu visibility
Loading...
Searching...
No Matches
include
astshim
base.h
Go to the documentation of this file.
1
/*
2
* LSST Data Management System
3
* Copyright 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 ASTSHIM_BASE_H
23
#define ASTSHIM_BASE_H
24
25
#include <string>
26
#include <stdexcept>
27
#include <vector>
28
29
#include "ndarray.h"
30
31
extern
"C"
{
32
#include "star/ast.h"
33
}
34
35
// Do not delete this or free functions and enums will not be documented
37
namespace
ast
{
38
42
using
Array2D
= ndarray::Array<double, 2, 2>;
46
using
ConstArray2D
= ndarray::Array<const double, 2, 2>;
50
using
PointI
=
std::vector<int>
;
57
using
PointD
=
std::vector<double>
;
58
62
enum class
DataType
{
63
IntType
= AST__INTTYPE,
64
ShortIntType
= AST__SINTTYPE,
65
ByteType
= AST__BYTETYPE,
66
DoubleType
= AST__DOUBLETYPE,
67
FloatType
= AST__FLOATTYPE,
68
StringType
= AST__STRINGTYPE,
69
ObjectType
= AST__OBJECTTYPE,
70
PointerType
= AST__POINTERTYPE,
71
UndefinedType
= AST__UNDEFTYPE,
72
BadType
= AST__BADTYPE
73
};
74
94
ConstArray2D
arrayFromVector
(
std::vector<double>
const
&vec,
int
nAxes);
95
96
Array2D
arrayFromVector
(
std::vector<double>
&vec,
int
nAxes);
98
108
void
assertOK
(AstObject *rawPtr1 =
nullptr
, AstObject *rawPtr2 =
nullptr
);
109
140
inline
bool
escapes
(
int
include = -1) {
141
assertOK
();
142
int
ret = astEscapes(include);
143
assertOK
();
144
return
ret;
145
}
146
147
inline
int
ast_version
(
void
) {
148
return
astVersion;
149
}
150
151
}
// namespace ast
152
153
#endif
ast
AST wrapper classes and functions.
Definition
attributes_channel.dox:1
ast::ConstArray2D
ndarray::Array< const double, 2, 2 > ConstArray2D
2D array of const double; typically used for lists of const points
Definition
base.h:46
ast::PointI
std::vector< int > PointI
Vector of ints; typically used for the bounds of Mapping.tranGridForward and inverse.
Definition
base.h:50
ast::DataType
DataType
Data types held by a KeyMap.
Definition
base.h:62
ast::DataType::IntType
@ IntType
Definition
base.h:63
ast::DataType::ByteType
@ ByteType
Definition
base.h:65
ast::DataType::DoubleType
@ DoubleType
Definition
base.h:66
ast::DataType::FloatType
@ FloatType
Definition
base.h:67
ast::DataType::UndefinedType
@ UndefinedType
Definition
base.h:71
ast::DataType::BadType
@ BadType
Definition
base.h:72
ast::DataType::ObjectType
@ ObjectType
Definition
base.h:69
ast::DataType::StringType
@ StringType
Definition
base.h:68
ast::DataType::PointerType
@ PointerType
Definition
base.h:70
ast::DataType::ShortIntType
@ ShortIntType
Definition
base.h:64
ast::ast_version
int ast_version(void)
Definition
base.h:147
ast::PointD
std::vector< double > PointD
Vector of double; used for bounds, points.
Definition
base.h:57
ast::Array2D
ndarray::Array< double, 2, 2 > Array2D
2D array of const double; typically used for lists of const points
Definition
base.h:42
ast::escapes
bool escapes(int include=-1)
Control whether graphical escape sequences are included in strings.
Definition
base.h:140
ast::assertOK
void assertOK(AstObject *rawPtr1=nullptr, AstObject *rawPtr2=nullptr)
Throw std::runtime_error if AST's state is bad.
Definition
base.cc:49
ast::arrayFromVector
ConstArray2D arrayFromVector(std::vector< double > const &vec, int nAxes)
Reshape a vector as a 2-dimensional array that shares the same memory.
Definition
base.cc:65
std::vector
Generated on
for lsst.astshim by
1.17.0