#include "cmwcalilaserpowerall.h"
#include "ui_cmwcalilaserpowerall.h"
#include "cmwcalilaserpower.h"
#ifdef __USE_LASER_BAEM__POWER__
#include "cmwcalibeamrate.h"
#endif
#include "macro_def.h"
#include "logic_compdef.h"
CMWCaliLaserPowerAll::CMWCaliLaserPowerAll(QWidget *parent) :
    CMWidget(parent),
    ui(new Ui::CMWCaliLaserPowerAll)
{
    ui->setupUi(this);
}

CMWCaliLaserPowerAll::~CMWCaliLaserPowerAll()
{
    delete ui;
}

void CMWCaliLaserPowerAll::MInit()
{
    CMWCaliLaserPower* pcaliLaserPower = nullptr;
#ifdef __USE_D_NARROW__
    pcaliLaserPower= new CMWCaliLaserPower(ui->tabWidget,LASERPATH_D_NARROW);
    pcaliLaserPower->MInit();
    ui->tabWidget->addTab(pcaliLaserPower,m_gSystem.m_mapNameList[LASERPATH_D_NARROW]);
    mchildwidgets[intptr_t(pcaliLaserPower)]=pcaliLaserPower;
#endif

#ifdef __USE_S_NARROW__
    pcaliLaserPower = new CMWCaliLaserPower(ui->tabWidget, LASERPATH_S_NARROW);
    pcaliLaserPower->MInit();
    ui->tabWidget->addTab(pcaliLaserPower, m_gSystem.m_mapNameList[LASERPATH_S_NARROW]);
    mchildwidgets[intptr_t(pcaliLaserPower)] = pcaliLaserPower;
#endif

#ifdef __USE_L_NARROW__
    pcaliLaserPower = new CMWCaliLaserPower(ui->tabWidget, LASERPATH_L_NARROW);
    pcaliLaserPower->MInit();
    ui->tabWidget->addTab(pcaliLaserPower, m_gSystem.m_mapNameList[LASERPATH_L_NARROW]);
    mchildwidgets[intptr_t(pcaliLaserPower)] = pcaliLaserPower;
#endif

#ifdef __USE_D_WIDE__
    pcaliLaserPower=new CMWCaliLaserPower(ui->tabWidget, LASERPATH_D_WIDE);
    pcaliLaserPower->MInit();
    ui->tabWidget->addTab(pcaliLaserPower,m_gSystem.m_mapNameList[LASERPATH_D_WIDE]);
    mchildwidgets[intptr_t(pcaliLaserPower)]=pcaliLaserPower;
#endif

#ifdef __USE_LASER_BAEM__POWER__
    CMWCaliBeamRate* pcaliLaserBeam = new CMWCaliBeamRate(ui->tabWidget);
	pcaliLaserBeam->MInit();
	ui->tabWidget->addTab(pcaliLaserBeam,QObject::tr("BeamPowerRate"));
	mchildwidgets[intptr_t(pcaliLaserBeam)] = pcaliLaserBeam;
#endif
}
