1
package org.opencv.core;
3
import java.util.Arrays;
7
public class MatOfInt extends Mat {
9
private static final int _depth = CvType.CV_32S;
10
private static final int _channels = 1;
16
protected MatOfInt(long addr) {
18
if( !empty() && checkVector(_channels, _depth) < 0 )
19
throw new IllegalArgumentException("Incompatible Mat");
20
//FIXME: do we need release() here?
23
public static MatOfInt fromNativeAddr(long addr) {
24
return new MatOfInt(addr);
27
public MatOfInt(Mat m) {
28
super(m, Range.all());
29
if( !empty() && checkVector(_channels, _depth) < 0 )
30
throw new IllegalArgumentException("Incompatible Mat");
31
//FIXME: do we need release() here?
34
public MatOfInt(int...a) {
39
public void alloc(int elemNumber) {
41
super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
44
public void fromArray(int...a) {
45
if(a==null || a.length==0)
47
int num = a.length / _channels;
49
put(0, 0, a); //TODO: check ret val!
52
public int[] toArray() {
53
int num = checkVector(_channels, _depth);
55
throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
56
int[] a = new int[num * _channels];
59
get(0, 0, a); //TODO: check ret val!
63
public void fromList(List<Integer> lb) {
64
if(lb==null || lb.size()==0)
66
Integer ab[] = lb.toArray(new Integer[0]);
67
int a[] = new int[ab.length];
68
for(int i=0; i<ab.length; i++)
73
public List<Integer> toList() {
75
Integer ab[] = new Integer[a.length];
76
for(int i=0; i<a.length; i++)
78
return Arrays.asList(ab);