summaryrefslogtreecommitdiff
path: root/src/scanner.cpp
blob: 9012769d0fc70b27212ecfcaea35827dceb39015 (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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "scanner.h"

#include "protocols/iprotocol.h"

Scanner::Scanner(std::shared_ptr<ICamera> camera, std::vector<std::shared_ptr<IProtocol>> protocols)
    : IScanner{camera, protocols}
    , m_calibrationTableX{new CalibrationTable{}}
    , m_calibrationTableZ{new CalibrationTable{}}
{
    // m_protocols.push_back()
}

bool Scanner::startAllProtocols()
{
    for (const auto& protocol : m_protocols) {
        if (!protocol->start()) {
            stopAllProtocols();

            return false;
        }
    }

    return true;
}

void Scanner::stopAllProtocols()
{
    for (const auto& protocol : m_protocols) {
        protocol->stop();
    }
}

CalibrationTablePtr Scanner::calibrationTableX() const
{
    return m_calibrationTableX;
}

CalibrationTablePtr Scanner::calibrationTableZ() const
{
    return m_calibrationTableZ;
}