source: soft/giet_vm/applications/rosenfeld/nrc2/include/nrset2.h @ 826

Last change on this file since 826 was 826, checked in by meunier, 7 years ago
  • Mise à jour NR2 et Rosenfeld
File size: 2.3 KB
Line 
1/* ---------------- */
2/* --- nrset2.h --- */
3/* ---------------- */
4
5/*
6 * Copyright (c) 2000-2014, Lionel Lacassagne, All rights reserved
7 * Univ Paris Sud XI, CNRS
8*/
9
10#ifndef _NR_SET2_H_
11#define _NR_SET2_H_
12
13
14/* ------------------
15 * --- set_matrix ---
16 * --- set_matrix_param ---
17 * ------------------
18 */
19
20/*
21 * --------------------
22 * --- set_matrix_i ---
23 * --------------------
24 */
25
26/*
27 *  [i0 .. i0]     [1 1 1]   
28 * m[...    ...] = [2 2 2]
29 *  [i1 .. i1]     [3 3 3]   
30 */
31
32/*
33 * --------------------
34 * --- set_matrix_j ---
35 * --------------------
36 */
37
38 /*
39  *  [j0 .. j1]     [1 2 3]   
40  * m[... .. ...] = [1 2 3]
41  *  [j0 .. j1]     [1 2 3]   
42  */
43
44#define set_type_matrix(t) \
45void short_name(t,zero_,matrix)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1); \
46void short_name(t,set_,matrix)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1, t x); \
47void short_name(t,set_,matrix_param)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1, t x, t xstep, t ystep); \
48void short_name(t,set_,matrix_i)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1); \
49void short_name(t,set_,matrix_j)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1);
50
51
52set_type_matrix(int8_t);
53set_type_matrix(uint8_t);
54set_type_matrix(int16_t);
55set_type_matrix(uint16_t);
56set_type_matrix(int32_t);
57set_type_matrix(uint32_t);
58set_type_matrix(int64_t);
59set_type_matrix(uint64_t);
60set_type_matrix(float);
61set_type_matrix(double);
62set_type_matrix(rgb8);
63set_type_matrix(rgbx8);
64
65
66
67/*
68 * Initialisation des bords
69 */
70
71#define set_type_matrix_border(t) \
72void short_name(t,set_,matrix_border)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1, int32_t n, t x); \
73void short_name(t,set_,matrix_border1)(t ** m, int32_t i0, int32_t i1, int32_t j0, int32_t j1, t x);
74
75set_type_matrix_border(int8_t);
76set_type_matrix_border(uint8_t);
77set_type_matrix_border(int16_t);
78set_type_matrix_border(uint16_t);
79set_type_matrix_border(int32_t);
80set_type_matrix_border(uint32_t);
81set_type_matrix_border(int64_t);
82set_type_matrix_border(uint64_t);
83set_type_matrix_border(float);
84set_type_matrix_border(double);
85
86
87
88#endif // _NR_SET2_H_
89
90// Local Variables:
91// tab-width: 4
92// c-basic-offset: 4
93// c-file-offsets:((innamespace . 0)(inline-open . 0))
94// indent-tabs-mode: nil
95// End:
96
97// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
98
Note: See TracBrowser for help on using the repository browser.