38 lines
597 B
C
38 lines
597 B
C
|
#ifndef COMPONENT_H
|
||
|
#define COMPONENT_H
|
||
|
|
||
|
#include "rule.h"
|
||
|
#include "pin.h"
|
||
|
#include "attribute.h"
|
||
|
|
||
|
#include <string>
|
||
|
#include <vector>
|
||
|
|
||
|
#include <domain/display/display.h>
|
||
|
|
||
|
|
||
|
class Component: AstNode
|
||
|
{
|
||
|
public:
|
||
|
enum ComponentType {
|
||
|
OTHER,
|
||
|
PROCESSOR,
|
||
|
MEMORY
|
||
|
};
|
||
|
|
||
|
IdentifierNode name;
|
||
|
StringNode tooltip;
|
||
|
StringNode source;
|
||
|
ComponentType type;
|
||
|
std::vector<Rule> rules;
|
||
|
StringNode instanceName;
|
||
|
CountNode count;
|
||
|
Display display;
|
||
|
std::vector<Pin> pin;
|
||
|
std::vector<Attribute> attributes;
|
||
|
|
||
|
Component();
|
||
|
};
|
||
|
|
||
|
#endif // COMPONENT_H
|