YARP
Yet Another Robot Platform
rosPixelCode.cpp
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #include "rosPixelCode.h"
7 
8 namespace yarp {
9  namespace dev {
10  namespace ROSPixelCode {
11 
12 std::string yarp2RosPixelCode(int code)
13 {
14  switch (code)
15  {
16  case VOCAB_PIXEL_BGR:
17  return BGR8;
18  case VOCAB_PIXEL_BGRA:
19  return BGRA8;
21  return BAYER_BGGR16;
23  return BAYER_BGGR8;
25  return BAYER_GBRG16;
27  return BAYER_GBRG8;
29  return BAYER_GRBG16;
31  return BAYER_GRBG8;
33  return BAYER_RGGB16;
35  return BAYER_RGGB8;
36  case VOCAB_PIXEL_MONO:
37  return MONO8;
38  case VOCAB_PIXEL_MONO16:
39  return MONO16;
40  case VOCAB_PIXEL_RGB:
41  return RGB8;
42  case VOCAB_PIXEL_RGBA:
43  return RGBA8;
45  return TYPE_32FC1;
46  default:
47  return RGB8;
48  }
49 }
50 
51 int Ros2YarpPixelCode(const std::string& roscode)
52 {
53  if (roscode == BGR8) {
54  return VOCAB_PIXEL_BGR;
55  } else if (roscode == BGRA8) {
56  return VOCAB_PIXEL_BGRA;
57  } else if (roscode == BAYER_BGGR8) {
59  } else if (roscode == BAYER_GBRG16) {
61  } else if (roscode == BAYER_GBRG8) {
63  } else if (roscode == BAYER_GRBG16) {
65  } else if (roscode == BAYER_GRBG8) {
67  } else if (roscode == BAYER_RGGB16) {
69  } else if (roscode == BAYER_RGGB8) {
71  } else if (roscode == MONO8) {
72  return VOCAB_PIXEL_MONO;
73  } else if (roscode == MONO16) {
74  return VOCAB_PIXEL_MONO16;
75  } else if (roscode == RGB8) {
76  return VOCAB_PIXEL_RGB;
77  } else if (roscode == RGBA8) {
78  return VOCAB_PIXEL_RGBA;
79  } else if (roscode == TYPE_32FC1) {
81  } else {
82  return VOCAB_PIXEL_INVALID;
83  }
84 }
85 
86 }}}
@ VOCAB_PIXEL_ENCODING_BAYER_BGGR16
Definition: Image.h:62
@ VOCAB_PIXEL_RGBA
Definition: Image.h:48
@ VOCAB_PIXEL_MONO16
Definition: Image.h:46
@ VOCAB_PIXEL_ENCODING_BAYER_BGGR8
Definition: Image.h:61
@ VOCAB_PIXEL_BGRA
Definition: Image.h:49
@ VOCAB_PIXEL_BGR
Definition: Image.h:52
@ VOCAB_PIXEL_MONO_FLOAT
Definition: Image.h:56
@ VOCAB_PIXEL_ENCODING_BAYER_RGGB8
Definition: Image.h:65
@ VOCAB_PIXEL_ENCODING_BAYER_GRBG8
Definition: Image.h:59
@ VOCAB_PIXEL_ENCODING_BAYER_GBRG16
Definition: Image.h:64
@ VOCAB_PIXEL_ENCODING_BAYER_GRBG16
Definition: Image.h:60
@ VOCAB_PIXEL_INVALID
Definition: Image.h:44
@ VOCAB_PIXEL_ENCODING_BAYER_GBRG8
Definition: Image.h:63
@ VOCAB_PIXEL_MONO
Definition: Image.h:45
@ VOCAB_PIXEL_ENCODING_BAYER_RGGB16
Definition: Image.h:66
@ VOCAB_PIXEL_RGB
Definition: Image.h:47
std::string yarp2RosPixelCode(int code)
int Ros2YarpPixelCode(const std::string &roscode)
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define BAYER_BGGR8
Definition: rosPixelCode.h:17
#define BGR8
Definition: rosPixelCode.h:25
#define BAYER_RGGB16
Definition: rosPixelCode.h:22
#define BAYER_BGGR16
Definition: rosPixelCode.h:16
#define MONO16
Definition: rosPixelCode.h:28
#define RGBA8
Definition: rosPixelCode.h:33
#define BAYER_GBRG16
Definition: rosPixelCode.h:18
#define BAYER_GBRG8
Definition: rosPixelCode.h:19
#define MONO8
Definition: rosPixelCode.h:29
#define BAYER_GRBG16
Definition: rosPixelCode.h:20
#define RGB8
Definition: rosPixelCode.h:31
#define TYPE_32FC1
Definition: rosPixelCode.h:42
#define BAYER_RGGB8
Definition: rosPixelCode.h:23
#define BAYER_GRBG8
Definition: rosPixelCode.h:21
#define BGRA8
Definition: rosPixelCode.h:27