Révision 2017
| tmp/org.txm.specificities.core/src/org/txm/specificities/core/functions/SpecificitiesSelection.java (revision 2017) | ||
|---|---|---|
| 76 | 76 |
public SpecificitiesSelection(String parametersNodePath) {
|
| 77 | 77 |
super(parametersNodePath); |
| 78 | 78 |
} |
| 79 |
|
|
| 80 |
|
|
| 81 |
/** |
|
| 82 |
* @return true if selection is found in the specificities table |
|
| 83 |
*/ |
|
| 79 | 84 |
@Override |
| 80 | 85 |
protected boolean __compute() throws Exception {
|
| 81 | 86 |
Specificities specificities = this.getParent(); |
| ... | ... | |
| 84 | 89 |
String[] rowNames = specificities.getTypeNames(); |
| 85 | 90 |
|
| 86 | 91 |
selectedSpecificitiesIndex = new double[selectedTypeNames.size()][partNames.length]; |
| 92 |
|
|
| 93 |
// initialize with zeros in case a word is not found in the specif table |
|
| 94 |
double[] zeros = new double[partNames.length]; |
|
| 95 |
for (int i = 0 ; i < selectedTypeNames.size() ; i++) {
|
|
| 96 |
selectedSpecificitiesIndex[i] = zeros; |
|
| 97 |
} |
|
| 98 |
|
|
| 99 |
//find words in the specif table |
|
| 100 |
int n = 0; |
|
| 87 | 101 |
for (int i = 0; i < rowNames.length; i++) {
|
| 88 | 102 |
double[] line = tableLines[i]; |
| 89 | 103 |
String rowName = rowNames[i]; |
| 90 | 104 |
if (selectedTypeNames.contains(rowName)) {
|
| 91 | 105 |
selectedSpecificitiesIndex[selectedTypeNames.indexOf(rowName)] = line; |
| 106 |
n++; |
|
| 92 | 107 |
} |
| 93 | 108 |
} |
| 94 | 109 |
|
| 95 |
return selectedSpecificitiesIndex.length > 0;
|
|
| 110 |
return n > 0;
|
|
| 96 | 111 |
} |
| 97 | 112 |
|
| 98 | 113 |
@Override |
Formats disponibles : Unified diff