// Copyright (c) 2022, ETH Zurich and UNC Chapel Hill.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
//
// * Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
//
// * Neither the name of ETH Zurich and UNC Chapel Hill nor the names of
// its contributors may be used to endorse or promote products derived
// from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
//
// Author: Johannes L. Schoenberger (jsch-at-demuc-dot-de)
#include "ui/license_widget.h"
namespace colmap {
LicenseWidget::LicenseWidget(QWidget* parent) : QTextEdit(parent) {
setReadOnly(true);
setWindowFlags(Qt::Dialog);
resize(parent->width() - 20, parent->height() - 20);
setWindowTitle("License");
QString licenses;
licenses += "
COLMAP
";
licenses += GetCOLMAPLicense();
licenses += "External
";
licenses += "FLANN
";
licenses += GetFLANNLicense();
licenses += "LSD
";
licenses += GetLSDLicense();
licenses += "PBA
";
licenses += GetPBALicense();
licenses += "PoissonRecon
";
licenses += GetPoissonReconLicense();
licenses += "SiftGPU
";
licenses += GetSiftGPULicense();
licenses += "SQLite
";
licenses += GetSQLiteLicense();
licenses += "VLFeat
";
licenses += GetVLFeatLicense();
setHtml(licenses);
}
QString LicenseWidget::GetCOLMAPLicense() const {
const QString license =
"Copyright (c) 2022, ETH Zurich and UNC Chapel Hill.
"
"All rights reserved.
"
"
"
"Redistribution and use in source and binary forms, with or without
"
"modification, are permitted provided that the following conditions are "
"met:
"
"
"
" * Redistributions of source code must retain the above copyright
"
" notice, this list of conditions and the following disclaimer.
"
"
"
" * Redistributions in binary form must reproduce the above "
"copyright
"
" notice, this list of conditions and the following disclaimer in "
"the
"
" documentation and/or other materials provided with the "
"distribution.
"
"
"
" * Neither the name of ETH Zurich and UNC Chapel Hill nor the names "
"of
"
" its contributors may be used to endorse or promote products "
"derived
"
" from this software without specific prior written permission.
"
"
"
"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "
"\"AS IS\"
"
"AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, "
"THE
"
"IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR "
"PURPOSE
"
"ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS "
"BE
"
"LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
"
"CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
"
"SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR "
"BUSINESS
"
"INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER "
"IN
"
"CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR "
"OTHERWISE)
"
"ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF "
"THE
"
"POSSIBILITY OF SUCH DAMAGE.
"
"
"
"Author: Johannes L. Schoenberger (jsch-at-demuc-dot-de)";
return license;
}
QString LicenseWidget::GetFLANNLicense() const {
const QString license =
"The BSD License
"
"
"
"Copyright (c) 2008-2011 Marius Muja (mariusm@cs.ubc.ca). "
"All rights reserved.
"
"Copyright (c) 2008-2011 David G. Lowe (lowe@cs.ubc.ca). "
"All rights reserved.
"
"
"
"Redistribution and use in source and binary forms, with or without
"
"modification, are permitted provided that the following conditions
"
"are met:
"
"
"
" * Redistributions of source code must retain the above copyright
"
" notice, this list of conditions and the following disclaimer.
"
" * Redistributions in binary form must reproduce the above copyright
"
" notice, this list of conditions and the following disclaimer in
"
" the documentation and/or other materials provided with the
"
" distribution.
"
" * Neither the name of the \"University of British Columbia\" nor
"
" the names of its contributors may be used to endorse or promote
"
" products derived from this software without specific prior
"
" written permission.
"
"
"
"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"
"\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
"
"LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
"
"FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
"
"COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
"
"INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
"
"(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
"
"OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
"
"INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
"
"WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
"
"OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
"
"EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.";
return license;
}
QString LicenseWidget::GetLSDLicense() const {
const QString license =
"LSD - Line Segment Detector on digital images
"
"
"
"This code is part of the following publication and was subject
"
"to peer review:"
"
"
" \"LSD: a Line Segment Detector\" by Rafael Grompone von Gioi,
"
" Jeremie Jakubowicz, Jean-Michel Morel, and Gregory Randall,
"
" Image Processing On Line, 2012. DOI:10.5201/ipol.2012.gjmr-lsd
"
" http://dx.doi.org/10.5201/ipol.2012.gjmr-lsd
"
"
"
"Copyright(c) 2007-2011 rafael grompone von gioi
"
"
"
"This program is free software: you can redistribute it and/or
"
"modify it under the terms of the GNU Affero General Public License
"
"as published by the Free Software Foundation, either version 3 of
"
"the License, or (at your option) any later version.
"
"
"
"This program 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 Affero General Public License for more details.
"
"
"
"You should have received a copy of the GNU Affero General Public
"
"License along with this program.
"
"If not, see http://www.gnu.org/licenses/.";
return license;
}
QString LicenseWidget::GetPBALicense() const {
const QString license =
"Copyright (c) 2011 Changchang Wu (ccwu@cs.washington.edu)
"
"and the University of Washington at Seattle
"
"
"
"This library 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.
"
"
"
"This library 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.";
return license;
}
QString LicenseWidget::GetPoissonReconLicense() const {
const QString license =
"The MIT License (MIT)
"
"
"
"Copyright (c) 2015 mkazhdan
"
"
"
"Permission is hereby granted, free of charge, to any person
"
"obtaining a copy of this software and associated documentation
"
"files (the \"Software\"), to deal in the Software without
"
"restriction, including without limitation the rights to use, copy,
"
"modify, merge, publish, distribute, sublicense, and/or sell copies
"
"of the Software, and to permit persons to whom the Software is
"
"furnished to do so, subject to the following conditions:
"
"
"
"The above copyright notice and this permission notice shall be
"
"included in all copies or substantial portions of the Software.
"
"
"
"THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,
"
"EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
"
"MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
"
"NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
"
"BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
"
"ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
"
"CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
"
"SOFTWARE.";
return license;
}
QString LicenseWidget::GetSiftGPULicense() const {
const QString license =
"Copyright (c) 2007 University of North Carolina at Chapel Hill
"
"All Rights Reserved
"
"
"
"Permission to use, copy, modify and distribute this software and its
"
"documentation for educational, research and non-profit purposes,
"
"without fee, and without a written agreement is hereby granted,
"
"provided that the above copyright notice and the following paragraph
"
"appear in all copies.
"
"
"
"The University of North Carolina at Chapel Hill make no
"
"representations about the suitability of this software for any
"
"purpose. It is provided 'as is' without express or implied warranty.";
return license;
}
QString LicenseWidget::GetSQLiteLicense() const {
const QString license =
"The author disclaims copyright to this source code. In place of
"
"a legal notice, here is a blessing:
"
"May you do good and not evil.
"
"May you find forgiveness for yourself and forgive others.
"
"May you share freely, never taking more than you give.";
return license;
}
QString LicenseWidget::GetVLFeatLicense() const {
const QString license =
"Copyright (C) 2007-11, Andrea Vedaldi and Brian Fulkerson
"
"Copyright (C) 2012-13, The VLFeat Team
"
"All rights reserved.
"
"
"
"Redistribution and use in source and binary forms, with or without
"
"modification, are permitted provided that the following conditions
"
"are met:
"
"1. Redistributions of source code must retain the above copyright
"
" notice, this list of conditions and the following disclaimer.
"
"2. Redistributions in binary form must reproduce the above copyright
"
" notice, this list of conditions and the following disclaimer in
"
" the documentation and/or other materials provided with the
"
" distribution.
"
"
"
"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"
"AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
"
"LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
"
"FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
"
"COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
"
"INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
"
"BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
"
"LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
"
"CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
"
"LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
"
"ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
"
"POSSIBILITY OF SUCH DAMAGE.";
return license;
}
} // namespace colmap