ms35.h
Go to the documentation of this file.
00001 /*
00002  * Copyright 2017 Fraunhofer Institute for Manufacturing Engineering and Automation (IPA)
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *   http://www.apache.org/licenses/LICENSE-2.0
00009 
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 
00018 #ifndef ES35_H
00019 #define ES35_H
00020 
00021 #include <iColorO.h>
00022 
00023 #include <serialIO.h>
00024 #include <colorUtils.h>
00025 #include <sstream>
00026 
00027 class MS35 : public IColorO
00028 {
00029 public:
00030   MS35(SerialIO* serialIO);
00031   virtual ~MS35();
00032 
00033   bool init();
00034   void setColor(color::rgba color);
00035   void setColorMulti(std::vector<color::rgba> &colors);
00036 
00037 private:
00038   SerialIO* _serialIO;
00039   std::stringstream _ssOut;
00040   static const int PACKAGE_SIZE = 9;
00041   char buffer[PACKAGE_SIZE];
00042 
00043   int sendData(const char* data, size_t len);
00044   unsigned short int getChecksum(const char* data, size_t len);
00045 };
00046 
00047 #endif


cob_light
Author(s): Benjamin Maidel
autogenerated on Sat Jun 8 2019 21:02:07