photo_image.hpp
Go to the documentation of this file.
1 /*********************************************************************
2  *
3  * Software License Agreement (BSD License)
4  *
5  * Copyright (c) 2012, Robert Bosch LLC.
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  *
12  * * Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  * * Redistributions in binary form must reproduce the above
15  * copyright notice, this list of conditions and the following
16  * disclaimer in the documentation and/or other materials provided
17  * with the distribution.
18  * * Neither the name of the Robert Bosch nor the names of its
19  * contributors may be used to endorse or promote products derived
20  * from this software without specific prior written permission.
21  *
22  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33  * POSSIBILITY OF SUCH DAMAGE.
34  *
35  *********************************************************************/
36 #ifndef __PHOTO_IMAGE__
37 #define __PHOTO_IMAGE__
38 
39 
41 {
42 
43 private:
44  int width_;
45  int height_;
47  size_t image_size_;
48  char* data_;
49 
50 public:
51 
52  photo_image( void );
53  ~photo_image( void );
54 
55 
56  int getWidth( void );
57  int getHeight( void );
58  size_t getBytesPerPixel( void );
59  size_t getImageSize( void );
60  char* getDataAddress( void );
61 
62  //* sets size and allocates memory for image data
63  void photo_image_set_size( int image_width, int image_height, size_t image_bytes_per_pixel );
64 
65  //* Read an image from filesystem
66  /*
67  * This function is a debugging function for use replacing photo_image acquisition using a photo_camera.
68  * It can only read 24-bit RGB images via OpenCV. It may be extended to handle grayscale and alpha channels in the future.
69  */
70  bool photo_image_read( const std::string& filename );
71 
72  //* Write a photo_image to filesystem
73  /*
74  * This function is a debugging function for use replacing photo_image acquisition using a photo_camera.
75  * It can only write 24-bit RGB images via OpenCV. It may be extended to handle grayscale and alpha channels in the future.
76  */
77  bool photo_image_write( const std::string& filename );
78 };
79 
80 #endif // __PHOTO_IMAGE__
bool photo_image_write(const std::string &filename)
void photo_image_set_size(int image_width, int image_height, size_t image_bytes_per_pixel)
Definition: photo_image.cpp:84
bool photo_image_read(const std::string &filename)
Definition: photo_image.cpp:97
size_t bytes_per_pixel_
Definition: photo_image.hpp:46
photo_image(void)
Definition: photo_image.cpp:43
int getHeight(void)
Definition: photo_image.cpp:63
~photo_image(void)
Definition: photo_image.cpp:52
int getWidth(void)
Definition: photo_image.cpp:58
char * getDataAddress(void)
Definition: photo_image.cpp:78
char * data_
Definition: photo_image.hpp:48
size_t getBytesPerPixel(void)
Definition: photo_image.cpp:68
size_t getImageSize(void)
Definition: photo_image.cpp:73
size_t image_size_
Definition: photo_image.hpp:47


photo
Author(s): Benjamin Pitzer
autogenerated on Mon Feb 28 2022 23:12:30