Changeset 1704 for XIOS/trunk/src/parse_expr/filter_expr_node.hpp
- Timestamp:
- 09/11/19 10:22:09 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/parse_expr/filter_expr_node.hpp
r1542 r1704 5 5 #include <boost/smart_ptr/scoped_ptr.hpp> 6 6 #include "scalar_expr_node.hpp" 7 8 #include "duration.hpp" 7 9 8 10 namespace xios … … 25 27 * \return the output pin of the filter producing the result of the expression 26 28 */ 27 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const = 0;29 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const = 0; 28 30 }; 29 31 … … 42 44 CFilterFieldExprNode(const std::string& fieldId); 43 45 44 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;46 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 45 47 46 48 private: … … 63 65 CFilterTemporalFieldExprNode(const std::string& fieldId); 64 66 65 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;67 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 66 68 67 69 private: … … 86 88 CFilterUnaryOpExprNode(const std::string& opId, IFilterExprNode* child); 87 89 88 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;90 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 89 91 90 92 private: … … 111 113 CFilterScalarFieldOpExprNode(IScalarExprNode* child1, const std::string& opId, IFilterExprNode* child2); 112 114 113 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;115 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 114 116 115 117 private: … … 137 139 CFilterFieldScalarOpExprNode(IFilterExprNode* child1, const std::string& opId, IScalarExprNode* child2); 138 140 139 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;141 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 140 142 141 143 private: … … 162 164 CFilterFieldFieldOpExprNode(IFilterExprNode* child1, const std::string& opId, IFilterExprNode* child2); 163 165 164 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;166 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 165 167 166 168 private: … … 190 192 CFilterScalarScalarFieldOpExprNode(IScalarExprNode* child1, const std::string& opId, IScalarExprNode* child2, IFilterExprNode* child3); 191 193 192 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;194 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 193 195 194 196 private: … … 219 221 CFilterScalarFieldScalarOpExprNode(IScalarExprNode* child1, const std::string& opId, IFilterExprNode* child2, IScalarExprNode* child3); 220 222 221 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;223 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 222 224 223 225 private: … … 248 250 CFilterScalarFieldFieldOpExprNode(IScalarExprNode* child1, const std::string& opId, IFilterExprNode* child2, IFilterExprNode* child3); 249 251 250 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;252 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 251 253 252 254 private: … … 278 280 CFilterFieldScalarScalarOpExprNode(IFilterExprNode* child1, const std::string& opId, IScalarExprNode* child2, IScalarExprNode* child3); 279 281 280 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;282 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 281 283 282 284 private: … … 307 309 CFilterFieldScalarFieldOpExprNode(IFilterExprNode* child1, const std::string& opId, IScalarExprNode* child2, IFilterExprNode* child3); 308 310 309 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;311 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 310 312 311 313 private: … … 335 337 CFilterFieldFieldScalarOpExprNode(IFilterExprNode* child1, const std::string& opId, IFilterExprNode* child2, IScalarExprNode* child3); 336 338 337 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;339 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 338 340 339 341 private: … … 364 366 CFilterFieldFieldFieldOpExprNode(IFilterExprNode* child1, const std::string& opId, IFilterExprNode* child2, IFilterExprNode* child3); 365 367 366 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField ) const;368 virtual std::shared_ptr<COutputPin> reduce(CGarbageCollector& gc, CField& thisField, Time start_graph=-1, Time end_graph=-1) const; 367 369 368 370 private:
Note: See TracChangeset
for help on using the changeset viewer.