~rojtberg/artoolkitplus/trunk

« back to all changes in this revision

Viewing changes to src/Tracker.cpp

  • Committer: Pavel Rojtberg
  • Date: 2012-08-02 07:58:07 UTC
  • Revision ID: pavel@rojtberg.net-20120802075807-9qds0b8fq0kn2r4w
* cleanup Camera
* fix assertion in Hull Tracking
* fix crash in MultiMarker destructor
* allow setting external Camera in Multimarker

Show diffs side-by-side

added added

removed removed

Lines of Context:
36
36
        int maxLoadPatterns) :
37
37
    PATTERN_WIDTH(pattWidth), PATTERN_HEIGHT(pattHeight), PATTERN_SAMPLE_NUM(pattSamples),
38
38
            MAX_LOAD_PATTERNS(maxLoadPatterns), MAX_IMAGE_PATTERNS(maxImagePatterns),
39
 
            WORK_SIZE(1024 * MAX_IMAGE_PATTERNS), sprev_info(2, vector<arPrevInfo> (MAX_IMAGE_PATTERNS)),
 
39
            WORK_SIZE(1024 * MAX_IMAGE_PATTERNS), sprev_info(2, vector<arPrevInfo> (MAX_IMAGE_PATTERNS)), patf(0),
40
40
            pat(MAX_LOAD_PATTERNS, vector<vector<int> > (4, vector<int> (PATTERN_HEIGHT * PATTERN_WIDTH * 3))),
41
41
            patBW(MAX_LOAD_PATTERNS, vector<vector<int> > (4, vector<int> (PATTERN_HEIGHT * PATTERN_WIDTH * 3))),
42
42
            evec(EVEC_MAX, vector<ARFloat> (PATTERN_HEIGHT * PATTERN_WIDTH * 3)),
44
44
    screenWidth = imWidth;
45
45
    screenHeight = imHeight;
46
46
 
47
 
    int i;
48
 
 
49
47
    // dynamically allocate template arguments
50
 
    patf = new int[MAX_LOAD_PATTERNS];
 
48
    if(MAX_LOAD_PATTERNS > 0) {
 
49
        patf = new int[MAX_LOAD_PATTERNS];
 
50
        std::fill(patf, patf+MAX_LOAD_PATTERNS, 0);
 
51
    }
51
52
 
52
53
    patpow = new ARFloat[MAX_LOAD_PATTERNS][4];
53
54
    patpowBW = new ARFloat[MAX_LOAD_PATTERNS][4];
73
74
 
74
75
    pattern_num = -1;
75
76
 
76
 
    for (i = 0; i < MAX_LOAD_PATTERNS; i++)
77
 
        patf[i] = 0;
78
 
 
79
77
    evecf = 0;
80
78
    evecBWf = 0;
81
79