Пример #1
0
static void
fileNameFromSolution(
    char *name,
    BlasFunctionID funcID,
    const SolutionStep *step)
{
    const char *s;
    const CLBlasKargs *kargs = (const CLBlasKargs*)&step->args;
    bool isTriangFn;

    isTriangFn = (funcID == CLBLAS_TRMM || funcID == CLBLAS_TRSM);
    strcpy(name, "./");
    name += strlen(name);
    getFuncName(name, funcID, kargs->dtype);
    s = (kargs->order == clblasRowMajor) ? "_row_" : "_col_";
    strcat(name, s);
    addTranspSuffix(name, kargs->transA);
    if (isTriangFn) {
        s = (kargs->uplo == clblasUpper) ? "_upper" : "_lower";
        strcat(name, s);
        s = (kargs->side == clblasRight) ? "_right" : "_left";
        strcat(name, s);
    }
    else {
        addTranspSuffix(name, kargs->transB);
    }

    name += strlen(name);
    sprintf(name, "_%lu_%lu", kargs->M, kargs->N);
    if (!isTriangFn) {
        name += strlen(name);
        sprintf(name, "_%lu", kargs->K);
    }
    strcat(name, ".kdump");
}
Пример #2
0
/**
* @brief 右侧布局
*/
void MainWindow::setupMainWindow()
{
    btnGroup = new QButtonGroup;

    QGridLayout *grid = new QGridLayout;
    QSignalMapper *mapper = new QSignalMapper(this);

    QPixmap bmp;
    QString name;
    for (int i = 0; i < FunCount; i++)
    {
        bmp = getFuncIcon(i);
        funcBtn[i] = createPushButton(QSize(97, 132), bmp, QString(),
                                      SLOT(updateButtonTip()), SLOT(updateButtonTip()));
        name = getFuncName(i);
        funcLbl[i] = new Label;
        funcLbl[i]->setCustomText(name, Qt::AlignCenter);

        funcBtn[i]->setObjectName(name);
        btnGroup->addButton(funcBtn[i]);

        QVBoxLayout *vbox = new QVBoxLayout;
        vbox->addWidget(funcBtn[i]);
        vbox->addWidget(funcLbl[i]);

        connect(funcBtn[i], SIGNAL(released()), mapper, SLOT(map()));
        mapper->setMapping(funcBtn[i], i);

        grid->addLayout(vbox, i / 5, i % 5);
    }
    connect(mapper, SIGNAL(mapped(int)), this, SLOT(onFuncSelect(int)));
    grid->setVerticalSpacing(15);
    grid->setHorizontalSpacing(50);

    mainBtnStyleRender();

    logo = new QLabel;
    logo->setPixmap(QPixmap("../icons/mainwindow/logo.png"));

    title = new QLabel;
    title->setText("电 源 远 程 监 控 系 统");
    title->setAlignment(Qt::AlignCenter);

#ifdef ARM_COMPILE
    title->setStyleSheet("color:rgb(200,19,55)");
#else
    title->setStyleSheet("font-size: 30px;color:rgb(200,19,55)");
#endif

    QHBoxLayout *logoLayout = new QHBoxLayout;
    logoLayout->addSpacing(20);
    logoLayout->addWidget(logo);
    logoLayout->addSpacing(80);
    logoLayout->addWidget(title);
    logoLayout->addStretch();

    QHBoxLayout *funcLayout = new QHBoxLayout;
    funcLayout->addStretch();
    funcLayout->addLayout(grid);
    funcLayout->addStretch();

    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(logoLayout);
    mainLayout->addSpacing(80);
    mainLayout->addLayout(funcLayout);
    mainLayout->addStretch();
    mainLayout->setContentsMargins(10, 10, 10, 10);

    setLayout(mainLayout);
}