blob: f4fb4805b49ccadb4a13ae847e0d09576779b78e [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2010, 2018 TU Vienna/ACIN
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Martin Melik Merkumians, Alois Zoitl
* - initial implementation and rework communication infrastructure
* Martin Melik Merkumians - updates naming
*******************************************************************************/
#ifndef FORTENODE_H_
#define FORTENODE_H_
/*! \ingroup CORE\brief FORTE implementation of a Singly Linked List Node
*/
/*!\brief container element of the singly linked list
*
* This class is the container element of the singly linked list.
* It's nested in the singly linked list class for reuse in the template class
*/
template<typename T>
class CSinglyLinkedListNode {
private:
/*!\brief contained object of the node element
*/
T mNodeElement;
/*!\brief pointer to the next node element
*/
CSinglyLinkedListNode* mNextNode;
CSinglyLinkedListNode();
public:
CSinglyLinkedListNode(T paNodeElement, CSinglyLinkedListNode* paNextNode = 0) : mNodeElement(paNodeElement), mNextNode(paNextNode) {
}
~CSinglyLinkedListNode() {
}
T& getData() {
return mNodeElement;
}
CSinglyLinkedListNode* getNext() const {
return mNextNode;
}
void setNext(CSinglyLinkedListNode* paNextNode) {
mNextNode = paNextNode;
}
};
#endif /* FORTENODE_H_ */