mirror of
https://github.com/13hannes11/UU_la_parallel_programming_practical_assignments.git
synced 2024-09-04 00:50:58 +02:00
37 lines
679 B
C++
37 lines
679 B
C++
#pragma once
|
|
|
|
#include <mutex>
|
|
#include <lib/Node.h>
|
|
|
|
Node::Node(int element){
|
|
data = element;
|
|
is_dummy = false;
|
|
deleted = false;
|
|
}
|
|
|
|
Node* Node::Dummy(){
|
|
Node* n = new Node(0);
|
|
n->is_dummy = true;
|
|
return n;
|
|
}
|
|
|
|
bool Node::is_smaller_than(Node* n) {
|
|
return this->is_smaller_than(n->data);
|
|
}
|
|
|
|
bool Node::is_smaller_than(int n) {
|
|
// Everything is smaller than a dummy -> false
|
|
return this->data < n && !this->is_dummy;
|
|
}
|
|
|
|
bool Node::is_equal(int n) {
|
|
// Dummies are not equal to any number -> false
|
|
return this->data == n && !this->is_dummy;
|
|
}
|
|
|
|
void Node::lock() {
|
|
this->mut.lock();
|
|
}
|
|
void Node::unlock() {
|
|
this->mut.unlock();
|
|
} |