Changeset 2021 for XIOS/dev/dev_trunk_graph/src/filter
- Timestamp:
- 01/22/21 18:35:44 (3 years ago)
- Location:
- XIOS/dev/dev_trunk_graph/src/filter
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/dev_trunk_graph/src/filter/client_to_server_store_filter.cpp
r2019 r2021 38 38 this->graphPackage->filterId = CWorkflowGraph::getNodeSize(); 39 39 if(!data[0]->graphPackage) data[0]->graphPackage = new CGraphDataPackage; 40 data[0]->graphPackage->currentField = this->graphPackage->inFields[0];40 41 41 std::rotate(this->graphPackage->inFields.begin(), this->graphPackage->inFields.begin() + 1, this->graphPackage->inFields.end()); 42 42 43 CWorkflowGraph::addNode("Client to Server Store filter", 5, true, 1, data[0]);44 43 CWorkflowGraph::addNode("Client to Server Store filter", 6, true, 1, data[0]); 44 45 45 CWorkflowGraph::addEdge(data[0]->graphPackage->fromFilter, this->graphPackage->filterId, data[0]); 46 data[0]->graphPackage->fromFilter = this->graphPackage->filterId; 46 // flux can be redirected to other filters. So don't change the 'from' parameter 47 //data[0]->graphPackage->fromFilter = this->graphPackage->filterId; 48 data[0]->graphPackage->currentField = this->graphPackage->inFields[0]; 47 49 } 48 50 } -
XIOS/dev/dev_trunk_graph/src/filter/pass_through_filter.cpp
r2019 r2021 19 19 if(this->graphEnabled) 20 20 { 21 if(data[0]->graphPackage->currentField->getId() == this->graphPackage->inFields[0]->getId()) 22 { 23 std::cout<<"PASS THROUGH FILTER OMITTED "<<this<<std::endl; 24 std::cout<<data[0]->graphPackage->currentField->getId()<< "-------"<< this->graphPackage->inFields[0]->getId()<<std::endl; 25 return; 26 } 21 27 this->graphPackage->filterId = CWorkflowGraph::getNodeSize(); 22 28 … … 26 32 data[0]->graphPackage->fromFilter = -1; 27 33 } 28 34 35 CWorkflowGraph::addNode("Pass through filter", 2, false, 1, data[0]); 29 36 data[0]->graphPackage->currentField = this->graphPackage->inFields[0]; 30 37 std::rotate(this->graphPackage->inFields.begin(), this->graphPackage->inFields.begin() + 1, this->graphPackage->inFields.end()); 31 38 32 CWorkflowGraph::addNode("Pass through filter", 2, false, 1, data[0]);33 39 CWorkflowGraph::addEdge(data[0]->graphPackage->fromFilter, this->graphPackage->filterId, data[0]); 34 40 data[0]->graphPackage->fromFilter = this->graphPackage->filterId; -
XIOS/dev/dev_trunk_graph/src/filter/temporal_filter.cpp
r2019 r2021 34 34 if(this->graphEnabled) 35 35 { 36 if(!data[0]->graphPackage) data[0]->graphPackage = new CGraphDataPackage; 37 data[0]->graphPackage->currentField = this->graphPackage->inFields[0]; 38 std::rotate(this->graphPackage->inFields.begin(), this->graphPackage->inFields.begin() + 1, this->graphPackage->inFields.end()); 36 if(!data[0]->graphPackage) 37 { 38 data[0]->graphPackage = new CGraphDataPackage; 39 } 39 40 40 41 if(this->graphPackage->sourceFilterIds.size()==0) … … 46 47 CWorkflowGraph::addEdge(data[0]->graphPackage->fromFilter, this->graphPackage->filterId, data[0]); 47 48 data[0]->graphPackage->fromFilter = this->graphPackage->filterId; 48 this->graphPackage->sourceFilterIds.push_back(data[0]->graphPackage->fromFilter); 49 this->graphPackage->sourceFilterIds.push_back(data[0]->graphPackage->fromFilter); 50 data[0]->graphPackage->currentField = this->graphPackage->inFields[0]; 51 std::rotate(this->graphPackage->inFields.begin(), this->graphPackage->inFields.begin() + 1, this->graphPackage->inFields.end()); 49 52 } 50 53 -
XIOS/dev/dev_trunk_graph/src/filter/transform_filter.cpp
r2019 r2021 1 1 #include "transform_filter.hpp" 2 2 #include "grid_algorithm.hpp" 3 3 #include "workflow_graph.hpp" 4 4 namespace xios 5 5 { … … 19 19 packet->timestamp = data[0]->timestamp; 20 20 packet->status = data[0]->status; 21 21 22 22 if (packet->status == CDataPacket::NO_ERROR) 23 23 { 24 cout<<"transformeFilter = "<<this<<" and graphEnabled = "<<this->graphEnabled<<std::endl; 25 buildWorkflowGraph(data, packet, algorithm_); 26 24 27 if (data.size()>1) 25 28 { … … 33 36 } 34 37 35 38 void CTransformFilter::buildWorkflowGraph(std::vector<CDataPacketPtr> data, CDataPacketPtr packet, CGridAlgorithm* algorithm) 39 { 40 if(this->graphEnabled) 41 { 42 this->graphPackage->filterId = CWorkflowGraph::getNodeSize(); 43 44 packet->graphPackage = new CGraphDataPackage; 45 if(data[0]->graphPackage) 46 { 47 packet->graphPackage->fromFilter = data[0]->graphPackage->fromFilter; 48 } 49 packet->graphPackage->toFilter = data[0]->graphPackage->toFilter; 50 packet->graphPackage->current_filter_name = data[0]->graphPackage->current_filter_name; 51 packet->graphPackage->contextId = data[0]->graphPackage->contextId; 52 packet->graphPackage->currentField = data[0]->graphPackage->currentField;//this->graphPackage->inFields[0]; 53 std::rotate(this->graphPackage->inFields.begin(), this->graphPackage->inFields.begin() + 1, this->graphPackage->inFields.end()); 54 55 CWorkflowGraph::addNode("Spatial transform filter "+algorithm->getAlgoName(), 4, false, 1, packet); 56 CWorkflowGraph::addEdge(packet->graphPackage->fromFilter, this->graphPackage->filterId, packet); 57 packet->graphPackage->fromFilter = this->graphPackage->filterId; 58 packet->graphPackage->currentField = this->graphPackage->inFields[0]; 59 } 60 } 36 61 37 62 } -
XIOS/dev/dev_trunk_graph/src/filter/transform_filter.hpp
r2019 r2021 22 22 */ 23 23 CDataPacketPtr virtual apply(std::vector<CDataPacketPtr> data) ; 24 void buildWorkflowGraph(std::vector<CDataPacketPtr> data, CDataPacketPtr packet, CGridAlgorithm* algorithm); 25 24 26 // void apply(const CArray<double, 1>& dataSrc, CArray<double,1>& dataDest); 25 27
Note: See TracChangeset
for help on using the changeset viewer.