binary_endpoints.cpp
Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 #include "binary_serialization.h"
00012 
00013 #include <opc/ua/protocol/endpoints.h>
00014 #include <opc/ua/protocol/protocol.h>
00015 #include <opc/ua/protocol/binary/stream.h>
00016 
00017 #include <algorithm>
00018 #include <memory>
00019 #include <string>
00020 
00021 namespace OpcUa
00022 {
00023   FindServersRequest::FindServersRequest()
00024     : TypeId(FIND_ServerS_REQUEST)
00025   {
00026 
00027   }
00028 
00029   FindServersResponse::FindServersResponse()
00030     : TypeId(FIND_ServerS_RESPONSE)
00031   {
00032 
00033   }
00034 
00035   namespace Binary
00036   {
00037 
00038     //-----------------------------------------------------
00039     // FindServersParameters
00040     //-----------------------------------------------------
00041 
00042     template<>
00043     std::size_t RawSize<FindServersParameters>(const FindServersParameters& params)
00044     {
00045       return RawSize(params.EndpointUrl) +
00046              RawSizeContainer(params.Locales) +
00047              RawSizeContainer(params.ServersToReturn);
00048     }
00049 
00050     template<>
00051     void DataSerializer::Serialize<FindServersParameters>(const FindServersParameters& params)
00052     {
00053       *this << params.EndpointUrl;
00054       *this << params.Locales;
00055       *this << params.ServersToReturn;
00056     }
00057 
00058     template<>
00059     void DataDeserializer::Deserialize<FindServersParameters>(FindServersParameters& params)
00060     {
00061       *this >> params.EndpointUrl;
00062       *this >> params.Locales;
00063       *this >> params.ServersToReturn;
00064     }
00065 
00066     //---------------------------------------------------
00067     // FindServersRequest
00068     //---------------------------------------------------
00069 
00070     template<>
00071     std::size_t RawSize<FindServersRequest>(const FindServersRequest& request)
00072     {
00073       return RawSize(request.TypeId) + RawSize(request.Header) + RawSize(request.Parameters);
00074     }
00075 
00076     template<>
00077     void DataSerializer::Serialize<FindServersRequest>(const FindServersRequest& request)
00078     {
00079       *this << request.TypeId;
00080       *this << request.Header;
00081       *this << request.Parameters;
00082     }
00083 
00084     template<>
00085     void DataDeserializer::Deserialize<FindServersRequest>(FindServersRequest& request)
00086     {
00087       *this >> request.TypeId;
00088       *this >> request.Header;
00089       *this >> request.Parameters;
00090     }
00091 
00092     //-----------------------------------------------------
00093     // FindServersData
00094     //-----------------------------------------------------
00095 
00096     template<>
00097     std::size_t RawSize<FindServersData>(const FindServersData& data)
00098     {
00099       return RawSizeContainer(data.Descriptions);
00100     }
00101 
00102     template<>
00103     void DataSerializer::Serialize<FindServersData>(const FindServersData& data)
00104     {
00105       SerializeContainer(*this, data.Descriptions);
00106     }
00107 
00108     template<>
00109     void DataDeserializer::Deserialize<FindServersData>(FindServersData& data)
00110     {
00111       DeserializeContainer(*this, data.Descriptions);
00112     }
00113 
00114     //-----------------------------------------------------
00115     // FindServersResponse
00116     //-----------------------------------------------------
00117 
00118     template<>
00119     std::size_t RawSize<FindServersResponse>(const FindServersResponse& resp)
00120     {
00121       return RawSize(resp.TypeId) + RawSize(resp.Header) + RawSize(resp.Data);
00122     }
00123 
00124     template<>
00125     void DataSerializer::Serialize<FindServersResponse>(const FindServersResponse& resp)
00126     {
00127       *this << resp.TypeId;
00128       *this << resp.Header;
00129       *this << resp.Data;
00130     }
00131 
00132     template<>
00133     void DataDeserializer::Deserialize<FindServersResponse>(FindServersResponse& resp)
00134     {
00135       *this >> resp.TypeId;
00136       *this >> resp.Header;
00137       *this >> resp.Data;
00138     }
00139 
00140   }
00141 }
00142 


ros_opcua_impl_freeopcua
Author(s): Denis Štogl
autogenerated on Sat Jun 8 2019 18:24:39