diff options
author | Jacques Lucke <jacques@blender.org> | 2020-08-07 19:24:59 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2020-08-07 19:42:21 +0300 |
commit | c50e5fcc344d00b03eb4a3141b5b45944c3570fd (patch) | |
tree | f683ae1a1f38551d160a5be2ee86561d51faca26 /source/blender/functions/intern | |
parent | 28b10224346a9a2e55267f98357991a841eeda5b (diff) |
Cleanup: use C++ style casts in various places
Diffstat (limited to 'source/blender/functions/intern')
3 files changed, 46 insertions, 41 deletions
diff --git a/source/blender/functions/intern/multi_function_network.cc b/source/blender/functions/intern/multi_function_network.cc index cd3c38dd09f..77c8ba6373f 100644 --- a/source/blender/functions/intern/multi_function_network.cc +++ b/source/blender/functions/intern/multi_function_network.cc @@ -285,8 +285,8 @@ std::string MFNetwork::to_dot(Span<const MFNode *> marked_nodes) const Map<const MFNode *, dot::NodeWithSocketsRef> dot_nodes; Vector<const MFNode *> all_nodes; - all_nodes.extend(function_nodes_.as_span()); - all_nodes.extend(dummy_nodes_.as_span()); + all_nodes.extend(function_nodes_.as_span().cast<const MFNode *>()); + all_nodes.extend(dummy_nodes_.as_span().cast<const MFNode *>()); for (const MFNode *node : all_nodes) { dot::Node &dot_node = digraph.new_node(""); diff --git a/source/blender/functions/intern/multi_function_network_evaluation.cc b/source/blender/functions/intern/multi_function_network_evaluation.cc index 480a048b510..c543d86ad34 100644 --- a/source/blender/functions/intern/multi_function_network_evaluation.cc +++ b/source/blender/functions/intern/multi_function_network_evaluation.cc @@ -520,7 +520,7 @@ MFNetworkEvaluationStorage::~MFNetworkEvaluationStorage() continue; } if (any_value->type == ValueType::OwnSingle) { - OwnSingleValue *value = (OwnSingleValue *)any_value; + OwnSingleValue *value = static_cast<OwnSingleValue *>(any_value); GMutableSpan span = value->span; const CPPType &type = span.type(); if (value->is_single_allocated) { @@ -532,7 +532,7 @@ MFNetworkEvaluationStorage::~MFNetworkEvaluationStorage() } } else if (any_value->type == ValueType::OwnVector) { - OwnVectorValue *value = (OwnVectorValue *)any_value; + OwnVectorValue *value = static_cast<OwnVectorValue *>(any_value); delete value->vector_array; } } @@ -550,7 +550,7 @@ bool MFNetworkEvaluationStorage::socket_is_computed(const MFOutputSocket &socket return false; } if (ELEM(any_value->type, ValueType::OutputSingle, ValueType::OutputVector)) { - return ((OutputValue *)any_value)->is_computed; + return static_cast<OutputValue *>(any_value)->is_computed; } return true; } @@ -560,17 +560,17 @@ bool MFNetworkEvaluationStorage::is_same_value_for_every_index(const MFOutputSoc Value *any_value = value_per_output_id_[socket.id()]; switch (any_value->type) { case ValueType::OwnSingle: - return ((OwnSingleValue *)any_value)->span.size() == 1; + return static_cast<OwnSingleValue *>(any_value)->span.size() == 1; case ValueType::OwnVector: - return ((OwnVectorValue *)any_value)->vector_array->size() == 1; + return static_cast<OwnVectorValue *>(any_value)->vector_array->size() == 1; case ValueType::InputSingle: - return ((InputSingleValue *)any_value)->virtual_span.is_single_element(); + return static_cast<InputSingleValue *>(any_value)->virtual_span.is_single_element(); case ValueType::InputVector: - return ((InputVectorValue *)any_value)->virtual_array_span.is_single_array(); + return static_cast<InputVectorValue *>(any_value)->virtual_array_span.is_single_array(); case ValueType::OutputSingle: - return ((OutputSingleValue *)any_value)->span.size() == 1; + return static_cast<OutputSingleValue *>(any_value)->span.size() == 1; case ValueType::OutputVector: - return ((OutputVectorValue *)any_value)->vector_array->size() == 1; + return static_cast<OutputVectorValue *>(any_value)->vector_array->size() == 1; } BLI_assert(false); return false; @@ -605,7 +605,7 @@ void MFNetworkEvaluationStorage::finish_output_socket(const MFOutputSocket &sock } if (ELEM(any_value->type, ValueType::OutputSingle, ValueType::OutputVector)) { - ((OutputValue *)any_value)->is_computed = true; + static_cast<OutputValue *>(any_value)->is_computed = true; } } @@ -627,7 +627,7 @@ void MFNetworkEvaluationStorage::finish_input_socket(const MFInputSocket &socket break; } case ValueType::OwnSingle: { - OwnSingleValue *value = (OwnSingleValue *)any_value; + OwnSingleValue *value = static_cast<OwnSingleValue *>(any_value); BLI_assert(value->max_remaining_users >= 1); value->max_remaining_users--; if (value->max_remaining_users == 0) { @@ -645,7 +645,7 @@ void MFNetworkEvaluationStorage::finish_input_socket(const MFInputSocket &socket break; } case ValueType::OwnVector: { - OwnVectorValue *value = (OwnVectorValue *)any_value; + OwnVectorValue *value = static_cast<OwnVectorValue *>(any_value); BLI_assert(value->max_remaining_users >= 1); value->max_remaining_users--; if (value->max_remaining_users == 0) { @@ -712,7 +712,7 @@ GMutableSpan MFNetworkEvaluationStorage::get_single_output__full(const MFOutputS } BLI_assert(any_value->type == ValueType::OutputSingle); - return ((OutputSingleValue *)any_value)->span; + return static_cast<OutputSingleValue *>(any_value)->span; } GMutableSpan MFNetworkEvaluationStorage::get_single_output__single(const MFOutputSocket &socket) @@ -730,7 +730,7 @@ GMutableSpan MFNetworkEvaluationStorage::get_single_output__single(const MFOutpu } BLI_assert(any_value->type == ValueType::OutputSingle); - GMutableSpan span = ((OutputSingleValue *)any_value)->span; + GMutableSpan span = static_cast<OutputSingleValue *>(any_value)->span; BLI_assert(span.size() == 1); return span; } @@ -749,7 +749,7 @@ GVectorArray &MFNetworkEvaluationStorage::get_vector_output__full(const MFOutput } BLI_assert(any_value->type == ValueType::OutputVector); - return *((OutputVectorValue *)any_value)->vector_array; + return *static_cast<OutputVectorValue *>(any_value)->vector_array; } GVectorArray &MFNetworkEvaluationStorage::get_vector_output__single(const MFOutputSocket &socket) @@ -766,7 +766,7 @@ GVectorArray &MFNetworkEvaluationStorage::get_vector_output__single(const MFOutp } BLI_assert(any_value->type == ValueType::OutputVector); - GVectorArray &vector_array = *((OutputVectorValue *)any_value)->vector_array; + GVectorArray &vector_array = *static_cast<OutputVectorValue *>(any_value)->vector_array; BLI_assert(vector_array.size() == 1); return vector_array; } @@ -785,14 +785,14 @@ GMutableSpan MFNetworkEvaluationStorage::get_mutable_single__full(const MFInputS if (to_any_value != nullptr) { BLI_assert(to_any_value->type == ValueType::OutputSingle); - GMutableSpan span = ((OutputSingleValue *)to_any_value)->span; + GMutableSpan span = static_cast<OutputSingleValue *>(to_any_value)->span; GVSpan virtual_span = this->get_single_input__full(input); virtual_span.materialize_to_uninitialized(mask_, span.data()); return span; } if (from_any_value->type == ValueType::OwnSingle) { - OwnSingleValue *value = (OwnSingleValue *)from_any_value; + OwnSingleValue *value = static_cast<OwnSingleValue *>(from_any_value); if (value->max_remaining_users == 1 && !value->is_single_allocated) { value_per_output_id_[to.id()] = value; value_per_output_id_[from.id()] = nullptr; @@ -826,7 +826,7 @@ GMutableSpan MFNetworkEvaluationStorage::get_mutable_single__single(const MFInpu if (to_any_value != nullptr) { BLI_assert(to_any_value->type == ValueType::OutputSingle); - GMutableSpan span = ((OutputSingleValue *)to_any_value)->span; + GMutableSpan span = static_cast<OutputSingleValue *>(to_any_value)->span; BLI_assert(span.size() == 1); GVSpan virtual_span = this->get_single_input__single(input); type.copy_to_uninitialized(virtual_span.as_single_element(), span[0]); @@ -834,7 +834,7 @@ GMutableSpan MFNetworkEvaluationStorage::get_mutable_single__single(const MFInpu } if (from_any_value->type == ValueType::OwnSingle) { - OwnSingleValue *value = (OwnSingleValue *)from_any_value; + OwnSingleValue *value = static_cast<OwnSingleValue *>(from_any_value); if (value->max_remaining_users == 1) { value_per_output_id_[to.id()] = value; value_per_output_id_[from.id()] = nullptr; @@ -870,14 +870,14 @@ GVectorArray &MFNetworkEvaluationStorage::get_mutable_vector__full(const MFInput if (to_any_value != nullptr) { BLI_assert(to_any_value->type == ValueType::OutputVector); - GVectorArray &vector_array = *((OutputVectorValue *)to_any_value)->vector_array; + GVectorArray &vector_array = *static_cast<OutputVectorValue *>(to_any_value)->vector_array; GVArraySpan virtual_array_span = this->get_vector_input__full(input); vector_array.extend(mask_, virtual_array_span); return vector_array; } if (from_any_value->type == ValueType::OwnVector) { - OwnVectorValue *value = (OwnVectorValue *)from_any_value; + OwnVectorValue *value = static_cast<OwnVectorValue *>(from_any_value); if (value->max_remaining_users == 1) { value_per_output_id_[to.id()] = value; value_per_output_id_[from.id()] = nullptr; @@ -912,7 +912,7 @@ GVectorArray &MFNetworkEvaluationStorage::get_mutable_vector__single(const MFInp if (to_any_value != nullptr) { BLI_assert(to_any_value->type == ValueType::OutputVector); - GVectorArray &vector_array = *((OutputVectorValue *)to_any_value)->vector_array; + GVectorArray &vector_array = *static_cast<OutputVectorValue *>(to_any_value)->vector_array; BLI_assert(vector_array.size() == 1); GVArraySpan virtual_array_span = this->get_vector_input__single(input); vector_array.extend(0, virtual_array_span[0]); @@ -920,7 +920,7 @@ GVectorArray &MFNetworkEvaluationStorage::get_mutable_vector__single(const MFInp } if (from_any_value->type == ValueType::OwnVector) { - OwnVectorValue *value = (OwnVectorValue *)from_any_value; + OwnVectorValue *value = static_cast<OwnVectorValue *>(from_any_value); if (value->max_remaining_users == 1) { value_per_output_id_[to.id()] = value; value_per_output_id_[from.id()] = nullptr; @@ -947,7 +947,7 @@ GVSpan MFNetworkEvaluationStorage::get_single_input__full(const MFInputSocket &s BLI_assert(any_value != nullptr); if (any_value->type == ValueType::OwnSingle) { - OwnSingleValue *value = (OwnSingleValue *)any_value; + OwnSingleValue *value = static_cast<OwnSingleValue *>(any_value); if (value->is_single_allocated) { return GVSpan::FromSingle(value->span.type(), value->span.data(), min_array_size_); } @@ -955,11 +955,11 @@ GVSpan MFNetworkEvaluationStorage::get_single_input__full(const MFInputSocket &s return value->span; } if (any_value->type == ValueType::InputSingle) { - InputSingleValue *value = (InputSingleValue *)any_value; + InputSingleValue *value = static_cast<InputSingleValue *>(any_value); return value->virtual_span; } if (any_value->type == ValueType::OutputSingle) { - OutputSingleValue *value = (OutputSingleValue *)any_value; + OutputSingleValue *value = static_cast<OutputSingleValue *>(any_value); BLI_assert(value->is_computed); return value->span; } @@ -975,17 +975,17 @@ GVSpan MFNetworkEvaluationStorage::get_single_input__single(const MFInputSocket BLI_assert(any_value != nullptr); if (any_value->type == ValueType::OwnSingle) { - OwnSingleValue *value = (OwnSingleValue *)any_value; + OwnSingleValue *value = static_cast<OwnSingleValue *>(any_value); BLI_assert(value->span.size() == 1); return value->span; } if (any_value->type == ValueType::InputSingle) { - InputSingleValue *value = (InputSingleValue *)any_value; + InputSingleValue *value = static_cast<InputSingleValue *>(any_value); BLI_assert(value->virtual_span.is_single_element()); return value->virtual_span; } if (any_value->type == ValueType::OutputSingle) { - OutputSingleValue *value = (OutputSingleValue *)any_value; + OutputSingleValue *value = static_cast<OutputSingleValue *>(any_value); BLI_assert(value->is_computed); BLI_assert(value->span.size() == 1); return value->span; @@ -1002,7 +1002,7 @@ GVArraySpan MFNetworkEvaluationStorage::get_vector_input__full(const MFInputSock BLI_assert(any_value != nullptr); if (any_value->type == ValueType::OwnVector) { - OwnVectorValue *value = (OwnVectorValue *)any_value; + OwnVectorValue *value = static_cast<OwnVectorValue *>(any_value); if (value->vector_array->size() == 1) { GSpan span = (*value->vector_array)[0]; return GVArraySpan(span, min_array_size_); @@ -1011,11 +1011,11 @@ GVArraySpan MFNetworkEvaluationStorage::get_vector_input__full(const MFInputSock return *value->vector_array; } if (any_value->type == ValueType::InputVector) { - InputVectorValue *value = (InputVectorValue *)any_value; + InputVectorValue *value = static_cast<InputVectorValue *>(any_value); return value->virtual_array_span; } if (any_value->type == ValueType::OutputVector) { - OutputVectorValue *value = (OutputVectorValue *)any_value; + OutputVectorValue *value = static_cast<OutputVectorValue *>(any_value); return *value->vector_array; } @@ -1030,17 +1030,17 @@ GVArraySpan MFNetworkEvaluationStorage::get_vector_input__single(const MFInputSo BLI_assert(any_value != nullptr); if (any_value->type == ValueType::OwnVector) { - OwnVectorValue *value = (OwnVectorValue *)any_value; + OwnVectorValue *value = static_cast<OwnVectorValue *>(any_value); BLI_assert(value->vector_array->size() == 1); return *value->vector_array; } if (any_value->type == ValueType::InputVector) { - InputVectorValue *value = (InputVectorValue *)any_value; + InputVectorValue *value = static_cast<InputVectorValue *>(any_value); BLI_assert(value->virtual_array_span.is_single_array()); return value->virtual_array_span; } if (any_value->type == ValueType::OutputVector) { - OutputVectorValue *value = (OutputVectorValue *)any_value; + OutputVectorValue *value = static_cast<OutputVectorValue *>(any_value); BLI_assert(value->vector_array->size() == 1); return *value->vector_array; } diff --git a/source/blender/functions/intern/multi_function_network_optimization.cc b/source/blender/functions/intern/multi_function_network_optimization.cc index e53b9a2c648..e24f157d4f9 100644 --- a/source/blender/functions/intern/multi_function_network_optimization.cc +++ b/source/blender/functions/intern/multi_function_network_optimization.cc @@ -130,7 +130,8 @@ static Vector<MFNode *> find_nodes_based_on_mask(MFNetwork &network, */ void dead_node_removal(MFNetwork &network) { - Array<bool> node_is_used_mask = mask_nodes_to_the_left(network, network.dummy_nodes()); + Array<bool> node_is_used_mask = mask_nodes_to_the_left(network, + network.dummy_nodes().cast<MFNode *>()); Vector<MFNode *> nodes_to_remove = find_nodes_based_on_mask(network, node_is_used_mask, false); network.remove(nodes_to_remove); } @@ -156,7 +157,7 @@ static bool function_node_can_be_constant(MFFunctionNode *node) static Vector<MFNode *> find_non_constant_nodes(MFNetwork &network) { Vector<MFNode *> non_constant_nodes; - non_constant_nodes.extend(network.dummy_nodes()); + non_constant_nodes.extend(network.dummy_nodes().cast<MFNode *>()); for (MFFunctionNode *node : network.function_nodes()) { if (!function_node_can_be_constant(node)) { @@ -299,6 +300,10 @@ static Array<MFOutputSocket *> compute_constant_sockets_and_add_folded_nodes( return add_constant_folded_sockets(network_fn, params, resources, network); } +class MyClass { + MFDummyNode node; +}; + /** * Find function nodes that always output the same value and replace those with constant nodes. */ @@ -318,7 +323,7 @@ void constant_folding(MFNetwork &network, ResourceCollector &resources) network.relink(original_socket, *folded_sockets[i]); } - network.remove(temporary_nodes); + network.remove(temporary_nodes.as_span().cast<MFNode *>()); } /** \} */ |