LArOpenCV
1
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Core
Point2DArray.h
Go to the documentation of this file.
1
#ifndef __LARCV_CORE_POINT2DARRAY_H__
2
#define __LARCV_CORE_POINT2DARRAY_H__
3
18
#include <vector>
19
#include "
LArCVTypes.h
"
20
namespace
larcv {
21
22
namespace
convert {
23
class
NDArrayConverter
;
24
}
25
31
class
Point2DArray
{
32
friend
class ::larcv::convert::NDArrayConverter;
33
34
public
:
35
Point2DArray
() :
_data
() {}
36
~Point2DArray
() {}
37
38
void
resize
(
const
size_t
i) {
_data
.resize(i*2); }
39
void
reserve
(
const
size_t
i) {
_data
.reserve(i*2); }
40
void
push_back
(
const
double
x
,
const
double
y
)
41
{
_data
.push_back(x);
_data
.push_back(y); }
42
void
set
(
const
size_t
i,
const
double
x
,
const
double
y
)
43
{
_data
[i] =
x
;
_data
[
_data
.size()/2+i] =
y
; }
44
45
size_t
size
()
const
{
return
_data
.size() / 2; }
46
double
x
(
const
size_t
i)
const
{
return
_data
[i]; }
47
double
y
(
const
size_t
i)
const
{
return
_data
[
_data
.size()/2+i]; }
48
Point2D
point
(
const
size_t
i)
const
49
{
return
Point2D
(
_data
[i],
_data
[
_data
.size()/2+i]); }
50
51
const
std::vector<double>&
raw_data
() {
return
_data
; }
52
53
private
:
54
55
std::vector<double>
_data
;
56
57
};
58
59
}
60
61
#endif
62
// end of doxygen group
Generated on Wed Jan 27 2016 14:36:23 for LArOpenCV by
1.8.4