|
MASA-Core
|
00001 /******************************************************************************* 00002 * 00003 * Copyright (c) 2010-2015 Edans Sandes 00004 * 00005 * This file is part of MASA-Core. 00006 * 00007 * MASA-Core is free software: you can redistribute it and/or modify 00008 * it under the terms of the GNU General Public License as published by 00009 * the Free Software Foundation, either version 3 of the License, or 00010 * (at your option) any later version. 00011 * 00012 * MASA-Core is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU General Public License 00018 * along with MASA-Core. If not, see <http://www.gnu.org/licenses/>. 00019 * 00020 ******************************************************************************/ 00021 00022 #ifndef LIBMASA_HPP_ 00023 #define LIBMASA_HPP_ 00024 00025 /* libmasa includes */ 00026 #include "libmasaTypes.hpp" 00027 #include "IManager.hpp" 00028 #include "IAligner.hpp" 00029 #include "IAlignerParameter.hpp" 00030 #include "parameters/AbstractAlignerParameters.hpp" 00031 #include "capabilities.hpp" 00032 #include "Partition.hpp" 00033 #include "Grid.hpp" 00034 #include "aligners/AbstractAligner.hpp" 00035 #include "aligners/AbstractBlockAligner.hpp" 00036 #include "aligners/AbstractDiagonalAligner.hpp" 00037 #include "aligners/AbstractAlignerSafe.hpp" 00038 #include "processors/AbstractBlockProcessor.hpp" 00039 #include "processors/CPUBlockProcessor.hpp" 00040 00041 /* libmasa util includes */ 00042 #include "utils/AlignerUtils.hpp" 00043 00044 /* libmasa block pruning classes */ 00045 #include "pruning/AbstractBlockPruning.hpp" 00046 #include "pruning/BlockPruningDiagonal.hpp" 00047 #include "pruning/BlockPruningGenericN2.hpp" 00048 00049 00050 /** 00051 * Entry point for the MASA architecture. This function must be called 00052 * in the main procedure of the extension. The main argc/argv parameter 00053 * must be passed to the libmasa_entry_point in order to process the 00054 * command line parameters. 00055 * 00056 * @see The aligner/example/main.cpp source file contains a simple example 00057 * of calling the int libmasa_entry_point function. 00058 * 00059 * 00060 * @param argc number of arguments 00061 * @param argv command line arguments 00062 * @param aligner an instance of the IAligner that will execute the 00063 * alignment procedure. 00064 * @param aligner_header optional text to be print in the usage information. 00065 * @return exit code. 00066 */ 00067 int libmasa_entry_point(int argc, char** argv, IAligner* aligner, char* aligner_header=NULL); 00068 00069 00070 #endif /* LIBMASA_HPP_ */
1.7.6.1