model::AssetResponse PbQueryResponseFactory::deserializeAssetResponse( const protocol::AssetResponse &response) const { model::AssetResponse res; auto asset = response.asset(); res.asset = Asset(asset.asset_id(), asset.domain_id(), asset.precision()); return res; }
EXPORT int neighbor_id( int *him, int *me, int dir, int side, PP_GRID *pp_grid) { int *G = pp_grid->gmax; int i, dim = pp_grid->Global_grid.dim; for (i = 0; i < dim; i++) him[i] = me[i]; him[dir] = (me[dir] + 2*side - 1); if (him[dir] < 0) him[dir] = G[dir] - 1; if (him[dir] >= G[dir]) him[dir] = 0; return domain_id(him,G,dim); } /*end neighbor_id*/
void TimingConstraints::remap_nodes(const tatum::util::linear_map<NodeId,NodeId>& node_map) { //Domain Sources tatum::util::linear_map<DomainId,NodeId> remapped_domain_sources(domain_sources_.size()); for(size_t domain_idx = 0; domain_idx < domain_sources_.size(); ++domain_idx) { DomainId domain_id(domain_idx); NodeId old_node_id = domain_sources_[domain_id]; if(old_node_id) { remapped_domain_sources[domain_id] = node_map[old_node_id]; } } domain_sources_ = std::move(remapped_domain_sources); //Constant generators std::unordered_set<NodeId> remapped_constant_generators; for(NodeId node_id : constant_generators_) { remapped_constant_generators.insert(node_map[node_id]); } constant_generators_ = std::move(remapped_constant_generators); //Input Constraints std::multimap<NodeId,IoConstraint> remapped_input_constraints; for(auto kv : input_constraints_) { NodeId new_node_id = node_map[kv.first]; remapped_input_constraints.insert(std::make_pair(new_node_id, kv.second)); } input_constraints_ = std::move(remapped_input_constraints); //Output Constraints std::multimap<NodeId,IoConstraint> remapped_output_constraints; for(auto kv : output_constraints_) { NodeId new_node_id = node_map[kv.first]; remapped_output_constraints.insert(std::make_pair(new_node_id, kv.second)); } output_constraints_ = std::move(remapped_output_constraints); }