Changeset 1577 for XIOS/dev/dev_olga/src
- Timestamp:
- 09/11/18 10:17:46 (6 years ago)
- Location:
- XIOS/dev/dev_olga/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/dev_olga/src/io/nc4_data_input.cpp
r1563 r1577 85 85 count.push_back(domain->nj); 86 86 } 87 --idx ;88 87 start.push_back(domain->ibegin); 89 88 count.push_back(domain->ni); 90 91 --idx ;92 89 --idxDomain; 93 90 } … … 97 94 start.push_back(axis->begin); 98 95 count.push_back(axis->n); 99 --idx ;96 --idxAxis ; 100 97 } 101 98 else … … 106 103 count.push_back(1); 107 104 } 108 --idx;109 105 } 110 106 } -
XIOS/dev/dev_olga/src/node/field.cpp
r1568 r1577 1469 1469 CFieldGroup* group = CFieldGroup::get(gref); 1470 1470 CFieldGroup* owner = CFieldGroup::get(boost::polymorphic_downcast<CFieldGroup*>(this)); 1471 1471 owner->setAttributes(group); // inherite of attributes of group reference 1472 1472 1473 std::vector<CField*> allChildren = group->getAllChildren(); 1473 1474 std::vector<CField*>::iterator it = allChildren.begin(), end = allChildren.end(); -
XIOS/dev/dev_olga/src/parse_expr/filter_expr_node.cpp
r1542 r1577 11 11 { /* Nothing to do */ } 12 12 13 13 14 std::shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const 14 15 { 15 16 std::shared_ptr<COutputPin> outputPin; 16 17 17 if (fieldId == "this") 18 outputPin = thisField.getSelfReference(gc); 19 else if (CField::has(fieldId)) 18 if (fieldId == "this") outputPin = thisField.getSelfReference(gc); 19 else 20 20 { 21 CField* field = CField::get(fieldId); 22 if (field == &thisField) 23 ERROR("std::shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 24 << "The field " << fieldId << " has an invalid reference to itself. " 25 << "Use the keyword \"this\" if you want to reference the input data sent to this field."); 26 27 field->buildFilterGraph(gc, false); 28 outputPin = field->getInstantDataFilter(); 21 string id ; 22 23 if (fieldId == "this_ref") 24 { 25 if (thisField.field_ref.isEmpty()) 26 { 27 ERROR("shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 28 << "field_ref attribute is empty."); 29 } 30 else id = thisField.field_ref ; 31 } 32 else id= fieldId ; 33 34 if (CField::has(id)) 35 { 36 CField* field = CField::get(id); 37 if (field == &thisField) 38 ERROR("shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 39 << "The field " << id << " has an invalid reference to itself. " 40 << "Use the keyword \"this\" if you want to reference the input data sent to this field."); 41 42 field->buildFilterGraph(gc, false); 43 outputPin = field->getInstantDataFilter(); 44 } 45 else ERROR("boost::shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 46 << "The field " << id << " does not exist."); 29 47 } 30 else31 ERROR("std::shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const",32 << "The field " << fieldId << " does not exist.");33 34 48 return outputPin; 35 49 } 50 36 51 37 52 CFilterTemporalFieldExprNode::CFilterTemporalFieldExprNode(const std::string& fieldId) … … 39 54 { /* Nothing to do */ } 40 55 56 41 57 std::shared_ptr<COutputPin> CFilterTemporalFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const 42 58 { … … 45 61 if (fieldId == "this") 46 62 outputPin = thisField.getSelfTemporalDataFilter(gc, thisField.freq_op.isEmpty() ? TimeStep : thisField.freq_op); 47 else if (CField::has(fieldId))63 else 48 64 { 49 CField* field = CField::get(fieldId); 50 if (field == &thisField) 51 ERROR("std::shared_ptr<COutputPin> CFilterTemporalFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 52 << "The field " << fieldId << " has an invalid reference to itself. " 53 << "Use the keyword \"this\" if you want to reference the input data sent to this field."); 54 55 field->buildFilterGraph(gc, false); 56 outputPin = field->getTemporalDataFilter(gc, thisField.freq_op.isEmpty() ? TimeStep : thisField.freq_op); 65 string id ; 66 67 if (fieldId == "this_ref") 68 { 69 if (thisField.field_ref.isEmpty()) 70 { 71 ERROR("shared_ptr<COutputPin> CFilterFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 72 << "field_ref attribute is empty."); 73 } 74 else id = thisField.field_ref ; 75 } 76 else id = fieldId ; 77 78 if (CField::has(id)) 79 { 80 CField* field = CField::get(id); 81 if (field == &thisField) 82 ERROR("shared_ptr<COutputPin> CFilterTemporalFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 83 << "The field " << fieldId << " has an invalid reference to itself. " 84 << "Use the keyword \"this\" if you want to reference the input data sent to this field."); 85 86 field->buildFilterGraph(gc, false); 87 outputPin = field->getTemporalDataFilter(gc, thisField.freq_op.isEmpty() ? TimeStep : thisField.freq_op); 88 } 89 else 90 ERROR("shared_ptr<COutputPin> CFilterTemporalFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const", 91 << "The field " << fieldId << " does not exist."); 57 92 } 58 else59 ERROR("std::shared_ptr<COutputPin> CFilterTemporalFieldExprNode::reduce(CGarbageCollector& gc, CField& thisField) const",60 << "The field " << fieldId << " does not exist.");61 62 93 return outputPin; 63 94 } 95 64 96 65 97 CFilterUnaryOpExprNode::CFilterUnaryOpExprNode(const std::string& opId, IFilterExprNode* child)
Note: See TracChangeset
for help on using the changeset viewer.