/* 
* 
* Copyright (C) 2013 UMPC
* 
* This file is part of CLaRiNet.
*  
* CLaRiNet 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.
* 
* CLaRiNet 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 CLaRiNet.  If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RIDGE_H
#define RIDGE_H

#ifdef __cplusplus
extern "C" {
#endif
    int TestCast ( int * MYINTS , int n, float ** _MYFLOATS ) ;
#ifdef __cplusplus
}
#endif

#ifdef __cplusplus
extern "C" {
#endif
    int TestEnsembles ( 	int * INNERBOUNDARY , int ni ,
				int * OUTERBOUNDARY , int no ,
				int * INNERSUBBOUNDARY , int nis ,
				int * OUTERSUBBOUNDARY , int nos ,
				int ncols , int nrows ,
				int ** _INNERBOUNDARY , int * _ni ,
				int ** _OUTERBOUNDARY , int * _no ) ;
#ifdef __cplusplus
}
#endif


#ifdef __cplusplus
extern "C" {
#endif
	int RidgeMagnitudeArea ( int HandleFlowDir , int HandleDistance , int outlet , float k , int HandleOutput ) ;
#ifdef __cplusplus
}
#endif

#ifdef __cplusplus
extern "C" {
#endif
	int RidgeMagnitudeDrop ( int HandleFlowDir , int HandleElevation , int outlet , int HandleOutput ) ;
#ifdef __cplusplus
}
#endif


#ifdef __cplusplus
extern "C" {
#endif
	int LinkBodies ( int HandleFlowDir , int HandleIndic , int outlet , int ndown , int HandleOutput , int ** _NODES , int * _nnodes );
#ifdef __cplusplus
}
#endif


#endif
