schema_editor/comdel/domain/schema.h

29 lines
717 B
C++

#ifndef DOMAIN_SCHEMA_H
#define DOMAIN_SCHEMA_H
#include "connection_instance.h"
#include "instance.h"
#include <vector>
namespace domain {
class Schema {
public:
Schema() = default;
std::vector<shared_ptr<BusInstance>> busInstances;
std::vector<shared_ptr<ComponentInstance>> componentInstances;
std::vector<shared_ptr<ConnectionInstance>> connections;
BusInstance *getBusInstance(std::string &name);
ComponentInstance *getComponentInstance(std::string &name);
bool hasConnection(string &component, string &pin);
ConnectionInstance *getConnection(string &component, string &pin);
};
} // namespace domain
#endif // DOMAIN_SCHEMA_H