source: soft/giet_vm/applications/rosenfeld/nrc2/include/nrset2.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.3 KB
RevLine 
[772]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
[826]14/* ------------------
15 * --- set_matrix ---
[772]16 * --- set_matrix_param ---
[826]17 * ------------------
[772]18 */
19
20/*
21 * --------------------
22 * --- set_matrix_i ---
23 * --------------------
24 */
25
26/*
[826]27 *  [i0 .. i0]     [1 1 1]   
[772]28 * m[...    ...] = [2 2 2]
[826]29 *  [i1 .. i1]     [3 3 3]   
[772]30 */
31
32/*
33 * --------------------
34 * --- set_matrix_j ---
35 * --------------------
36 */
37
38 /*
[826]39  *  [j0 .. j1]     [1 2 3]   
40  * m[... .. ...] = [1 2 3]
41  *  [j0 .. j1]     [1 2 3]   
42  */
[772]43
[826]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);
[772]50
51
[826]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);
[772]64
[826]65
66
[772]67/*
68 * Initialisation des bords
69 */
70
[826]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);
[772]74
[826]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);
[772]85
86
[826]87
[772]88#endif // _NR_SET2_H_
[826]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.