simple_serialize.h
Go to the documentation of this file.
1 /*
2  * Software License Agreement (BSD License)
3  *
4  * Copyright (c) 2011, Southwest Research Institute
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions are met:
9  *
10  * * Redistributions of source code must retain the above copyright
11  * notice, this list of conditions and the following disclaimer.
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  * * Neither the name of the Southwest Research Institute, nor the names
16  * of its contributors may be used to endorse or promote products derived
17  * from this software without specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  */
31 
32 #ifndef SIMPLE_SERIALIZE_H
33 #define SIMPLE_SERIALIZE_H
34 
35 #ifndef FLATHEADERS
37 #else
38 #include "byte_array.h"
39 #endif
40 
41 #include "string.h"
42 
43 namespace industrial
44 {
45 namespace simple_serialize
46 {
47 
48 
53 {
54 public:
65  virtual bool load(industrial::byte_array::ByteArray *buffer)=0;
66 
77  virtual bool unload(industrial::byte_array::ByteArray *buffer)=0;
78 
85  virtual unsigned int byteLength()=0;
86 
87 };
88 
89 } // namespace simple_serialize
90 } // namespace industrial
91 
92 #endif //SIMPLE_SERIALIZE_H
virtual unsigned int byteLength()=0
Virtual method returns the object size when packed into a ByteArray.
Interface for loading and unloading a class to/from a ByteArray.
The byte array wraps a dynamic array of bytes (i.e. char).
Definition: byte_array.h:80
virtual bool load(industrial::byte_array::ByteArray *buffer)=0
Virtual method for loading an object into a ByteArray.
virtual bool unload(industrial::byte_array::ByteArray *buffer)=0
Virtual method for unloading an object from a ByteArray.


simple_message
Author(s): Shaun Edwards
autogenerated on Mon Feb 28 2022 22:34:36