source: soft/giet_vm/applications/rosenfeld/nrc2/include/nrsort1.h @ 827

Last change on this file since 827 was 826, checked in by meunier, 7 years ago
  • Mise à jour NR2 et Rosenfeld
File size: 2.2 KB
Line 
1/* ----------------- */
2/* --- nrsort1.h --- */
3/* ----------------- */
4
5/*
6 * Copyright (c) 2000-2014, Lionel Lacassagne, All rights reserved
7 * Univ Paris Sud XI, CNRS
8*/
9
10#ifndef _NRSORT1_H_
11#define _NRSORT1_H_
12
13#define extractnz_boundaries_type_vector(t) \
14void short_name(t,extractnz_boundaries_,vector)(t * v, int32_t nl, int32_t nh, int32_t * nlnz, int32_t * nhnz);
15
16extractnz_boundaries_type_vector(int8_t);
17extractnz_boundaries_type_vector(uint8_t);
18extractnz_boundaries_type_vector(int16_t);
19extractnz_boundaries_type_vector(uint16_t);
20extractnz_boundaries_type_vector(int32_t);
21extractnz_boundaries_type_vector(uint32_t);
22extractnz_boundaries_type_vector(int64_t);
23extractnz_boundaries_type_vector(uint64_t);
24extractnz_boundaries_type_vector(float);
25extractnz_boundaries_type_vector(double);
26
27
28
29void sort_index_f64vector_selection(double * key, int32_t nl, int32_t nh, int32_t * index);
30void sort_index_ivector_selection_min(int32_t * key, int32_t nl, int32_t nh, int32_t * index);
31void sort_index_ivector_selection_max(int32_t * key, int32_t nl, int32_t nh, int32_t * index);
32void sort_index_vector_selection_min(float * key, int32_t nl, int32_t nh, int32_t * index);
33void sort_index_vector_selection_max(float * key, int32_t nl, int32_t nh, int32_t * index);
34void sort_index_vector_selection_kmin(float * key, int32_t nl, int32_t nh, int32_t * index, int32_t k);
35void sort_index_ivector_selection_kmin(int32_t * key, int32_t nl, int32_t nh, int32_t * index, int32_t k);
36void sort_index_vector_selection_kmax(float * key, int32_t nl, int32_t nh, int32_t * index, int32_t k);
37void sort_index_ivector_selection_kmax(int32_t * key, int32_t nl, int32_t nh, int32_t * index, int32_t k);
38void sort_bvector_selection_min(int8_t * v, int32_t nl, int32_t nh);
39
40/*
41 * ATTENTION le tableau index DOIT etre initialise (et alloue)
42 */
43
44
45/* ======================================================================== */
46/* == Select = order/rank filter = median ================================= */
47/* ======================================================================== */
48int8_t select_bvector(int8_t * v, int32_t nl, int32_t nh, int32_t k);
49rgb8 select_rgb8vector(rgb8 * v, int32_t nl, int32_t nh, int32_t k);
50
51
52
53#endif /* _NRSORT1_H_ */
54
Note: See TracBrowser for help on using the repository browser.