From 110b5741e06692f025e164c81bd36bf579727d1e Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Mon, 3 Feb 2020 01:27:00 +1100 Subject: [PATCH] nodes: remove user input mutexes These were no longer ever used and thus served no purpose. --- app/node/input.cpp | 6 +++--- app/node/input.h | 2 +- app/node/inputarray.cpp | 8 +------- app/node/inputarray.h | 2 +- app/node/node.cpp | 12 +----------- app/node/node.h | 11 ----------- app/node/param.cpp | 24 ++---------------------- app/node/param.h | 4 ++-- 8 files changed, 11 insertions(+), 58 deletions(-) diff --git a/app/node/input.cpp b/app/node/input.cpp index b86b01a88..85a211568 100644 --- a/app/node/input.cpp +++ b/app/node/input.cpp @@ -869,7 +869,7 @@ void NodeInput::set_maximum(const QVariant &max) has_maximum_ = true; } -void NodeInput::CopyValues(NodeInput *source, NodeInput *dest, bool include_connections, bool lock_connections) +void NodeInput::CopyValues(NodeInput *source, NodeInput *dest, bool include_connections) { Q_ASSERT(source->id() == dest->id()); @@ -889,7 +889,7 @@ void NodeInput::CopyValues(NodeInput *source, NodeInput *dest, bool include_conn // Copy connections if (include_connections && source->get_connected_output() != nullptr) { - ConnectEdge(source->get_connected_output(), dest, lock_connections); + ConnectEdge(source->get_connected_output(), dest); } // If these inputs are an array, copy the subparams too @@ -897,7 +897,7 @@ void NodeInput::CopyValues(NodeInput *source, NodeInput *dest, bool include_conn NodeInputArray* src_array = static_cast(source); NodeInputArray* dst_array = static_cast(dest); - dst_array->SetSize(src_array->GetSize(), lock_connections); + dst_array->SetSize(src_array->GetSize()); for (int i=0;iGetSize();i++) { CopyValues(src_array->At(i), dst_array->At(i), include_connections); diff --git a/app/node/input.h b/app/node/input.h index dede7641d..80f703ba5 100644 --- a/app/node/input.h +++ b/app/node/input.h @@ -227,7 +227,7 @@ public: /** * @brief Copy all values including keyframe information and connections from another NodeInput */ - static void CopyValues(NodeInput* source, NodeInput* dest, bool include_connections = true, bool lock_connections = true); + static void CopyValues(NodeInput* source, NodeInput* dest, bool include_connections = true); QVector split_normal_value_into_track_values(const QVariant &value) const; diff --git a/app/node/inputarray.cpp b/app/node/inputarray.cpp index d3e0c12d3..7cc68015f 100644 --- a/app/node/inputarray.cpp +++ b/app/node/inputarray.cpp @@ -26,7 +26,7 @@ void NodeInputArray::Prepend() InsertAt(0); } -void NodeInputArray::SetSize(int size, bool lock) +void NodeInputArray::SetSize(int size) { int old_size = GetSize(); @@ -42,9 +42,6 @@ void NodeInputArray::SetSize(int size, bool lock) } } - if (lock) - parentNode()->LockUserInput(); - sub_params_.resize(size); if (size > old_size) { @@ -65,9 +62,6 @@ void NodeInputArray::SetSize(int size, bool lock) } } - if (lock) - parentNode()->UnlockUserInput(); - emit SizeChanged(size); } diff --git a/app/node/inputarray.h b/app/node/inputarray.h index 956debc49..d4a913164 100644 --- a/app/node/inputarray.h +++ b/app/node/inputarray.h @@ -18,7 +18,7 @@ public: void InsertAt(int index); void RemoveLast(); void RemoveAt(int index); - void SetSize(int size, bool lock = true); + void SetSize(int size); bool ContainsSubParameter(NodeInput* input) const; int IndexOfSubParameter(NodeInput* input) const; diff --git a/app/node/node.cpp b/app/node/node.cpp index 0223a9ff6..77d10fac5 100644 --- a/app/node/node.cpp +++ b/app/node/node.cpp @@ -220,16 +220,6 @@ QString Node::ReadFileAsString(const QString &filename) return file_data; } -void Node::LockUserInput() -{ - user_input_lock_.lock(); -} - -void Node::UnlockUserInput() -{ - user_input_lock_.unlock(); -} - void Node::CopyInputs(Node *source, Node *destination, bool include_connections) { Q_ASSERT(source->id() == destination->id()); @@ -245,7 +235,7 @@ void Node::CopyInputs(Node *source, Node *destination, bool include_connections) NodeInput* dst = static_cast(dst_param.at(i)); - NodeInput::CopyValues(src, dst, include_connections, true); + NodeInput::CopyValues(src, dst, include_connections); } } } diff --git a/app/node/node.h b/app/node/node.h index f1d5be5d6..83f7e489c 100644 --- a/app/node/node.h +++ b/app/node/node.h @@ -248,12 +248,6 @@ public: virtual TimeRange InputTimeAdjustment(NodeInput* input, const TimeRange& input_time) const; - /** - * @brief User input lock prevents any user changes while a graph is being rendered - */ - void LockUserInput(); - void UnlockUserInput(); - /** * @brief Copies inputs from from Node to another including connections * @@ -374,11 +368,6 @@ private: QList params_; - /** - * @brief Used for thread safety from main thread - */ - QMutex user_input_lock_; - /** * @brief Internal variable for whether this Node can be deleted or not */ diff --git a/app/node/param.cpp b/app/node/param.cpp index d2cbd8b68..bd63b35be 100644 --- a/app/node/param.cpp +++ b/app/node/param.cpp @@ -114,7 +114,7 @@ void NodeParam::DisconnectAll() } } -NodeEdgePtr NodeParam::ConnectEdge(NodeOutput *output, NodeInput *input, bool lock) +NodeEdgePtr NodeParam::ConnectEdge(NodeOutput *output, NodeInput *input) { if (!input->IsConnectable()) { return nullptr; @@ -139,43 +139,23 @@ NodeEdgePtr NodeParam::ConnectEdge(NodeOutput *output, NodeInput *input, bool lo // that's difficult to diagnose. This makes that issue very clear. Q_ASSERT(output->parentNode() != input->parentNode()); - if (lock) { - output->parentNode()->LockUserInput(); - input->parentNode()->LockUserInput(); - } - output->edges_.append(edge); input->edges_.append(edge); - if (lock) { - output->parentNode()->UnlockUserInput(); - input->parentNode()->UnlockUserInput(); - } - // Emit a signal than an edge was added (only one signal needs emitting) emit input->EdgeAdded(edge); return edge; } -void NodeParam::DisconnectEdge(NodeEdgePtr edge, bool lock) +void NodeParam::DisconnectEdge(NodeEdgePtr edge) { NodeOutput* output = edge->output(); NodeInput* input = edge->input(); - if (lock) { - output->parentNode()->LockUserInput(); - input->parentNode()->LockUserInput(); - } - output->edges_.removeOne(edge); input->edges_.removeOne(edge); - if (lock) { - output->parentNode()->UnlockUserInput(); - input->parentNode()->UnlockUserInput(); - } - emit input->EdgeRemoved(edge); } diff --git a/app/node/param.h b/app/node/param.h index a7f529b43..c860c4867 100644 --- a/app/node/param.h +++ b/app/node/param.h @@ -316,7 +316,7 @@ public: * * This function emits EdgeAdded(). */ - static NodeEdgePtr ConnectEdge(NodeOutput *output, NodeInput *input, bool lock = true); + static NodeEdgePtr ConnectEdge(NodeOutput *output, NodeInput *input); /** * @brief Disconnect an edge @@ -327,7 +327,7 @@ public: * * Edge to disconnect. */ - static void DisconnectEdge(NodeEdgePtr edge, bool lock = true); + static void DisconnectEdge(NodeEdgePtr edge); /** * @brief Disconnect an edge