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
|