Junction Diagram Automation Suite 1.5.1
An AutoCAD 2024 plugin for the manipulation and generation of junction box wiring diagrams
Loading...
Searching...
No Matches
IOList.h
Go to the documentation of this file.
1
12
13#pragma once
14
15#include "common.h"
16#include "JBox.h"
17#include "OpenXLSX.hpp"
18
27class IOList {
28public:
40 IOList(std::string xlPath);
41
47 ~IOList();
48
54 std::vector<std::string> GetTags() const;
55
62 JBox *GetJBox(std::string junctionTag) const;
63
72 JBox *GetJBox(int index) const;
73
79 int GetNumJBoxes() const;
80private:
81 OpenXLSX::XLDocument xlFile;
82 OpenXLSX::XLWorksheet cableScheduleSheet;
83 OpenXLSX::XLWorksheet ioListSheet;
84
85 std::vector<std::string> junctionTags = {};
86 std::vector<JBox*> junctionBoxes = {};
87
95 void UpdateTags();
96
102 void BuildJunctionBoxes();
103
113 std::vector<Cable> BuildCables(std::string junctionTag);
114};
Interface for the JBox class.
std::vector< std::string > GetTags() const
Returns all parsed junction box tags.
Definition IOList.cpp:50
int GetNumJBoxes() const
Returns the number of junction boxes in this list.
Definition IOList.cpp:68
IOList(std::string xlPath)
Construct a new IOList from a path to an Excel file.
Definition IOList.cpp:15
~IOList()
Destroy the IOList object.
Definition IOList.cpp:41
JBox * GetJBox(std::string junctionTag) const
Returns a pointer to the JBox corresponding to a given tag.
Definition IOList.cpp:54
Represents a junction box containing multiple cables.
Definition JBox.h:35
Common includes and definitions.