aboutsummaryrefslogtreecommitdiff
path: root/NodeOutput.h
blob: d2319f13f2e5f08fde393ae5f37ee65aa712e932 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include "Node.h"

class NodeOutput : public Node {
public:
	NodeOutput();
	NodeOutput(const NodeOutput * prototype);
	~NodeOutput() = default;
	virtual void sim();
	virtual SignalLevel level();
	virtual NodeOutput * clone() const;
	virtual void setOutput(Net *);

private:
	virtual void init();
	NodeOutput(const char * type);
	constexpr static const char * type = "probe";
	static NodeOutput instance;
	SignalLevel input;

public:
	virtual void accept(NodeVisitor & visitor) { visitor.visit(*this); }
};