File: /home/padewitte/projets/webcomponents/myscript-js/src/output/analyzer/analyzerDocument.js
'use strict';
(function (scope) {
/**
* Analyzer document
*
* @class AnalyzerDocument
* @extends AnalyzerElement
* @param {Object} [obj]
* @constructor
*/
function AnalyzerDocument(obj) {
scope.AnalyzerElement.call(this, obj);
this.textLines = [];
this.shapes = [];
this.tables = [];
this.groups = [];
if (obj) {
for (var i in obj.textLines) {
this.textLines.push(new scope.AnalyzerTextLine(obj.textLines[i]));
}
for (var j in obj.shapes) {
this.shapes.push(new scope.ShapeSegment(obj.shapes[j]));
}
for (var k in obj.tables) {
this.tables.push(new scope.AnalyzerTable(obj.tables[k]));
}
for (var l in obj.groups) {
this.groups.push(new scope.AnalyzerGroup(obj.groups[l]));
}
}
}
/**
* Inheritance property
*/
AnalyzerDocument.prototype = new scope.AnalyzerElement();
/**
* Constructor property
*/
AnalyzerDocument.prototype.constructor = AnalyzerDocument;
/**
* Get text lines
*
* @method getTextLines
* @returns {AnalyzerTextLine[]}
*/
AnalyzerDocument.prototype.getTextLines = function () {
return this.textLines;
};
/**
* Get shapes
*
* @method getShapes
* @returns {ShapeSegment[]}
*/
AnalyzerDocument.prototype.getShapes = function () {
return this.shapes;
};
/**
* Get tables
*
* @method getTables
* @returns {AnalyzerTable[]}
*/
AnalyzerDocument.prototype.getTables = function () {
return this.tables;
};
/**
* Get groups
*
* @method getGroups
* @returns {AnalyzerGroup[]}
*/
AnalyzerDocument.prototype.getGroups = function () {
return this.groups;
};
/**
* Has scratch-out results
*
* @method hasScratchOutResults
* @returns {Boolean}
*/
AnalyzerDocument.prototype.hasScratchOutResults = function () {
for (var i in this.getShapes()) {
var currentSeg = this.getShapes()[i];
for (var j in currentSeg.getCandidates()) {
var currentCandidate = currentSeg.getCandidates()[j];
if (currentCandidate instanceof scope.ShapeScratchOut) {
return true;
}
}
}
return false;
};
// Export
scope.AnalyzerDocument = AnalyzerDocument;
})(MyScript);