1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-09-28 23:10:51 +00:00

improving documentation

This commit is contained in:
Carles Fernandez 2016-01-31 19:36:48 +01:00
parent 833fe313c7
commit 213486c2eb
5 changed files with 53 additions and 51 deletions

View File

@ -1,23 +1,24 @@
/* -*- c++ -*- */ /*!
/* * \file constants.h
* Copyright 2006,2009,2013 Free Software Foundation, Inc. * \brief Definition of VOLK_GNSSSDR-related constants
* \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com
* *
* This file is part of GNU Radio * Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors)
* *
* GNU Radio is free software; you can redistribute it and/or modify * This file is part of GNSS-SDR.
*
* GNSS-SDR is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3, or (at your option) * the Free Software Foundation, either version 3 of the License, or
* any later version. * (at your option) any later version.
* *
* GNU Radio is distributed in the hope that it will be useful, * GNSS-SDR is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with GNU Radio; see the file COPYING. If not, write to * along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
* the Free Software Foundation, Inc., 51 Franklin Street,
* Boston, MA 02110-1301, USA.
*/ */
#ifndef INCLUDED_VOLK_GNSSSDR_CONSTANTS_H #ifndef INCLUDED_VOLK_GNSSSDR_CONSTANTS_H

View File

@ -1,25 +1,34 @@
#ifndef SATURATION_ARITHMETIC_H_ /*!
#define SATURATION_ARITHMETIC_H_ * \file saturation_arithmetic.h
* \brief Defines addition of 16-bit integers with saturation
* \author Javier Arribas, 2015. javier.arribas(at)cttc.es
*
* Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors)
*
* This file is part of GNSS-SDR.
*
* GNSS-SDR 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.
*
* GNSS-SDR 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 GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef INCLUDED_VOLK_GNSSSDR_SATURATION_ARITHMETIC_H_
#define INCLUDED_VOLK_GNSSSDR_SATURATION_ARITHMETIC_H_
#include <limits.h> #include <limits.h>
//#include <types.h>
static inline int16_t sat_adds16i(int16_t x, int16_t y) static inline int16_t sat_adds16i(int16_t x, int16_t y)
{ {
// int16_t ux = x;
// int16_t uy = y;
// int16_t res = ux + uy;
//
// /* Calculate overflowed result. (Don't change the sign bit of ux) */
// ux = (ux >> 15) + SHRT_MAX;
//
// /* Force compiler to use cmovns instruction */
// if ((int16_t) ((ux ^ uy) | ~(uy ^ res)) >= 0)
// {
// res = ux;
// }
//
// return res;
int32_t res = (int32_t) x + (int32_t) y; int32_t res = (int32_t) x + (int32_t) y;
if (res < SHRT_MIN) res = SHRT_MIN; if (res < SHRT_MIN) res = SHRT_MIN;
@ -28,4 +37,4 @@ static inline int16_t sat_adds16i(int16_t x, int16_t y)
return res; return res;
} }
#endif /*SATURATION_ARITHMETIC_H_*/ #endif /* INCLUDED_VOLK_GNSSSDR_SATURATION_ARITHMETIC_H_ */

View File

@ -1,6 +1,8 @@
/*! /*!
* \file volk_gnsssdr_avx_intrinsics.h * \file volk_gnsssdr_avx_intrinsics.h
* \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com * \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com
* \brief This file is intended to hold AVX intrinsics of intrinsics.
* They should be used in VOLK kernels to avoid copy-paste.
* *
* Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors) * Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors)
* *
@ -20,13 +22,9 @@
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>. * along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*/ */
/*
* This file is intended to hold AVX intrinsics of intrinsics.
* They should be used in VOLK kernels to avoid copy-pasta.
*/
#ifndef INCLUDE_VOLK_VOLK_AVX_INTRINSICS_H_ #ifndef INCLUDED_VOLK_VOLK_AVX_INTRINSICS_H_
#define INCLUDE_VOLK_VOLK_AVX_INTRINSICS_H_ #define INCLUDED_VOLK_VOLK_AVX_INTRINSICS_H_
#include <immintrin.h> #include <immintrin.h>
static inline __m256 static inline __m256

View File

@ -1,6 +1,8 @@
/*! /*!
* \file volk_gnsssdr_sse3_intrinsics.h * \file volk_gnsssdr_sse3_intrinsics.h
* \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com * \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com
* \brief Holds SSE3 intrinsics of intrinsics.
* They should be used in VOLK kernels to avoid copy-paste.
* *
* Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors) * Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors)
* *
@ -21,13 +23,8 @@
*/ */
/* #ifndef INCLUDED_VOLK_VOLK_SSE3_INTRINSICS_H_
* This file is intended to hold SSE3 intrinsics of intrinsics. #define INCLUDED_VOLK_VOLK_SSE3_INTRINSICS_H_
* They should be used in VOLK kernels to avoid copy-pasta.
*/
#ifndef INCLUDE_VOLK_VOLK_SSE3_INTRINSICS_H_
#define INCLUDE_VOLK_VOLK_SSE3_INTRINSICS_H_
#include <pmmintrin.h> #include <pmmintrin.h>
static inline __m128 static inline __m128

View File

@ -1,6 +1,8 @@
/*! /*!
* \file volk_gnsssdr_sse_intrinsics.h * \file volk_gnsssdr_sse_intrinsics.h
* \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com * \author Andres Cecilia, 2014. a.cecilia.luque(at)gmail.com
* \brief Holds SSE intrinsics of intrinsics.
* They should be used in VOLK kernels to avoid copy-paste
* *
* Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors) * Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors)
* *
@ -20,13 +22,8 @@
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>. * along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*/ */
/* #ifndef INCLUDED_VOLK_VOLK_SSE_INTRINSICS_H_
* This file is intended to hold SSE intrinsics of intrinsics. #define INCLUDED_VOLK_VOLK_SSE_INTRINSICS_H_
* They should be used in VOLK kernels to avoid copy-pasta.
*/
#ifndef INCLUDE_VOLK_VOLK_SSE_INTRINSICS_H_
#define INCLUDE_VOLK_VOLK_SSE_INTRINSICS_H_
#include <xmmintrin.h> #include <xmmintrin.h>
static inline __m128 static inline __m128
@ -46,4 +43,4 @@ _mm_magnitude_ps(__m128 cplxValue1, __m128 cplxValue2){
return _mm_sqrt_ps(_mm_magnitudesquared_ps(cplxValue1, cplxValue2)); return _mm_sqrt_ps(_mm_magnitudesquared_ps(cplxValue1, cplxValue2));
} }
#endif /* INCLUDE_VOLK_VOLK_SSE_INTRINSICS_H_ */ #endif /* INCLUDED_VOLK_VOLK_SSE_INTRINSICS_H_ */