Skip to content
Snippets Groups Projects
project.cpp 5.19 KiB

/*******************************************************************************
* Copyright (c) 2015 Olivier Langella <Olivier.Langella@moulon.inra.fr>.
*
* This file is part of XTPcpp.
*
*     XTPcpp is free software: you can redistribute it and/or modify
*     it under the terms of the GNU General Public License as published by
*     the Free Software Foundation, either version 3 of the License, or
*     (at your option) any later version.
*
*     XTPcpp is distributed in the hope that it will be useful,
*     but WITHOUT ANY WARRANTY; without even the implied warranty of
*     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*     GNU General Public License for more details.
*
*     You should have received a copy of the GNU General Public License
*     along with XTPcpp.  If not, see <http://www.gnu.org/licenses/>.
*
* Contributors:
*     Olivier Langella <Olivier.Langella@moulon.inra.fr> - initial API and implementation
******************************************************************************/
#include "project.h"
#include "../input/xpipsaxhandler.h"
#include "peptidematch.h"
#include "proteinmatch.h"
#include <QDebug>

Project::Project()
{

}

Project::~Project()
{
    auto it = _identification_goup_list.begin();
    while (it != _identification_goup_list.end()) {
        delete (*it);
        it++;
    }
}

bool Project::checkPsimodCompliance() const {
    return _peptide_store.checkPsimodCompliance();
}
void Project::readResultFile(QString filename) {
    IdentificationDataSourceSp ident_source = _identification_data_source_store.getInstance(filename);

    ident_source.get()->parseTo(this);
    qDebug() << "Project::readResultFile end";
}

bool Project::isCombineMode() const {
    return _is_combine_mode;
}
void Project::setCombineMode(bool is_combine_mode) {
    _is_combine_mode = is_combine_mode;
}
std::vector<IdentificationGroup *> Project::getIdentificationGroupList() {
    return _identification_goup_list;
}

const std::vector<IdentificationGroup *> Project::getIdentificationGroupList() const {
    return _identification_goup_list;
}
const GroupingType Project::getGroupingType() const {
    return _grouping_type;
}

FastaFileStore & Project::getFastaFileStore() {