deserialize_auto.cpp
Go to the documentation of this file.
00001 // DO NOT EDIT THIS FILE!
00002 // It is automatically generated from opcfoundation.org schemas.
00003 //
00004 
00014 
00015 #include "binary_serialization.h"
00016 #include <opc/ua/protocol/protocol.h>
00017 
00018 #include <opc/ua/protocol/binary/stream.h>
00019 
00020 namespace OpcUa
00021 {
00022     namespace Binary
00023     {
00024 
00025     template<>
00026     void DataDeserializer::Deserialize<OpenFileMode>(OpenFileMode& data)
00027     {
00028         uint32_t tmp;
00029         *this >> tmp;
00030         data = static_cast<OpenFileMode>(tmp);
00031     }
00032 
00033 
00034     template<>
00035     void DataDeserializer::Deserialize<NodeClass>(NodeClass& data)
00036     {
00037         uint32_t tmp;
00038         *this >> tmp;
00039         data = static_cast<NodeClass>(tmp);
00040     }
00041 
00042 
00043     template<>
00044     void DataDeserializer::Deserialize<ApplicationType>(ApplicationType& data)
00045     {
00046         uint32_t tmp;
00047         *this >> tmp;
00048         data = static_cast<ApplicationType>(tmp);
00049     }
00050 
00051 
00052     template<>
00053     void DataDeserializer::Deserialize<MessageSecurityMode>(MessageSecurityMode& data)
00054     {
00055         uint32_t tmp;
00056         *this >> tmp;
00057         data = static_cast<MessageSecurityMode>(tmp);
00058     }
00059 
00060 
00061     template<>
00062     void DataDeserializer::Deserialize<UserTokenType>(UserTokenType& data)
00063     {
00064         uint32_t tmp;
00065         *this >> tmp;
00066         data = static_cast<UserTokenType>(tmp);
00067     }
00068 
00069 
00070     template<>
00071     void DataDeserializer::Deserialize<SecurityTokenRequestType>(SecurityTokenRequestType& data)
00072     {
00073         uint32_t tmp;
00074         *this >> tmp;
00075         data = static_cast<SecurityTokenRequestType>(tmp);
00076     }
00077 
00078 
00079     template<>
00080     void DataDeserializer::Deserialize<NodeAttributesMask>(NodeAttributesMask& data)
00081     {
00082         uint32_t tmp;
00083         *this >> tmp;
00084         data = static_cast<NodeAttributesMask>(tmp);
00085     }
00086 
00087 
00088     template<>
00089     void DataDeserializer::Deserialize<AttributeWriteMask>(AttributeWriteMask& data)
00090     {
00091         uint32_t tmp;
00092         *this >> tmp;
00093         data = static_cast<AttributeWriteMask>(tmp);
00094     }
00095 
00096 
00097     template<>
00098     void DataDeserializer::Deserialize<BrowseDirection>(BrowseDirection& data)
00099     {
00100         uint32_t tmp;
00101         *this >> tmp;
00102         data = static_cast<BrowseDirection>(tmp);
00103     }
00104 
00105 
00106     template<>
00107     void DataDeserializer::Deserialize<BrowseResultMask>(BrowseResultMask& data)
00108     {
00109         uint32_t tmp;
00110         *this >> tmp;
00111         data = static_cast<BrowseResultMask>(tmp);
00112     }
00113 
00114 
00115     template<>
00116     void DataDeserializer::Deserialize<ComplianceLevel>(ComplianceLevel& data)
00117     {
00118         uint32_t tmp;
00119         *this >> tmp;
00120         data = static_cast<ComplianceLevel>(tmp);
00121     }
00122 
00123 
00124     template<>
00125     void DataDeserializer::Deserialize<FilterOperator>(FilterOperator& data)
00126     {
00127         uint32_t tmp;
00128         *this >> tmp;
00129         data = static_cast<FilterOperator>(tmp);
00130     }
00131 
00132 
00133     template<>
00134     void DataDeserializer::Deserialize<TimestampsToReturn>(TimestampsToReturn& data)
00135     {
00136         uint32_t tmp;
00137         *this >> tmp;
00138         data = static_cast<TimestampsToReturn>(tmp);
00139     }
00140 
00141 
00142     template<>
00143     void DataDeserializer::Deserialize<HistoryUpdateType>(HistoryUpdateType& data)
00144     {
00145         uint32_t tmp;
00146         *this >> tmp;
00147         data = static_cast<HistoryUpdateType>(tmp);
00148     }
00149 
00150 
00151     template<>
00152     void DataDeserializer::Deserialize<PerformUpdateType>(PerformUpdateType& data)
00153     {
00154         uint32_t tmp;
00155         *this >> tmp;
00156         data = static_cast<PerformUpdateType>(tmp);
00157     }
00158 
00159 
00160     template<>
00161     void DataDeserializer::Deserialize<MonitoringMode>(MonitoringMode& data)
00162     {
00163         uint32_t tmp;
00164         *this >> tmp;
00165         data = static_cast<MonitoringMode>(tmp);
00166     }
00167 
00168 
00169     template<>
00170     void DataDeserializer::Deserialize<DataChangeTrigger>(DataChangeTrigger& data)
00171     {
00172         uint32_t tmp;
00173         *this >> tmp;
00174         data = static_cast<DataChangeTrigger>(tmp);
00175     }
00176 
00177 
00178     template<>
00179     void DataDeserializer::Deserialize<DeadbandType>(DeadbandType& data)
00180     {
00181         uint32_t tmp;
00182         *this >> tmp;
00183         data = static_cast<DeadbandType>(tmp);
00184     }
00185 
00186 
00187     template<>
00188     void DataDeserializer::Deserialize<EnumeratedTestType>(EnumeratedTestType& data)
00189     {
00190         uint32_t tmp;
00191         *this >> tmp;
00192         data = static_cast<EnumeratedTestType>(tmp);
00193     }
00194 
00195 
00196     template<>
00197     void DataDeserializer::Deserialize<RedundancySupport>(RedundancySupport& data)
00198     {
00199         uint32_t tmp;
00200         *this >> tmp;
00201         data = static_cast<RedundancySupport>(tmp);
00202     }
00203 
00204 
00205     template<>
00206     void DataDeserializer::Deserialize<ServerState>(ServerState& data)
00207     {
00208         uint32_t tmp;
00209         *this >> tmp;
00210         data = static_cast<ServerState>(tmp);
00211     }
00212 
00213 
00214     template<>
00215     void DataDeserializer::Deserialize<ModelChangeStructureVerbMask>(ModelChangeStructureVerbMask& data)
00216     {
00217         uint32_t tmp;
00218         *this >> tmp;
00219         data = static_cast<ModelChangeStructureVerbMask>(tmp);
00220     }
00221 
00222 
00223     template<>
00224     void DataDeserializer::Deserialize<AxisScaleEnumeration>(AxisScaleEnumeration& data)
00225     {
00226         uint32_t tmp;
00227         *this >> tmp;
00228         data = static_cast<AxisScaleEnumeration>(tmp);
00229     }
00230 
00231 
00232     template<>
00233     void DataDeserializer::Deserialize<ExceptionDeviationFormat>(ExceptionDeviationFormat& data)
00234     {
00235         uint32_t tmp;
00236         *this >> tmp;
00237         data = static_cast<ExceptionDeviationFormat>(tmp);
00238     }
00239 
00240 
00241     template<>
00242     void DataDeserializer::Deserialize<XmlElement>(XmlElement& data)
00243     {
00244         *this >> data.Length;
00245         DeserializeContainer(*this, data.Value);
00246     }
00247 
00248 
00249 /*  DISABLED
00250 
00251     template<>
00252     void DataDeserializer::Deserialize<TwoByteNodeId>(TwoByteNodeId& data)
00253     {
00254         *this >> data.Identifier;
00255     }
00256 
00257 */
00258 
00259 /*  DISABLED
00260 
00261     template<>
00262     void DataDeserializer::Deserialize<FourByteNodeId>(FourByteNodeId& data)
00263     {
00264         *this >> data.NamespaceIndex;
00265         *this >> data.Identifier;
00266     }
00267 
00268 */
00269 
00270 /*  DISABLED
00271 
00272     template<>
00273     void DataDeserializer::Deserialize<NumericNodeId>(NumericNodeId& data)
00274     {
00275         *this >> data.NamespaceIndex;
00276         *this >> data.Identifier;
00277     }
00278 
00279 */
00280 
00281 /*  DISABLED
00282 
00283     template<>
00284     void DataDeserializer::Deserialize<StringNodeId>(StringNodeId& data)
00285     {
00286         *this >> data.NamespaceIndex;
00287         *this >> data.Identifier;
00288     }
00289 
00290 */
00291 
00292 /*  DISABLED
00293 
00294     template<>
00295     void DataDeserializer::Deserialize<GuidNodeId>(GuidNodeId& data)
00296     {
00297         *this >> data.NamespaceIndex;
00298         *this >> data.Identifier;
00299     }
00300 
00301 */
00302 
00303 /*  DISABLED
00304 
00305     template<>
00306     void DataDeserializer::Deserialize<ByteStringNodeId>(ByteStringNodeId& data)
00307     {
00308         *this >> data.NamespaceIndex;
00309         *this >> data.Identifier;
00310     }
00311 
00312 */
00313 
00314 /*  DISABLED
00315 
00316     template<>
00317     void DataDeserializer::Deserialize<NodeId>(NodeId& data)
00318     {
00319         *this >> data.NodeIdType;
00320         if ((data.NodeIdType) & (1>>(0))) *this >> data.TwoByte;
00321         if ((data.NodeIdType) & (1>>(1))) *this >> data.FourByte;
00322         if ((data.NodeIdType) & (1>>(2))) *this >> data.Numeric;
00323         if ((data.NodeIdType) & (1>>(3))) *this >> data.String;
00324         if ((data.NodeIdType) & (1>>(4))) *this >> data.Guid;
00325         if ((data.NodeIdType) & (1>>(5))) *this >> data.ByteString;
00326     }
00327 
00328 */
00329 
00330     template<>
00331     void DataDeserializer::Deserialize<ExtensionObject>(ExtensionObject& data)
00332     {
00333         *this >> data.TypeId;
00334         *this >> data.Encoding;
00335         if ((data.Encoding) & (1>>(0))) *this >> data.Body;
00336     }
00337 
00338 
00339 /*  DISABLED
00340 
00341     template<>
00342     void DataDeserializer::Deserialize<ExpandedNodeId>(ExpandedNodeId& data)
00343     {
00344         *this >> data.NodeIdType;
00345         if ((data.NodeIdType) & (1>>(0))) *this >> data.TwoByte;
00346         if ((data.NodeIdType) & (1>>(1))) *this >> data.FourByte;
00347         if ((data.NodeIdType) & (1>>(2))) *this >> data.Numeric;
00348         if ((data.NodeIdType) & (1>>(3))) *this >> data.String;
00349         if ((data.NodeIdType) & (1>>(4))) *this >> data.Guid;
00350         if ((data.NodeIdType) & (1>>(5))) *this >> data.ByteString;
00351         if ((data.NodeIdType) & (1>>(7))) *this >> data.NamespaceURI;
00352         if ((data.NodeIdType) & (1>>(6))) *this >> data.ServerIndex;
00353     }
00354 
00355 */
00356 
00357 /*  DISABLED
00358 
00359     template<>
00360     void DataDeserializer::Deserialize<DiagnosticInfo>(DiagnosticInfo& data)
00361     {
00362         *this >> data.Encoding;
00363         if ((data.Encoding) & (1>>(0))) *this >> data.SymbolicId;
00364         if ((data.Encoding) & (1>>(1))) *this >> data.NamespaceURI;
00365         if ((data.Encoding) & (1>>(2))) *this >> data.LocalizedText;
00366         if ((data.Encoding) & (1>>(4))) *this >> data.AdditionalInfo;
00367         if ((data.Encoding) & (1>>(5))) *this >> data.InnerStatusCode;
00368         if ((data.Encoding) & (1>>(6))) *this >> data.InnerDiagnosticInfo;
00369     }
00370 
00371 */
00372 
00373 /*  DISABLED
00374 
00375     template<>
00376     void DataDeserializer::Deserialize<QualifiedName>(QualifiedName& data)
00377     {
00378         *this >> data.NamespaceIndex;
00379         *this >> data.Name;
00380     }
00381 
00382 */
00383 
00384 /*  DISABLED
00385 
00386     template<>
00387     void DataDeserializer::Deserialize<LocalizedText>(LocalizedText& data)
00388     {
00389         *this >> data.Encoding;
00390         if ((data.Encoding) & (1>>(0))) *this >> data.Locale;
00391         if ((data.Encoding) & (1>>(1))) *this >> data.Text;
00392     }
00393 
00394 */
00395 
00396 /*  DISABLED
00397 
00398     template<>
00399     void DataDeserializer::Deserialize<Variant>(Variant& data)
00400     {
00401         *this >> data.Encoding;
00402         if ((data.Encoding) & (1>>(7))) *this >> data.ArrayLength;
00403         if ((data.VariantType) & (1>>(1))) DeserializeContainer(*this, data.Boolean);
00404         if ((data.VariantType) & (1>>(2))) DeserializeContainer(*this, data.SByte);
00405         if ((data.VariantType) & (1>>(3))) DeserializeContainer(*this, data.Byte);
00406         if ((data.VariantType) & (1>>(4))) DeserializeContainer(*this, data.Int16);
00407         if ((data.VariantType) & (1>>(5))) DeserializeContainer(*this, data.UInt16);
00408         if ((data.VariantType) & (1>>(6))) DeserializeContainer(*this, data.Int32);
00409         if ((data.VariantType) & (1>>(7))) DeserializeContainer(*this, data.UInt32);
00410         if ((data.VariantType) & (1>>(8))) DeserializeContainer(*this, data.Int64);
00411         if ((data.VariantType) & (1>>(9))) DeserializeContainer(*this, data.UInt64);
00412         if ((data.VariantType) & (1>>(10))) DeserializeContainer(*this, data.Float);
00413         if ((data.VariantType) & (1>>(11))) DeserializeContainer(*this, data.Double);
00414         if ((data.VariantType) & (1>>(12))) DeserializeContainer(*this, data.String);
00415         if ((data.VariantType) & (1>>(13))) DeserializeContainer(*this, data.DateTime);
00416         if ((data.VariantType) & (1>>(14))) DeserializeContainer(*this, data.Guid);
00417         if ((data.VariantType) & (1>>(15))) DeserializeContainer(*this, data.ByteString);
00418         if ((data.VariantType) & (1>>(16))) DeserializeContainer(*this, data.XmlElement);
00419         if ((data.VariantType) & (1>>(17))) DeserializeContainer(*this, data.NodeId);
00420         if ((data.VariantType) & (1>>(18))) DeserializeContainer(*this, data.ExpandedNodeId);
00421         if ((data.VariantType) & (1>>(19))) DeserializeContainer(*this, data.Status);
00422         if ((data.VariantType) & (1>>(20))) DeserializeContainer(*this, data.DiagnosticInfo);
00423         if ((data.VariantType) & (1>>(21))) DeserializeContainer(*this, data.QualifiedName);
00424         if ((data.VariantType) & (1>>(22))) DeserializeContainer(*this, data.LocalizedText);
00425         if ((data.VariantType) & (1>>(23))) DeserializeContainer(*this, data.ExtensionObject);
00426         if ((data.VariantType) & (1>>(24))) DeserializeContainer(*this, data.DataValue);
00427         if ((data.VariantType) & (1>>(25))) DeserializeContainer(*this, data.Variant);
00428     }
00429 
00430 */
00431 
00432 /*  DISABLED
00433 
00434     template<>
00435     void DataDeserializer::Deserialize<DataValue>(DataValue& data)
00436     {
00437         *this >> data.Encoding;
00438         if ((data.Encoding) & (1>>(0))) *this >> data.Value;
00439         if ((data.Encoding) & (1>>(1))) *this >> data.Status;
00440         if ((data.Encoding) & (1>>(2))) *this >> data.SourceTimestamp;
00441         if ((data.Encoding) & (1>>(3))) *this >> data.SourcePicoseconds;
00442         if ((data.Encoding) & (1>>(4))) *this >> data.ServerTimestamp;
00443         if ((data.Encoding) & (1>>(5))) *this >> data.ServerPicoseconds;
00444     }
00445 
00446 */
00447 
00448 /*  DISABLED
00449 
00450     template<>
00451     void DataDeserializer::Deserialize<ReferenceNode>(ReferenceNode& data)
00452     {
00453         *this >> data.ReferenceTypeId;
00454         *this >> data.IsInverse;
00455         *this >> data.TargetId;
00456     }
00457 
00458 */
00459 
00460 /*  DISABLED
00461 
00462     template<>
00463     void DataDeserializer::Deserialize<Node>(Node& data)
00464     {
00465         *this >> data.NodeId;
00466         *this >> data.NodeClass;
00467         *this >> data.BrowseName;
00468         *this >> data.DisplayName;
00469         *this >> data.Description;
00470         *this >> data.WriteMask;
00471         *this >> data.UserWriteMask;
00472         DeserializeContainer(*this, data.References);
00473     }
00474 
00475 */
00476 
00477 /*  DISABLED
00478 
00479     template<>
00480     void DataDeserializer::Deserialize<InstanceNode>(InstanceNode& data)
00481     {
00482         *this >> data.NodeId;
00483         *this >> data.NodeClass;
00484         *this >> data.BrowseName;
00485         *this >> data.DisplayName;
00486         *this >> data.Description;
00487         *this >> data.WriteMask;
00488         *this >> data.UserWriteMask;
00489         DeserializeContainer(*this, data.References);
00490     }
00491 
00492 */
00493 
00494 /*  DISABLED
00495 
00496     template<>
00497     void DataDeserializer::Deserialize<TypeNode>(TypeNode& data)
00498     {
00499         *this >> data.NodeId;
00500         *this >> data.NodeClass;
00501         *this >> data.BrowseName;
00502         *this >> data.DisplayName;
00503         *this >> data.Description;
00504         *this >> data.WriteMask;
00505         *this >> data.UserWriteMask;
00506         DeserializeContainer(*this, data.References);
00507     }
00508 
00509 */
00510 
00511 /*  DISABLED
00512 
00513     template<>
00514     void DataDeserializer::Deserialize<ObjectNode>(ObjectNode& data)
00515     {
00516         *this >> data.NodeId;
00517         *this >> data.NodeClass;
00518         *this >> data.BrowseName;
00519         *this >> data.DisplayName;
00520         *this >> data.Description;
00521         *this >> data.WriteMask;
00522         *this >> data.UserWriteMask;
00523         DeserializeContainer(*this, data.References);
00524         *this >> data.EventNotifier;
00525     }
00526 
00527 */
00528 
00529 /*  DISABLED
00530 
00531     template<>
00532     void DataDeserializer::Deserialize<ObjectTypeNode>(ObjectTypeNode& data)
00533     {
00534         *this >> data.NodeId;
00535         *this >> data.NodeClass;
00536         *this >> data.BrowseName;
00537         *this >> data.DisplayName;
00538         *this >> data.Description;
00539         *this >> data.WriteMask;
00540         *this >> data.UserWriteMask;
00541         DeserializeContainer(*this, data.References);
00542         *this >> data.IsAbstract;
00543     }
00544 
00545 */
00546 
00547 /*  DISABLED
00548 
00549     template<>
00550     void DataDeserializer::Deserialize<VariableNode>(VariableNode& data)
00551     {
00552         *this >> data.NodeId;
00553         *this >> data.NodeClass;
00554         *this >> data.BrowseName;
00555         *this >> data.DisplayName;
00556         *this >> data.Description;
00557         *this >> data.WriteMask;
00558         *this >> data.UserWriteMask;
00559         DeserializeContainer(*this, data.References);
00560         *this >> data.Value;
00561         *this >> data.DataType;
00562         *this >> data.ValueRank;
00563         DeserializeContainer(*this, data.ArrayDimensions);
00564         *this >> data.AccessLevel;
00565         *this >> data.UserAccessLevel;
00566         *this >> data.MinimumSamplingInterval;
00567         *this >> data.Historizing;
00568     }
00569 
00570 */
00571 
00572 /*  DISABLED
00573 
00574     template<>
00575     void DataDeserializer::Deserialize<VariableTypeNode>(VariableTypeNode& data)
00576     {
00577         *this >> data.NodeId;
00578         *this >> data.NodeClass;
00579         *this >> data.BrowseName;
00580         *this >> data.DisplayName;
00581         *this >> data.Description;
00582         *this >> data.WriteMask;
00583         *this >> data.UserWriteMask;
00584         DeserializeContainer(*this, data.References);
00585         *this >> data.Value;
00586         *this >> data.DataType;
00587         *this >> data.ValueRank;
00588         DeserializeContainer(*this, data.ArrayDimensions);
00589         *this >> data.IsAbstract;
00590     }
00591 
00592 */
00593 
00594 /*  DISABLED
00595 
00596     template<>
00597     void DataDeserializer::Deserialize<ReferenceTypeNode>(ReferenceTypeNode& data)
00598     {
00599         *this >> data.NodeId;
00600         *this >> data.NodeClass;
00601         *this >> data.BrowseName;
00602         *this >> data.DisplayName;
00603         *this >> data.Description;
00604         *this >> data.WriteMask;
00605         *this >> data.UserWriteMask;
00606         DeserializeContainer(*this, data.References);
00607         *this >> data.IsAbstract;
00608         *this >> data.Symmetric;
00609         *this >> data.InverseName;
00610     }
00611 
00612 */
00613 
00614 /*  DISABLED
00615 
00616     template<>
00617     void DataDeserializer::Deserialize<MethodNode>(MethodNode& data)
00618     {
00619         *this >> data.NodeId;
00620         *this >> data.NodeClass;
00621         *this >> data.BrowseName;
00622         *this >> data.DisplayName;
00623         *this >> data.Description;
00624         *this >> data.WriteMask;
00625         *this >> data.UserWriteMask;
00626         DeserializeContainer(*this, data.References);
00627         *this >> data.Executable;
00628         *this >> data.UserExecutable;
00629     }
00630 
00631 */
00632 
00633 /*  DISABLED
00634 
00635     template<>
00636     void DataDeserializer::Deserialize<ViewNode>(ViewNode& data)
00637     {
00638         *this >> data.NodeId;
00639         *this >> data.NodeClass;
00640         *this >> data.BrowseName;
00641         *this >> data.DisplayName;
00642         *this >> data.Description;
00643         *this >> data.WriteMask;
00644         *this >> data.UserWriteMask;
00645         DeserializeContainer(*this, data.References);
00646         *this >> data.ContainsNoLoops;
00647         *this >> data.EventNotifier;
00648     }
00649 
00650 */
00651 
00652 /*  DISABLED
00653 
00654     template<>
00655     void DataDeserializer::Deserialize<DataTypeNode>(DataTypeNode& data)
00656     {
00657         *this >> data.NodeId;
00658         *this >> data.NodeClass;
00659         *this >> data.BrowseName;
00660         *this >> data.DisplayName;
00661         *this >> data.Description;
00662         *this >> data.WriteMask;
00663         *this >> data.UserWriteMask;
00664         DeserializeContainer(*this, data.References);
00665         *this >> data.IsAbstract;
00666     }
00667 
00668 */
00669 
00670 /*  DISABLED
00671 
00672     template<>
00673     void DataDeserializer::Deserialize<Argument>(Argument& data)
00674     {
00675         *this >> data.Name;
00676         *this >> data.DataType;
00677         *this >> data.ValueRank;
00678         DeserializeContainer(*this, data.ArrayDimensions);
00679         *this >> data.Description;
00680     }
00681 
00682 */
00683 
00684 /*  DISABLED
00685 
00686     template<>
00687     void DataDeserializer::Deserialize<EnumValueType>(EnumValueType& data)
00688     {
00689         *this >> data.Value;
00690         *this >> data.DisplayName;
00691         *this >> data.Description;
00692     }
00693 
00694 */
00695 
00696 /*  DISABLED
00697 
00698     template<>
00699     void DataDeserializer::Deserialize<TimeZoneDataType>(TimeZoneDataType& data)
00700     {
00701         *this >> data.Offset;
00702         *this >> data.DaylightSavingInOffset;
00703     }
00704 
00705 */
00706 
00707     template<>
00708     void DataDeserializer::Deserialize<ApplicationDescription>(ApplicationDescription& data)
00709     {
00710         *this >> data.ApplicationUri;
00711         *this >> data.ProductUri;
00712         *this >> data.ApplicationName;
00713         *this >> data.ApplicationType;
00714         *this >> data.GatewayServerUri;
00715         *this >> data.DiscoveryProfileUri;
00716         DeserializeContainer(*this, data.DiscoveryUrls);
00717     }
00718 
00719 
00720 /*  DISABLED
00721 
00722     template<>
00723     void DataDeserializer::Deserialize<RequestHeader>(RequestHeader& data)
00724     {
00725         *this >> data.AuthenticationToken;
00726         *this >> data.Timestamp;
00727         *this >> data.RequestHandle;
00728         *this >> data.ReturnDiagnostics;
00729         *this >> data.AuditEntryId;
00730         *this >> data.TimeoutHint;
00731         *this >> data.AdditionalHeader;
00732     }
00733 
00734 */
00735 
00736 /*  DISABLED
00737 
00738     template<>
00739     void DataDeserializer::Deserialize<ResponseHeader>(ResponseHeader& data)
00740     {
00741         *this >> data.Timestamp;
00742         *this >> data.RequestHandle;
00743         *this >> data.ServiceResult;
00744         *this >> data.ServiceDiagnostics;
00745         DeserializeContainer(*this, data.StringTable);
00746         *this >> data.AdditionalHeader;
00747     }
00748 
00749 */
00750 
00751 /*  DISABLED
00752 
00753     template<>
00754     void DataDeserializer::Deserialize<ServiceFault>(ServiceFault& data)
00755     {
00756         *this >> data.TypeId;
00757         *this >> data.Header;
00758     }
00759 
00760 */
00761 
00762 /*  DISABLED
00763 
00764     template<>
00765     void DataDeserializer::Deserialize<FindServersParameters>(FindServersParameters& data)
00766     {
00767         *this >> data.EndpointUrl;
00768         DeserializeContainer(*this, data.LocaleIds);
00769         DeserializeContainer(*this, data.ServerUris);
00770     }
00771 
00772 */
00773 
00774 /*  DISABLED
00775 
00776     template<>
00777     void DataDeserializer::Deserialize<FindServersRequest>(FindServersRequest& data)
00778     {
00779         *this >> data.TypeId;
00780         *this >> data.Header;
00781         *this >> data.Parameters;
00782     }
00783 
00784 */
00785 
00786 /*  DISABLED
00787 
00788     template<>
00789     void DataDeserializer::Deserialize<FindServersResult>(FindServersResult& data)
00790     {
00791         DeserializeContainer(*this, data.Servers);
00792     }
00793 
00794 */
00795 
00796 /*  DISABLED
00797 
00798     template<>
00799     void DataDeserializer::Deserialize<FindServersResponse>(FindServersResponse& data)
00800     {
00801         *this >> data.TypeId;
00802         *this >> data.Header;
00803         *this >> data.Parameters;
00804     }
00805 
00806 */
00807 
00808     template<>
00809     void DataDeserializer::Deserialize<UserTokenPolicy>(UserTokenPolicy& data)
00810     {
00811         *this >> data.PolicyId;
00812         *this >> data.TokenType;
00813         *this >> data.IssuedTokenType;
00814         *this >> data.IssuerEndpointUrl;
00815         *this >> data.SecurityPolicyUri;
00816     }
00817 
00818 
00819     template<>
00820     void DataDeserializer::Deserialize<EndpointDescription>(EndpointDescription& data)
00821     {
00822         *this >> data.EndpointUrl;
00823         *this >> data.Server;
00824         *this >> data.ServerCertificate;
00825         *this >> data.SecurityMode;
00826         *this >> data.SecurityPolicyUri;
00827         DeserializeContainer(*this, data.UserIdentityTokens);
00828         *this >> data.TransportProfileUri;
00829         *this >> data.SecurityLevel;
00830     }
00831 
00832 
00833     template<>
00834     void DataDeserializer::Deserialize<GetEndpointsParameters>(GetEndpointsParameters& data)
00835     {
00836         *this >> data.EndpointUrl;
00837         DeserializeContainer(*this, data.LocaleIds);
00838         DeserializeContainer(*this, data.ProfileUris);
00839     }
00840 
00841 
00842     template<>
00843     void DataDeserializer::Deserialize<GetEndpointsRequest>(GetEndpointsRequest& data)
00844     {
00845         *this >> data.TypeId;
00846         *this >> data.Header;
00847         *this >> data.Parameters;
00848     }
00849 
00850 
00851     template<>
00852     void DataDeserializer::Deserialize<GetEndpointsResponse>(GetEndpointsResponse& data)
00853     {
00854         *this >> data.TypeId;
00855         *this >> data.Header;
00856         DeserializeContainer(*this, data.Endpoints);
00857     }
00858 
00859 
00860 /*  DISABLED
00861 
00862     template<>
00863     void DataDeserializer::Deserialize<RegisteredServer>(RegisteredServer& data)
00864     {
00865         *this >> data.ServerUri;
00866         *this >> data.ProductUri;
00867         DeserializeContainer(*this, data.ServerNames);
00868         *this >> data.ServerType;
00869         *this >> data.GatewayServerUri;
00870         DeserializeContainer(*this, data.DiscoveryUrls);
00871         *this >> data.SemaphoreFilePath;
00872         *this >> data.IsOnline;
00873     }
00874 
00875 */
00876 
00877 /*  DISABLED
00878 
00879     template<>
00880     void DataDeserializer::Deserialize<RegisterServerParameters>(RegisterServerParameters& data)
00881     {
00882         *this >> data.Server;
00883     }
00884 
00885 */
00886 
00887 /*  DISABLED
00888 
00889     template<>
00890     void DataDeserializer::Deserialize<RegisterServerRequest>(RegisterServerRequest& data)
00891     {
00892         *this >> data.TypeId;
00893         *this >> data.Header;
00894         *this >> data.Parameters;
00895     }
00896 
00897 */
00898 
00899 /*  DISABLED
00900 
00901     template<>
00902     void DataDeserializer::Deserialize<RegisterServerResponse>(RegisterServerResponse& data)
00903     {
00904         *this >> data.TypeId;
00905         *this >> data.Header;
00906     }
00907 
00908 */
00909 
00910 /*  DISABLED
00911 
00912     template<>
00913     void DataDeserializer::Deserialize<ChannelSecurityToken>(ChannelSecurityToken& data)
00914     {
00915         *this >> data.ChannelId;
00916         *this >> data.TokenId;
00917         *this >> data.CreatedAt;
00918         *this >> data.RevisedLifetime;
00919     }
00920 
00921 */
00922 
00923 /*  DISABLED
00924 
00925     template<>
00926     void DataDeserializer::Deserialize<OpenSecureChannelParameters>(OpenSecureChannelParameters& data)
00927     {
00928         *this >> data.ClientProtocolVersion;
00929         *this >> data.RequestType;
00930         *this >> data.SecurityMode;
00931         *this >> data.ClientNonce;
00932         *this >> data.RequestedLifetime;
00933     }
00934 
00935 */
00936 
00937 /*  DISABLED
00938 
00939     template<>
00940     void DataDeserializer::Deserialize<OpenSecureChannelRequest>(OpenSecureChannelRequest& data)
00941     {
00942         *this >> data.TypeId;
00943         *this >> data.Header;
00944         *this >> data.Parameters;
00945     }
00946 
00947 */
00948 
00949 /*  DISABLED
00950 
00951     template<>
00952     void DataDeserializer::Deserialize<OpenSecureChannelResult>(OpenSecureChannelResult& data)
00953     {
00954         *this >> data.ServerProtocolVersion;
00955         *this >> data.SecurityToken;
00956         *this >> data.ServerNonce;
00957     }
00958 
00959 */
00960 
00961 /*  DISABLED
00962 
00963     template<>
00964     void DataDeserializer::Deserialize<OpenSecureChannelResponse>(OpenSecureChannelResponse& data)
00965     {
00966         *this >> data.TypeId;
00967         *this >> data.Header;
00968         *this >> data.Parameters;
00969     }
00970 
00971 */
00972 
00973 /*  DISABLED
00974 
00975     template<>
00976     void DataDeserializer::Deserialize<CloseSecureChannelRequest>(CloseSecureChannelRequest& data)
00977     {
00978         *this >> data.TypeId;
00979         *this >> data.Header;
00980     }
00981 
00982 */
00983 
00984 /*  DISABLED
00985 
00986     template<>
00987     void DataDeserializer::Deserialize<CloseSecureChannelResponse>(CloseSecureChannelResponse& data)
00988     {
00989         *this >> data.TypeId;
00990         *this >> data.Header;
00991     }
00992 
00993 */
00994 
00995     template<>
00996     void DataDeserializer::Deserialize<SignedSoftwareCertificate>(SignedSoftwareCertificate& data)
00997     {
00998         *this >> data.CertificateData;
00999         *this >> data.Signature;
01000     }
01001 
01002 
01003     template<>
01004     void DataDeserializer::Deserialize<SignatureData>(SignatureData& data)
01005     {
01006         *this >> data.Algorithm;
01007         *this >> data.Signature;
01008     }
01009 
01010 
01011     template<>
01012     void DataDeserializer::Deserialize<CreateSessionParameters>(CreateSessionParameters& data)
01013     {
01014         *this >> data.ClientDescription;
01015         *this >> data.ServerUri;
01016         *this >> data.EndpointUrl;
01017         *this >> data.SessionName;
01018         *this >> data.ClientNonce;
01019         *this >> data.ClientCertificate;
01020         *this >> data.RequestedSessionTimeout;
01021         *this >> data.MaxResponseMessageSize;
01022     }
01023 
01024 
01025     template<>
01026     void DataDeserializer::Deserialize<CreateSessionRequest>(CreateSessionRequest& data)
01027     {
01028         *this >> data.TypeId;
01029         *this >> data.Header;
01030         *this >> data.Parameters;
01031     }
01032 
01033 
01034     template<>
01035     void DataDeserializer::Deserialize<CreateSessionResult>(CreateSessionResult& data)
01036     {
01037         *this >> data.SessionId;
01038         *this >> data.AuthenticationToken;
01039         *this >> data.RevisedSessionTimeout;
01040         *this >> data.ServerNonce;
01041         *this >> data.ServerCertificate;
01042         DeserializeContainer(*this, data.ServerEndpoints);
01043         DeserializeContainer(*this, data.ServerSoftwareCertificates);
01044         *this >> data.ServerSignature;
01045         *this >> data.MaxRequestMessageSize;
01046     }
01047 
01048 
01049     template<>
01050     void DataDeserializer::Deserialize<CreateSessionResponse>(CreateSessionResponse& data)
01051     {
01052         *this >> data.TypeId;
01053         *this >> data.Header;
01054         *this >> data.Parameters;
01055     }
01056 
01057 
01058 /*  DISABLED
01059 
01060     template<>
01061     void DataDeserializer::Deserialize<UserIdentityToken>(UserIdentityToken& data)
01062     {
01063         *this >> data.TypeId;
01064         *this >> data.Encoding;
01065         *this >> data.BodyLength;
01066         *this >> data.PolicyId;
01067     }
01068 
01069 */
01070 
01071 /*  DISABLED
01072 
01073     template<>
01074     void DataDeserializer::Deserialize<AnonymousIdentityToken>(AnonymousIdentityToken& data)
01075     {
01076         *this >> data.TypeId;
01077         *this >> data.Encoding;
01078         *this >> data.BodyLength;
01079         *this >> data.PolicyId;
01080     }
01081 
01082 */
01083 
01084 /*  DISABLED
01085 
01086     template<>
01087     void DataDeserializer::Deserialize<UserNameIdentityToken>(UserNameIdentityToken& data)
01088     {
01089         *this >> data.TypeId;
01090         *this >> data.Encoding;
01091         *this >> data.BodyLength;
01092         *this >> data.PolicyId;
01093         *this >> data.UserName;
01094         *this >> data.Password;
01095         *this >> data.EncryptionAlgorithm;
01096     }
01097 
01098 */
01099 
01100 /*  DISABLED
01101 
01102     template<>
01103     void DataDeserializer::Deserialize<X509IdentityToken>(X509IdentityToken& data)
01104     {
01105         *this >> data.TypeId;
01106         *this >> data.Encoding;
01107         *this >> data.BodyLength;
01108         *this >> data.PolicyId;
01109         *this >> data.CertificateData;
01110     }
01111 
01112 */
01113 
01114 /*  DISABLED
01115 
01116     template<>
01117     void DataDeserializer::Deserialize<IssuedIdentityToken>(IssuedIdentityToken& data)
01118     {
01119         *this >> data.TypeId;
01120         *this >> data.Encoding;
01121         *this >> data.BodyLength;
01122         *this >> data.PolicyId;
01123         *this >> data.TokenData;
01124         *this >> data.EncryptionAlgorithm;
01125     }
01126 
01127 */
01128 
01129     template<>
01130     void DataDeserializer::Deserialize<ActivateSessionParameters>(ActivateSessionParameters& data)
01131     {
01132         *this >> data.ClientSignature;
01133         DeserializeContainer(*this, data.ClientSoftwareCertificates);
01134         DeserializeContainer(*this, data.LocaleIds);
01135         *this >> data.UserIdentityToken;
01136         *this >> data.UserTokenSignature;
01137     }
01138 
01139 
01140     template<>
01141     void DataDeserializer::Deserialize<ActivateSessionRequest>(ActivateSessionRequest& data)
01142     {
01143         *this >> data.TypeId;
01144         *this >> data.Header;
01145         *this >> data.Parameters;
01146     }
01147 
01148 
01149     template<>
01150     void DataDeserializer::Deserialize<ActivateSessionResult>(ActivateSessionResult& data)
01151     {
01152         *this >> data.ServerNonce;
01153         DeserializeContainer(*this, data.Results);
01154         DeserializeContainer(*this, data.DiagnosticInfos);
01155     }
01156 
01157 
01158     template<>
01159     void DataDeserializer::Deserialize<ActivateSessionResponse>(ActivateSessionResponse& data)
01160     {
01161         *this >> data.TypeId;
01162         *this >> data.Header;
01163         *this >> data.Parameters;
01164     }
01165 
01166 
01167 /*  DISABLED
01168 
01169     template<>
01170     void DataDeserializer::Deserialize<CloseSessionRequest>(CloseSessionRequest& data)
01171     {
01172         *this >> data.TypeId;
01173         *this >> data.Header;
01174         *this >> data.DeleteSubscriptions;
01175     }
01176 
01177 */
01178 
01179 /*  DISABLED
01180 
01181     template<>
01182     void DataDeserializer::Deserialize<CloseSessionResponse>(CloseSessionResponse& data)
01183     {
01184         *this >> data.TypeId;
01185         *this >> data.Header;
01186     }
01187 
01188 */
01189 
01190 /*  DISABLED
01191 
01192     template<>
01193     void DataDeserializer::Deserialize<CancelParameters>(CancelParameters& data)
01194     {
01195         *this >> data.RequestHandle;
01196     }
01197 
01198 */
01199 
01200 /*  DISABLED
01201 
01202     template<>
01203     void DataDeserializer::Deserialize<CancelRequest>(CancelRequest& data)
01204     {
01205         *this >> data.TypeId;
01206         *this >> data.Header;
01207         *this >> data.Parameters;
01208     }
01209 
01210 */
01211 
01212 /*  DISABLED
01213 
01214     template<>
01215     void DataDeserializer::Deserialize<CancelResult>(CancelResult& data)
01216     {
01217         *this >> data.CancelCount;
01218     }
01219 
01220 */
01221 
01222 /*  DISABLED
01223 
01224     template<>
01225     void DataDeserializer::Deserialize<CancelResponse>(CancelResponse& data)
01226     {
01227         *this >> data.TypeId;
01228         *this >> data.Header;
01229         *this >> data.Parameters;
01230     }
01231 
01232 */
01233 
01234 /*  DISABLED
01235 
01236     template<>
01237     void DataDeserializer::Deserialize<NodeAttributes>(NodeAttributes& data)
01238     {
01239         *this >> data.TypeId;
01240         *this >> data.Encoding;
01241         *this >> data.BodyLength;
01242         *this >> data.SpecifiedAttributes;
01243         *this >> data.DisplayName;
01244         *this >> data.Description;
01245         *this >> data.WriteMask;
01246         *this >> data.UserWriteMask;
01247     }
01248 
01249 */
01250 
01251 /*  DISABLED
01252 
01253     template<>
01254     void DataDeserializer::Deserialize<ObjectAttributes>(ObjectAttributes& data)
01255     {
01256         *this >> data.TypeId;
01257         *this >> data.Encoding;
01258         *this >> data.BodyLength;
01259         *this >> data.SpecifiedAttributes;
01260         *this >> data.DisplayName;
01261         *this >> data.Description;
01262         *this >> data.WriteMask;
01263         *this >> data.UserWriteMask;
01264         *this >> data.EventNotifier;
01265     }
01266 
01267 */
01268 
01269 /*  DISABLED
01270 
01271     template<>
01272     void DataDeserializer::Deserialize<VariableAttributes>(VariableAttributes& data)
01273     {
01274         *this >> data.TypeId;
01275         *this >> data.Encoding;
01276         *this >> data.BodyLength;
01277         *this >> data.SpecifiedAttributes;
01278         *this >> data.DisplayName;
01279         *this >> data.Description;
01280         *this >> data.WriteMask;
01281         *this >> data.UserWriteMask;
01282         *this >> data.Value;
01283         *this >> data.DataType;
01284         *this >> data.ValueRank;
01285         DeserializeContainer(*this, data.ArrayDimensions);
01286         *this >> data.AccessLevel;
01287         *this >> data.UserAccessLevel;
01288         *this >> data.MinimumSamplingInterval;
01289         *this >> data.Historizing;
01290     }
01291 
01292 */
01293 
01294 /*  DISABLED
01295 
01296     template<>
01297     void DataDeserializer::Deserialize<MethodAttributes>(MethodAttributes& data)
01298     {
01299         *this >> data.TypeId;
01300         *this >> data.Encoding;
01301         *this >> data.BodyLength;
01302         *this >> data.SpecifiedAttributes;
01303         *this >> data.DisplayName;
01304         *this >> data.Description;
01305         *this >> data.WriteMask;
01306         *this >> data.UserWriteMask;
01307         *this >> data.Executable;
01308         *this >> data.UserExecutable;
01309     }
01310 
01311 */
01312 
01313 /*  DISABLED
01314 
01315     template<>
01316     void DataDeserializer::Deserialize<ObjectTypeAttributes>(ObjectTypeAttributes& data)
01317     {
01318         *this >> data.TypeId;
01319         *this >> data.Encoding;
01320         *this >> data.BodyLength;
01321         *this >> data.SpecifiedAttributes;
01322         *this >> data.DisplayName;
01323         *this >> data.Description;
01324         *this >> data.WriteMask;
01325         *this >> data.UserWriteMask;
01326         *this >> data.IsAbstract;
01327     }
01328 
01329 */
01330 
01331 /*  DISABLED
01332 
01333     template<>
01334     void DataDeserializer::Deserialize<VariableTypeAttributes>(VariableTypeAttributes& data)
01335     {
01336         *this >> data.TypeId;
01337         *this >> data.Encoding;
01338         *this >> data.BodyLength;
01339         *this >> data.SpecifiedAttributes;
01340         *this >> data.DisplayName;
01341         *this >> data.Description;
01342         *this >> data.WriteMask;
01343         *this >> data.UserWriteMask;
01344         *this >> data.Value;
01345         *this >> data.DataType;
01346         *this >> data.ValueRank;
01347         DeserializeContainer(*this, data.ArrayDimensions);
01348         *this >> data.IsAbstract;
01349     }
01350 
01351 */
01352 
01353 /*  DISABLED
01354 
01355     template<>
01356     void DataDeserializer::Deserialize<ReferenceTypeAttributes>(ReferenceTypeAttributes& data)
01357     {
01358         *this >> data.TypeId;
01359         *this >> data.Encoding;
01360         *this >> data.BodyLength;
01361         *this >> data.SpecifiedAttributes;
01362         *this >> data.DisplayName;
01363         *this >> data.Description;
01364         *this >> data.WriteMask;
01365         *this >> data.UserWriteMask;
01366         *this >> data.IsAbstract;
01367         *this >> data.Symmetric;
01368         *this >> data.InverseName;
01369     }
01370 
01371 */
01372 
01373 /*  DISABLED
01374 
01375     template<>
01376     void DataDeserializer::Deserialize<DataTypeAttributes>(DataTypeAttributes& data)
01377     {
01378         *this >> data.TypeId;
01379         *this >> data.Encoding;
01380         *this >> data.BodyLength;
01381         *this >> data.SpecifiedAttributes;
01382         *this >> data.DisplayName;
01383         *this >> data.Description;
01384         *this >> data.WriteMask;
01385         *this >> data.UserWriteMask;
01386         *this >> data.IsAbstract;
01387     }
01388 
01389 */
01390 
01391 /*  DISABLED
01392 
01393     template<>
01394     void DataDeserializer::Deserialize<ViewAttributes>(ViewAttributes& data)
01395     {
01396         *this >> data.TypeId;
01397         *this >> data.Encoding;
01398         *this >> data.BodyLength;
01399         *this >> data.SpecifiedAttributes;
01400         *this >> data.DisplayName;
01401         *this >> data.Description;
01402         *this >> data.WriteMask;
01403         *this >> data.UserWriteMask;
01404         *this >> data.ContainsNoLoops;
01405         *this >> data.EventNotifier;
01406     }
01407 
01408 */
01409 
01410 /*  DISABLED
01411 
01412     template<>
01413     void DataDeserializer::Deserialize<AddNodesItem>(AddNodesItem& data)
01414     {
01415         *this >> data.ParentNodeId;
01416         *this >> data.ReferenceTypeId;
01417         *this >> data.RequestedNewNodeId;
01418         *this >> data.BrowseName;
01419         *this >> data.NodeClass;
01420         *this >> data.NodeAttributes;
01421         *this >> data.TypeDefinition;
01422     }
01423 
01424 */
01425 
01426 /*  DISABLED
01427 
01428     template<>
01429     void DataDeserializer::Deserialize<AddNodesResult>(AddNodesResult& data)
01430     {
01431         *this >> data.Status;
01432         *this >> data.AddedNodeId;
01433     }
01434 
01435 */
01436 
01437 /*  DISABLED
01438 
01439     template<>
01440     void DataDeserializer::Deserialize<AddNodesParameters>(AddNodesParameters& data)
01441     {
01442         DeserializeContainer(*this, data.NodesToAdd);
01443     }
01444 
01445 */
01446 
01447 /*  DISABLED
01448 
01449     template<>
01450     void DataDeserializer::Deserialize<AddNodesRequest>(AddNodesRequest& data)
01451     {
01452         *this >> data.TypeId;
01453         *this >> data.Header;
01454         *this >> data.Parameters;
01455     }
01456 
01457 */
01458 
01459 /*  DISABLED
01460 
01461     template<>
01462     void DataDeserializer::Deserialize<AddNodesResponse>(AddNodesResponse& data)
01463     {
01464         *this >> data.TypeId;
01465         *this >> data.Header;
01466         DeserializeContainer(*this, data.Results);
01467         DeserializeContainer(*this, data.DiagnosticInfos);
01468     }
01469 
01470 */
01471 
01472 /*  DISABLED
01473 
01474     template<>
01475     void DataDeserializer::Deserialize<AddReferencesItem>(AddReferencesItem& data)
01476     {
01477         *this >> data.SourceNodeId;
01478         *this >> data.ReferenceTypeId;
01479         *this >> data.IsForward;
01480         *this >> data.TargetServerUri;
01481         *this >> data.TargetNodeId;
01482         *this >> data.TargetNodeClass;
01483     }
01484 
01485 */
01486 
01487 /*  DISABLED
01488 
01489     template<>
01490     void DataDeserializer::Deserialize<AddReferencesRequest>(AddReferencesRequest& data)
01491     {
01492         *this >> data.TypeId;
01493         *this >> data.Header;
01494         DeserializeContainer(*this, data.ReferencesToAdd);
01495     }
01496 
01497 */
01498 
01499 /*  DISABLED
01500 
01501     template<>
01502     void DataDeserializer::Deserialize<AddReferencesResponse>(AddReferencesResponse& data)
01503     {
01504         *this >> data.TypeId;
01505         *this >> data.Header;
01506         DeserializeContainer(*this, data.Results);
01507         DeserializeContainer(*this, data.DiagnosticInfos);
01508     }
01509 
01510 */
01511 
01512     template<>
01513     void DataDeserializer::Deserialize<DeleteNodesItem>(DeleteNodesItem& data)
01514     {
01515         *this >> data.NodeId;
01516         *this >> data.DeleteTargetReferences;
01517     }
01518 
01519 
01520     template<>
01521     void DataDeserializer::Deserialize<DeleteNodesRequest>(DeleteNodesRequest& data)
01522     {
01523         *this >> data.TypeId;
01524         *this >> data.Header;
01525         DeserializeContainer(*this, data.NodesToDelete);
01526     }
01527 
01528 
01529     template<>
01530     void DataDeserializer::Deserialize<DeleteNodesResponse>(DeleteNodesResponse& data)
01531     {
01532         *this >> data.TypeId;
01533         *this >> data.Header;
01534         DeserializeContainer(*this, data.Results);
01535         DeserializeContainer(*this, data.DiagnosticInfos);
01536     }
01537 
01538 
01539 /*  DISABLED
01540 
01541     template<>
01542     void DataDeserializer::Deserialize<DeleteReferencesItem>(DeleteReferencesItem& data)
01543     {
01544         *this >> data.SourceNodeId;
01545         *this >> data.ReferenceTypeId;
01546         *this >> data.IsForward;
01547         *this >> data.TargetNodeId;
01548         *this >> data.DeleteBidirectional;
01549     }
01550 
01551 */
01552 
01553 /*  DISABLED
01554 
01555     template<>
01556     void DataDeserializer::Deserialize<DeleteReferencesParameters>(DeleteReferencesParameters& data)
01557     {
01558         DeserializeContainer(*this, data.ReferencesToDelete);
01559     }
01560 
01561 */
01562 
01563 /*  DISABLED
01564 
01565     template<>
01566     void DataDeserializer::Deserialize<DeleteReferencesRequest>(DeleteReferencesRequest& data)
01567     {
01568         *this >> data.TypeId;
01569         *this >> data.Header;
01570         *this >> data.Parameters;
01571     }
01572 
01573 */
01574 
01575 /*  DISABLED
01576 
01577     template<>
01578     void DataDeserializer::Deserialize<DeleteReferencesResult>(DeleteReferencesResult& data)
01579     {
01580         DeserializeContainer(*this, data.Results);
01581         DeserializeContainer(*this, data.DiagnosticInfos);
01582     }
01583 
01584 */
01585 
01586 /*  DISABLED
01587 
01588     template<>
01589     void DataDeserializer::Deserialize<DeleteReferencesResponse>(DeleteReferencesResponse& data)
01590     {
01591         *this >> data.TypeId;
01592         *this >> data.Header;
01593         *this >> data.Parameters;
01594     }
01595 
01596 */
01597 
01598 /*  DISABLED
01599 
01600     template<>
01601     void DataDeserializer::Deserialize<ViewDescription>(ViewDescription& data)
01602     {
01603         *this >> data.ViewId;
01604         *this >> data.Timestamp;
01605         *this >> data.ViewVersion;
01606     }
01607 
01608 */
01609 
01610 /*  DISABLED
01611 
01612     template<>
01613     void DataDeserializer::Deserialize<BrowseDescription>(BrowseDescription& data)
01614     {
01615         *this >> data.NodeId;
01616         *this >> data.BrowseDirection;
01617         *this >> data.ReferenceTypeId;
01618         *this >> data.IncludeSubtypes;
01619         *this >> data.NodeClassMask;
01620         *this >> data.ResultMask;
01621     }
01622 
01623 */
01624 
01625 /*  DISABLED
01626 
01627     template<>
01628     void DataDeserializer::Deserialize<ReferenceDescription>(ReferenceDescription& data)
01629     {
01630         *this >> data.ReferenceTypeId;
01631         *this >> data.IsForward;
01632         *this >> data.NodeId;
01633         *this >> data.BrowseName;
01634         *this >> data.DisplayName;
01635         *this >> data.NodeClass;
01636         *this >> data.TypeDefinition;
01637     }
01638 
01639 */
01640 
01641 /*  DISABLED
01642 
01643     template<>
01644     void DataDeserializer::Deserialize<BrowseResult>(BrowseResult& data)
01645     {
01646         *this >> data.Status;
01647         *this >> data.ContinuationPoint;
01648         DeserializeContainer(*this, data.References);
01649     }
01650 
01651 */
01652 
01653 /*  DISABLED
01654 
01655     template<>
01656     void DataDeserializer::Deserialize<BrowseParameters>(BrowseParameters& data)
01657     {
01658         *this >> data.View;
01659         *this >> data.RequestedMaxReferencesPerNode;
01660         DeserializeContainer(*this, data.NodesToBrowse);
01661     }
01662 
01663 */
01664 
01665 /*  DISABLED
01666 
01667     template<>
01668     void DataDeserializer::Deserialize<BrowseRequest>(BrowseRequest& data)
01669     {
01670         *this >> data.TypeId;
01671         *this >> data.Header;
01672         *this >> data.Parameters;
01673     }
01674 
01675 */
01676 
01677 /*  DISABLED
01678 
01679     template<>
01680     void DataDeserializer::Deserialize<BrowseResponse>(BrowseResponse& data)
01681     {
01682         *this >> data.TypeId;
01683         *this >> data.Header;
01684         DeserializeContainer(*this, data.Results);
01685         DeserializeContainer(*this, data.DiagnosticInfos);
01686     }
01687 
01688 */
01689 
01690 /*  DISABLED
01691 
01692     template<>
01693     void DataDeserializer::Deserialize<BrowseNextParameters>(BrowseNextParameters& data)
01694     {
01695         *this >> data.ReleaseContinuationPoints;
01696         DeserializeContainer(*this, data.ContinuationPoints);
01697     }
01698 
01699 */
01700 
01701 /*  DISABLED
01702 
01703     template<>
01704     void DataDeserializer::Deserialize<BrowseNextRequest>(BrowseNextRequest& data)
01705     {
01706         *this >> data.TypeId;
01707         *this >> data.Header;
01708         *this >> data.Parameters;
01709     }
01710 
01711 */
01712 
01713 /*  DISABLED
01714 
01715     template<>
01716     void DataDeserializer::Deserialize<BrowseNextResult>(BrowseNextResult& data)
01717     {
01718         DeserializeContainer(*this, data.Results);
01719         DeserializeContainer(*this, data.DiagnosticInfos);
01720     }
01721 
01722 */
01723 
01724 /*  DISABLED
01725 
01726     template<>
01727     void DataDeserializer::Deserialize<BrowseNextResponse>(BrowseNextResponse& data)
01728     {
01729         *this >> data.TypeId;
01730         *this >> data.Header;
01731         *this >> data.Parameters;
01732     }
01733 
01734 */
01735 
01736 /*  DISABLED
01737 
01738     template<>
01739     void DataDeserializer::Deserialize<RelativePathElement>(RelativePathElement& data)
01740     {
01741         *this >> data.ReferenceTypeId;
01742         *this >> data.IsInverse;
01743         *this >> data.IncludeSubtypes;
01744         *this >> data.TargetName;
01745     }
01746 
01747 */
01748 
01749 /*  DISABLED
01750 
01751     template<>
01752     void DataDeserializer::Deserialize<RelativePath>(RelativePath& data)
01753     {
01754         DeserializeContainer(*this, data.Elements);
01755     }
01756 
01757 */
01758 
01759 /*  DISABLED
01760 
01761     template<>
01762     void DataDeserializer::Deserialize<BrowsePath>(BrowsePath& data)
01763     {
01764         *this >> data.StartingNode;
01765         *this >> data.RelativePath;
01766     }
01767 
01768 */
01769 
01770 /*  DISABLED
01771 
01772     template<>
01773     void DataDeserializer::Deserialize<BrowsePathTarget>(BrowsePathTarget& data)
01774     {
01775         *this >> data.TargetId;
01776         *this >> data.RemainingPathIndex;
01777     }
01778 
01779 */
01780 
01781 /*  DISABLED
01782 
01783     template<>
01784     void DataDeserializer::Deserialize<BrowsePathResult>(BrowsePathResult& data)
01785     {
01786         *this >> data.Status;
01787         DeserializeContainer(*this, data.Targets);
01788     }
01789 
01790 */
01791 
01792 /*  DISABLED
01793 
01794     template<>
01795     void DataDeserializer::Deserialize<TranslateBrowsePathsToNodeIdsParameters>(TranslateBrowsePathsToNodeIdsParameters& data)
01796     {
01797         DeserializeContainer(*this, data.BrowsePaths);
01798     }
01799 
01800 */
01801 
01802 /*  DISABLED
01803 
01804     template<>
01805     void DataDeserializer::Deserialize<TranslateBrowsePathsToNodeIdsRequest>(TranslateBrowsePathsToNodeIdsRequest& data)
01806     {
01807         *this >> data.TypeId;
01808         *this >> data.Header;
01809         *this >> data.Parameters;
01810     }
01811 
01812 */
01813 
01814 /*  DISABLED
01815 
01816     template<>
01817     void DataDeserializer::Deserialize<TranslateBrowsePathsToNodeIdsResponse>(TranslateBrowsePathsToNodeIdsResponse& data)
01818     {
01819         *this >> data.TypeId;
01820         *this >> data.Header;
01821         DeserializeContainer(*this, data.Results);
01822         DeserializeContainer(*this, data.DiagnosticInfos);
01823     }
01824 
01825 */
01826 
01827 /*  DISABLED
01828 
01829     template<>
01830     void DataDeserializer::Deserialize<RegisterNodesParameters>(RegisterNodesParameters& data)
01831     {
01832         DeserializeContainer(*this, data.NodesToRegister);
01833     }
01834 
01835 */
01836 
01837 /*  DISABLED
01838 
01839     template<>
01840     void DataDeserializer::Deserialize<RegisterNodesRequest>(RegisterNodesRequest& data)
01841     {
01842         *this >> data.TypeId;
01843         *this >> data.Header;
01844         *this >> data.Parameters;
01845     }
01846 
01847 */
01848 
01849 /*  DISABLED
01850 
01851     template<>
01852     void DataDeserializer::Deserialize<RegisterNodesResult>(RegisterNodesResult& data)
01853     {
01854         DeserializeContainer(*this, data.RegisteredNodeIds);
01855     }
01856 
01857 */
01858 
01859 /*  DISABLED
01860 
01861     template<>
01862     void DataDeserializer::Deserialize<RegisterNodesResponse>(RegisterNodesResponse& data)
01863     {
01864         *this >> data.TypeId;
01865         *this >> data.Header;
01866         *this >> data.Parameters;
01867     }
01868 
01869 */
01870 
01871 /*  DISABLED
01872 
01873     template<>
01874     void DataDeserializer::Deserialize<UnregisterNodesParameters>(UnregisterNodesParameters& data)
01875     {
01876         DeserializeContainer(*this, data.NodesToUnregister);
01877     }
01878 
01879 */
01880 
01881 /*  DISABLED
01882 
01883     template<>
01884     void DataDeserializer::Deserialize<UnregisterNodesRequest>(UnregisterNodesRequest& data)
01885     {
01886         *this >> data.TypeId;
01887         *this >> data.Header;
01888         *this >> data.Parameters;
01889     }
01890 
01891 */
01892 
01893 /*  DISABLED
01894 
01895     template<>
01896     void DataDeserializer::Deserialize<UnregisterNodesResponse>(UnregisterNodesResponse& data)
01897     {
01898         *this >> data.TypeId;
01899         *this >> data.Header;
01900     }
01901 
01902 */
01903 
01904 /*  DISABLED
01905 
01906     template<>
01907     void DataDeserializer::Deserialize<EndpointConfiguration>(EndpointConfiguration& data)
01908     {
01909         *this >> data.OperationTimeout;
01910         *this >> data.UseBinaryEncoding;
01911         *this >> data.MaxStringLength;
01912         *this >> data.MaxByteStringLength;
01913         *this >> data.MaxArrayLength;
01914         *this >> data.MaxMessageSize;
01915         *this >> data.MaxBufferSize;
01916         *this >> data.ChannelLifetime;
01917         *this >> data.SecurityTokenLifetime;
01918     }
01919 
01920 */
01921 
01922 /*  DISABLED
01923 
01924     template<>
01925     void DataDeserializer::Deserialize<SupportedProfile>(SupportedProfile& data)
01926     {
01927         *this >> data.OrganizationUri;
01928         *this >> data.ProfileId;
01929         *this >> data.ComplianceTool;
01930         *this >> data.ComplianceDate;
01931         *this >> data.ComplianceLevel;
01932         DeserializeContainer(*this, data.UnsupportedUnitIds);
01933     }
01934 
01935 */
01936 
01937 /*  DISABLED
01938 
01939     template<>
01940     void DataDeserializer::Deserialize<SoftwareCertificate>(SoftwareCertificate& data)
01941     {
01942         *this >> data.ProductName;
01943         *this >> data.ProductUri;
01944         *this >> data.VendorName;
01945         *this >> data.VendorProductCertificate;
01946         *this >> data.SoftwareVersion;
01947         *this >> data.BuildNumber;
01948         *this >> data.BuildDate;
01949         *this >> data.IssuedBy;
01950         *this >> data.IssueDate;
01951         DeserializeContainer(*this, data.SupportedProfiles);
01952     }
01953 
01954 */
01955 
01956 /*  DISABLED
01957 
01958     template<>
01959     void DataDeserializer::Deserialize<QueryDataDescription>(QueryDataDescription& data)
01960     {
01961         *this >> data.RelativePath;
01962         *this >> data.AttributeId;
01963         *this >> data.IndexRange;
01964     }
01965 
01966 */
01967 
01968 /*  DISABLED
01969 
01970     template<>
01971     void DataDeserializer::Deserialize<NodeTypeDescription>(NodeTypeDescription& data)
01972     {
01973         *this >> data.TypeDefinitionNode;
01974         *this >> data.IncludeSubTypes;
01975         DeserializeContainer(*this, data.DataToReturn);
01976     }
01977 
01978 */
01979 
01980 /*  DISABLED
01981 
01982     template<>
01983     void DataDeserializer::Deserialize<QueryDataSet>(QueryDataSet& data)
01984     {
01985         *this >> data.NodeId;
01986         *this >> data.TypeDefinitionNode;
01987         DeserializeContainer(*this, data.Values);
01988     }
01989 
01990 */
01991 
01992 /*  DISABLED
01993 
01994     template<>
01995     void DataDeserializer::Deserialize<NodeReference>(NodeReference& data)
01996     {
01997         *this >> data.NodeId;
01998         *this >> data.ReferenceTypeId;
01999         *this >> data.IsForward;
02000         DeserializeContainer(*this, data.ReferencedNodeIds);
02001     }
02002 
02003 */
02004 
02005 /*  DISABLED
02006 
02007     template<>
02008     void DataDeserializer::Deserialize<ContentFilterElement>(ContentFilterElement& data)
02009     {
02010         *this >> data.FilterOperator;
02011         DeserializeContainer(*this, data.FilterOperands);
02012     }
02013 
02014 */
02015 
02016 /*  DISABLED
02017 
02018     template<>
02019     void DataDeserializer::Deserialize<ContentFilter>(ContentFilter& data)
02020     {
02021         DeserializeContainer(*this, data.Elements);
02022     }
02023 
02024 */
02025 
02026 /*  DISABLED
02027 
02028     template<>
02029     void DataDeserializer::Deserialize<FilterOperand>(FilterOperand& data)
02030     {
02031         *this >> data.TypeId;
02032         *this >> data.Encoding;
02033         if ((data.Encoding) & (1>>(0))) *this >> data.Body;
02034     }
02035 
02036 */
02037 
02038 /*  DISABLED
02039 
02040     template<>
02041     void DataDeserializer::Deserialize<ElementOperand>(ElementOperand& data)
02042     {
02043         *this >> data.TypeId;
02044         *this >> data.Encoding;
02045         *this >> data.BodyLength;
02046         *this >> data.Index;
02047     }
02048 
02049 */
02050 
02051 /*  DISABLED
02052 
02053     template<>
02054     void DataDeserializer::Deserialize<LiteralOperand>(LiteralOperand& data)
02055     {
02056         *this >> data.TypeId;
02057         *this >> data.Encoding;
02058         *this >> data.BodyLength;
02059         *this >> data.Value;
02060     }
02061 
02062 */
02063 
02064 /*  DISABLED
02065 
02066     template<>
02067     void DataDeserializer::Deserialize<AttributeOperand>(AttributeOperand& data)
02068     {
02069         *this >> data.TypeId;
02070         *this >> data.Encoding;
02071         *this >> data.BodyLength;
02072         *this >> data.NodeId;
02073         *this >> data.Alias;
02074         *this >> data.BrowsePath;
02075         *this >> data.AttributeId;
02076         *this >> data.IndexRange;
02077     }
02078 
02079 */
02080 
02081 /*  DISABLED
02082 
02083     template<>
02084     void DataDeserializer::Deserialize<SimpleAttributeOperand>(SimpleAttributeOperand& data)
02085     {
02086         *this >> data.TypeId;
02087         *this >> data.Encoding;
02088         *this >> data.BodyLength;
02089         *this >> data.TypeDefinitionId;
02090         DeserializeContainer(*this, data.BrowsePath);
02091         *this >> data.AttributeId;
02092         *this >> data.IndexRange;
02093     }
02094 
02095 */
02096 
02097 /*  DISABLED
02098 
02099     template<>
02100     void DataDeserializer::Deserialize<ContentFilterElementResult>(ContentFilterElementResult& data)
02101     {
02102         *this >> data.Status;
02103         DeserializeContainer(*this, data.OperandStatusCodes);
02104         DeserializeContainer(*this, data.OperandDiagnosticInfos);
02105     }
02106 
02107 */
02108 
02109 /*  DISABLED
02110 
02111     template<>
02112     void DataDeserializer::Deserialize<ContentFilterResult>(ContentFilterResult& data)
02113     {
02114         DeserializeContainer(*this, data.ElementResults);
02115         DeserializeContainer(*this, data.ElementDiagnosticInfos);
02116     }
02117 
02118 */
02119 
02120 /*  DISABLED
02121 
02122     template<>
02123     void DataDeserializer::Deserialize<ParsingResult>(ParsingResult& data)
02124     {
02125         *this >> data.Status;
02126         DeserializeContainer(*this, data.DataStatusCodes);
02127         DeserializeContainer(*this, data.DataDiagnosticInfos);
02128     }
02129 
02130 */
02131 
02132 /*  DISABLED
02133 
02134     template<>
02135     void DataDeserializer::Deserialize<QueryFirstParameters>(QueryFirstParameters& data)
02136     {
02137         *this >> data.View;
02138         DeserializeContainer(*this, data.NodeTypes);
02139         *this >> data.Filter;
02140         *this >> data.MaxDataSetsToReturn;
02141         *this >> data.MaxReferencesToReturn;
02142     }
02143 
02144 */
02145 
02146 /*  DISABLED
02147 
02148     template<>
02149     void DataDeserializer::Deserialize<QueryFirstRequest>(QueryFirstRequest& data)
02150     {
02151         *this >> data.TypeId;
02152         *this >> data.Header;
02153         *this >> data.Parameters;
02154     }
02155 
02156 */
02157 
02158 /*  DISABLED
02159 
02160     template<>
02161     void DataDeserializer::Deserialize<QueryFirstResult>(QueryFirstResult& data)
02162     {
02163         DeserializeContainer(*this, data.QueryDataSets);
02164         *this >> data.ContinuationPoint;
02165         DeserializeContainer(*this, data.ParsingResults);
02166         DeserializeContainer(*this, data.DiagnosticInfos);
02167         *this >> data.FilterResult;
02168     }
02169 
02170 */
02171 
02172 /*  DISABLED
02173 
02174     template<>
02175     void DataDeserializer::Deserialize<QueryFirstResponse>(QueryFirstResponse& data)
02176     {
02177         *this >> data.TypeId;
02178         *this >> data.Header;
02179         *this >> data.Parameters;
02180     }
02181 
02182 */
02183 
02184 /*  DISABLED
02185 
02186     template<>
02187     void DataDeserializer::Deserialize<QueryNextParameters>(QueryNextParameters& data)
02188     {
02189         *this >> data.ReleaseContinuationPoint;
02190         *this >> data.ContinuationPoint;
02191     }
02192 
02193 */
02194 
02195 /*  DISABLED
02196 
02197     template<>
02198     void DataDeserializer::Deserialize<QueryNextRequest>(QueryNextRequest& data)
02199     {
02200         *this >> data.TypeId;
02201         *this >> data.Header;
02202         *this >> data.Parameters;
02203     }
02204 
02205 */
02206 
02207 /*  DISABLED
02208 
02209     template<>
02210     void DataDeserializer::Deserialize<QueryNextResult>(QueryNextResult& data)
02211     {
02212         DeserializeContainer(*this, data.QueryDataSets);
02213         *this >> data.RevisedContinuationPoint;
02214     }
02215 
02216 */
02217 
02218 /*  DISABLED
02219 
02220     template<>
02221     void DataDeserializer::Deserialize<QueryNextResponse>(QueryNextResponse& data)
02222     {
02223         *this >> data.TypeId;
02224         *this >> data.Header;
02225         *this >> data.Parameters;
02226     }
02227 
02228 */
02229 
02230     template<>
02231     void DataDeserializer::Deserialize<ReadValueId>(ReadValueId& data)
02232     {
02233         *this >> data.NodeId;
02234         *this >> data.AttributeId;
02235         *this >> data.IndexRange;
02236         *this >> data.DataEncoding;
02237     }
02238 
02239 
02240     template<>
02241     void DataDeserializer::Deserialize<ReadParameters>(ReadParameters& data)
02242     {
02243         *this >> data.MaxAge;
02244         *this >> data.TimestampsToReturn;
02245         DeserializeContainer(*this, data.AttributesToRead);
02246     }
02247 
02248 
02249     template<>
02250     void DataDeserializer::Deserialize<ReadRequest>(ReadRequest& data)
02251     {
02252         *this >> data.TypeId;
02253         *this >> data.Header;
02254         *this >> data.Parameters;
02255     }
02256 
02257 
02258     template<>
02259     void DataDeserializer::Deserialize<ReadResponse>(ReadResponse& data)
02260     {
02261         *this >> data.TypeId;
02262         *this >> data.Header;
02263         DeserializeContainer(*this, data.Results);
02264         DeserializeContainer(*this, data.DiagnosticInfos);
02265     }
02266 
02267 
02268 /*  DISABLED
02269 
02270     template<>
02271     void DataDeserializer::Deserialize<HistoryReadValueId>(HistoryReadValueId& data)
02272     {
02273         *this >> data.NodeId;
02274         *this >> data.IndexRange;
02275         *this >> data.DataEncoding;
02276         *this >> data.ContinuationPoint;
02277     }
02278 
02279 */
02280 
02281 /*  DISABLED
02282 
02283     template<>
02284     void DataDeserializer::Deserialize<HistoryReadResult>(HistoryReadResult& data)
02285     {
02286         *this >> data.Status;
02287         *this >> data.ContinuationPoint;
02288         *this >> data.HistoryData;
02289     }
02290 
02291 */
02292 
02293 /*  DISABLED
02294 
02295     template<>
02296     void DataDeserializer::Deserialize<HistoryReadDetails>(HistoryReadDetails& data)
02297     {
02298         *this >> data.TypeId;
02299         *this >> data.Encoding;
02300         if ((data.Encoding) & (1>>(0))) *this >> data.Body;
02301     }
02302 
02303 */
02304 
02305 /*  DISABLED
02306 
02307     template<>
02308     void DataDeserializer::Deserialize<ReadRawModifiedDetails>(ReadRawModifiedDetails& data)
02309     {
02310         *this >> data.TypeId;
02311         *this >> data.Encoding;
02312         *this >> data.BodyLength;
02313         *this >> data.IsReadModified;
02314         *this >> data.StartTime;
02315         *this >> data.EndTime;
02316         *this >> data.NumValuesPerNode;
02317         *this >> data.ReturnBounds;
02318     }
02319 
02320 */
02321 
02322 /*  DISABLED
02323 
02324     template<>
02325     void DataDeserializer::Deserialize<ReadAtTimeDetails>(ReadAtTimeDetails& data)
02326     {
02327         *this >> data.TypeId;
02328         *this >> data.Encoding;
02329         *this >> data.BodyLength;
02330         DeserializeContainer(*this, data.ReqTimes);
02331         *this >> data.UseSimpleBounds;
02332     }
02333 
02334 */
02335 
02336 /*  DISABLED
02337 
02338     template<>
02339     void DataDeserializer::Deserialize<HistoryData>(HistoryData& data)
02340     {
02341         DeserializeContainer(*this, data.DataValues);
02342     }
02343 
02344 */
02345 
02346 /*  DISABLED
02347 
02348     template<>
02349     void DataDeserializer::Deserialize<ModificationInfo>(ModificationInfo& data)
02350     {
02351         *this >> data.ModificationTime;
02352         *this >> data.UpdateType;
02353         *this >> data.UserName;
02354     }
02355 
02356 */
02357 
02358 /*  DISABLED
02359 
02360     template<>
02361     void DataDeserializer::Deserialize<HistoryModifiedData>(HistoryModifiedData& data)
02362     {
02363         DeserializeContainer(*this, data.DataValues);
02364         DeserializeContainer(*this, data.ModificationInfos);
02365     }
02366 
02367 */
02368 
02369 /*  DISABLED
02370 
02371     template<>
02372     void DataDeserializer::Deserialize<HistoryReadParameters>(HistoryReadParameters& data)
02373     {
02374         *this >> data.HistoryReadDetails;
02375         *this >> data.TimestampsToReturn;
02376         *this >> data.ReleaseContinuationPoints;
02377         DeserializeContainer(*this, data.AttributesToRead);
02378     }
02379 
02380 */
02381 
02382 /*  DISABLED
02383 
02384     template<>
02385     void DataDeserializer::Deserialize<HistoryReadRequest>(HistoryReadRequest& data)
02386     {
02387         *this >> data.TypeId;
02388         *this >> data.Header;
02389         *this >> data.Parameters;
02390     }
02391 
02392 */
02393 
02394 /*  DISABLED
02395 
02396     template<>
02397     void DataDeserializer::Deserialize<HistoryReadResponse>(HistoryReadResponse& data)
02398     {
02399         *this >> data.TypeId;
02400         *this >> data.Header;
02401         DeserializeContainer(*this, data.Results);
02402         DeserializeContainer(*this, data.DiagnosticInfos);
02403     }
02404 
02405 */
02406 
02407     template<>
02408     void DataDeserializer::Deserialize<WriteValue>(WriteValue& data)
02409     {
02410         *this >> data.NodeId;
02411         *this >> data.AttributeId;
02412         *this >> data.IndexRange;
02413         *this >> data.Value;
02414     }
02415 
02416 
02417     template<>
02418     void DataDeserializer::Deserialize<WriteParameters>(WriteParameters& data)
02419     {
02420         DeserializeContainer(*this, data.NodesToWrite);
02421     }
02422 
02423 
02424     template<>
02425     void DataDeserializer::Deserialize<WriteRequest>(WriteRequest& data)
02426     {
02427         *this >> data.TypeId;
02428         *this >> data.Header;
02429         *this >> data.Parameters;
02430     }
02431 
02432 
02433     template<>
02434     void DataDeserializer::Deserialize<WriteResponse>(WriteResponse& data)
02435     {
02436         *this >> data.TypeId;
02437         *this >> data.Header;
02438         DeserializeContainer(*this, data.Results);
02439         DeserializeContainer(*this, data.DiagnosticInfos);
02440     }
02441 
02442 
02443 /*  DISABLED
02444 
02445     template<>
02446     void DataDeserializer::Deserialize<HistoryUpdateDetails>(HistoryUpdateDetails& data)
02447     {
02448         *this >> data.NodeId;
02449     }
02450 
02451 */
02452 
02453 /*  DISABLED
02454 
02455     template<>
02456     void DataDeserializer::Deserialize<UpdateDataDetails>(UpdateDataDetails& data)
02457     {
02458         *this >> data.NodeId;
02459         *this >> data.PerformInsertReplace;
02460         DeserializeContainer(*this, data.UpdateValues);
02461     }
02462 
02463 */
02464 
02465 /*  DISABLED
02466 
02467     template<>
02468     void DataDeserializer::Deserialize<UpdateStructureDataDetails>(UpdateStructureDataDetails& data)
02469     {
02470         *this >> data.NodeId;
02471         *this >> data.PerformInsertReplace;
02472         DeserializeContainer(*this, data.UpdateValues);
02473     }
02474 
02475 */
02476 
02477 /*  DISABLED
02478 
02479     template<>
02480     void DataDeserializer::Deserialize<DeleteRawModifiedDetails>(DeleteRawModifiedDetails& data)
02481     {
02482         *this >> data.NodeId;
02483         *this >> data.IsDeleteModified;
02484         *this >> data.StartTime;
02485         *this >> data.EndTime;
02486     }
02487 
02488 */
02489 
02490 /*  DISABLED
02491 
02492     template<>
02493     void DataDeserializer::Deserialize<DeleteAtTimeDetails>(DeleteAtTimeDetails& data)
02494     {
02495         *this >> data.NodeId;
02496         DeserializeContainer(*this, data.ReqTimes);
02497     }
02498 
02499 */
02500 
02501 /*  DISABLED
02502 
02503     template<>
02504     void DataDeserializer::Deserialize<DeleteEventDetails>(DeleteEventDetails& data)
02505     {
02506         *this >> data.NodeId;
02507         DeserializeContainer(*this, data.EventIds);
02508     }
02509 
02510 */
02511 
02512 /*  DISABLED
02513 
02514     template<>
02515     void DataDeserializer::Deserialize<HistoryUpdateResult>(HistoryUpdateResult& data)
02516     {
02517         *this >> data.Status;
02518         DeserializeContainer(*this, data.OperationResults);
02519         DeserializeContainer(*this, data.DiagnosticInfos);
02520     }
02521 
02522 */
02523 
02524 /*  DISABLED
02525 
02526     template<>
02527     void DataDeserializer::Deserialize<HistoryUpdateParameters>(HistoryUpdateParameters& data)
02528     {
02529         DeserializeContainer(*this, data.HistoryUpdateDetails);
02530     }
02531 
02532 */
02533 
02534 /*  DISABLED
02535 
02536     template<>
02537     void DataDeserializer::Deserialize<HistoryUpdateRequest>(HistoryUpdateRequest& data)
02538     {
02539         *this >> data.TypeId;
02540         *this >> data.Header;
02541         *this >> data.Parameters;
02542     }
02543 
02544 */
02545 
02546 /*  DISABLED
02547 
02548     template<>
02549     void DataDeserializer::Deserialize<HistoryUpdateResponse>(HistoryUpdateResponse& data)
02550     {
02551         *this >> data.TypeId;
02552         *this >> data.Header;
02553         DeserializeContainer(*this, data.Results);
02554         DeserializeContainer(*this, data.DiagnosticInfos);
02555     }
02556 
02557 */
02558 
02559     template<>
02560     void DataDeserializer::Deserialize<CallMethodRequest>(CallMethodRequest& data)
02561     {
02562         *this >> data.ObjectId;
02563         *this >> data.MethodId;
02564         DeserializeContainer(*this, data.InputArguments);
02565     }
02566 
02567 
02568     template<>
02569     void DataDeserializer::Deserialize<CallMethodResult>(CallMethodResult& data)
02570     {
02571         *this >> data.Status;
02572         DeserializeContainer(*this, data.InputArgumentResults);
02573         DeserializeContainer(*this, data.InputArgumentDiagnosticInfos);
02574         DeserializeContainer(*this, data.OutputArguments);
02575     }
02576 
02577 
02578     template<>
02579     void DataDeserializer::Deserialize<CallRequest>(CallRequest& data)
02580     {
02581         *this >> data.TypeId;
02582         *this >> data.Header;
02583         DeserializeContainer(*this, data.MethodsToCall);
02584     }
02585 
02586 
02587     template<>
02588     void DataDeserializer::Deserialize<CallResponse>(CallResponse& data)
02589     {
02590         *this >> data.TypeId;
02591         *this >> data.Header;
02592         DeserializeContainer(*this, data.Results);
02593         DeserializeContainer(*this, data.DiagnosticInfos);
02594     }
02595 
02596 
02597 /*  DISABLED
02598 
02599     template<>
02600     void DataDeserializer::Deserialize<MonitoringFilter>(MonitoringFilter& data)
02601     {
02602         *this >> data.TypeId;
02603         *this >> data.Encoding;
02604         if ((data.Encoding) & (1>>(0))) *this >> data.Body;
02605     }
02606 
02607 */
02608 
02609 /*  DISABLED
02610 
02611     template<>
02612     void DataDeserializer::Deserialize<DataChangeFilter>(DataChangeFilter& data)
02613     {
02614         *this >> data.TypeId;
02615         *this >> data.Encoding;
02616         *this >> data.BodyLength;
02617         *this >> data.Trigger;
02618         *this >> data.DeadbandType;
02619         *this >> data.DeadbandValue;
02620     }
02621 
02622 */
02623 
02624 /*  DISABLED
02625 
02626     template<>
02627     void DataDeserializer::Deserialize<EventFilter>(EventFilter& data)
02628     {
02629         *this >> data.TypeId;
02630         *this >> data.Encoding;
02631         *this >> data.BodyLength;
02632         DeserializeContainer(*this, data.SelectClauses);
02633         *this >> data.WhereClause;
02634     }
02635 
02636 */
02637 
02638 /*  DISABLED
02639 
02640     template<>
02641     void DataDeserializer::Deserialize<ReadEventDetails>(ReadEventDetails& data)
02642     {
02643         *this >> data.TypeId;
02644         *this >> data.Encoding;
02645         *this >> data.BodyLength;
02646         *this >> data.NumValuesPerNode;
02647         *this >> data.StartTime;
02648         *this >> data.EndTime;
02649         *this >> data.Filter;
02650     }
02651 
02652 */
02653 
02654 /*  DISABLED
02655 
02656     template<>
02657     void DataDeserializer::Deserialize<AggregateConfiguration>(AggregateConfiguration& data)
02658     {
02659         *this >> data.UseServerCapabilitiesDefaults;
02660         *this >> data.TreatUncertainAsBad;
02661         *this >> data.PercentDataBad;
02662         *this >> data.PercentDataGood;
02663         *this >> data.UseSlopedExtrapolation;
02664     }
02665 
02666 */
02667 
02668 /*  DISABLED
02669 
02670     template<>
02671     void DataDeserializer::Deserialize<ReadProcessedDetails>(ReadProcessedDetails& data)
02672     {
02673         *this >> data.TypeId;
02674         *this >> data.Encoding;
02675         *this >> data.BodyLength;
02676         *this >> data.StartTime;
02677         *this >> data.EndTime;
02678         *this >> data.ProcessingInterval;
02679         DeserializeContainer(*this, data.AggregateType);
02680         *this >> data.AggregateConfiguration;
02681     }
02682 
02683 */
02684 
02685 /*  DISABLED
02686 
02687     template<>
02688     void DataDeserializer::Deserialize<AggregateFilter>(AggregateFilter& data)
02689     {
02690         *this >> data.TypeId;
02691         *this >> data.Encoding;
02692         *this >> data.BodyLength;
02693         *this >> data.StartTime;
02694         *this >> data.AggregateType;
02695         *this >> data.ProcessingInterval;
02696         *this >> data.AggregateConfiguration;
02697     }
02698 
02699 */
02700 
02701 /*  DISABLED
02702 
02703     template<>
02704     void DataDeserializer::Deserialize<MonitoringFilterResult>(MonitoringFilterResult& data)
02705     {
02706         *this >> data.TypeId;
02707         *this >> data.Encoding;
02708         if ((data.Encoding) & (1>>(0))) *this >> data.Body;
02709     }
02710 
02711 */
02712 
02713 /*  DISABLED
02714 
02715     template<>
02716     void DataDeserializer::Deserialize<EventFilterResult>(EventFilterResult& data)
02717     {
02718         *this >> data.TypeId;
02719         *this >> data.Encoding;
02720         *this >> data.BodyLength;
02721         DeserializeContainer(*this, data.SelectClauseResults);
02722         DeserializeContainer(*this, data.SelectClauseDiagnosticInfos);
02723         *this >> data.WhereClauseResult;
02724     }
02725 
02726 */
02727 
02728 /*  DISABLED
02729 
02730     template<>
02731     void DataDeserializer::Deserialize<HistoryUpdateEventResult>(HistoryUpdateEventResult& data)
02732     {
02733         *this >> data.Status;
02734         *this >> data.EventFilterResult;
02735     }
02736 
02737 */
02738 
02739 /*  DISABLED
02740 
02741     template<>
02742     void DataDeserializer::Deserialize<AggregateFilterResult>(AggregateFilterResult& data)
02743     {
02744         *this >> data.TypeId;
02745         *this >> data.Encoding;
02746         *this >> data.BodyLength;
02747         *this >> data.RevisedStartTime;
02748         *this >> data.RevisedProcessingInterval;
02749         *this >> data.RevisedAggregateConfiguration;
02750     }
02751 
02752 */
02753 
02754     template<>
02755     void DataDeserializer::Deserialize<MonitoringParameters>(MonitoringParameters& data)
02756     {
02757         *this >> data.ClientHandle;
02758         *this >> data.SamplingInterval;
02759         *this >> data.Filter;
02760         *this >> data.QueueSize;
02761         *this >> data.DiscardOldest;
02762     }
02763 
02764 
02765     template<>
02766     void DataDeserializer::Deserialize<MonitoredItemCreateRequest>(MonitoredItemCreateRequest& data)
02767     {
02768         *this >> data.ItemToMonitor;
02769         *this >> data.MonitoringMode;
02770         *this >> data.RequestedParameters;
02771     }
02772 
02773 
02774     template<>
02775     void DataDeserializer::Deserialize<MonitoredItemCreateResult>(MonitoredItemCreateResult& data)
02776     {
02777         *this >> data.Status;
02778         *this >> data.MonitoredItemId;
02779         *this >> data.RevisedSamplingInterval;
02780         *this >> data.RevisedQueueSize;
02781         *this >> data.FilterResult;
02782     }
02783 
02784 
02785     template<>
02786     void DataDeserializer::Deserialize<MonitoredItemsParameters>(MonitoredItemsParameters& data)
02787     {
02788         *this >> data.SubscriptionId;
02789         *this >> data.TimestampsToReturn;
02790         DeserializeContainer(*this, data.ItemsToCreate);
02791     }
02792 
02793 
02794     template<>
02795     void DataDeserializer::Deserialize<CreateMonitoredItemsRequest>(CreateMonitoredItemsRequest& data)
02796     {
02797         *this >> data.TypeId;
02798         *this >> data.Header;
02799         *this >> data.Parameters;
02800     }
02801 
02802 
02803     template<>
02804     void DataDeserializer::Deserialize<CreateMonitoredItemsResponse>(CreateMonitoredItemsResponse& data)
02805     {
02806         *this >> data.TypeId;
02807         *this >> data.Header;
02808         DeserializeContainer(*this, data.Results);
02809         DeserializeContainer(*this, data.DiagnosticInfos);
02810     }
02811 
02812 
02813 /*  DISABLED
02814 
02815     template<>
02816     void DataDeserializer::Deserialize<MonitoredItemModifyRequest>(MonitoredItemModifyRequest& data)
02817     {
02818         *this >> data.MonitoredItemId;
02819         *this >> data.RequestedParameters;
02820     }
02821 
02822 */
02823 
02824 /*  DISABLED
02825 
02826     template<>
02827     void DataDeserializer::Deserialize<MonitoredItemModifyResult>(MonitoredItemModifyResult& data)
02828     {
02829         *this >> data.Status;
02830         *this >> data.RevisedSamplingInterval;
02831         *this >> data.RevisedQueueSize;
02832         *this >> data.FilterResult;
02833     }
02834 
02835 */
02836 
02837 /*  DISABLED
02838 
02839     template<>
02840     void DataDeserializer::Deserialize<ModifyMonitoredItemsParameters>(ModifyMonitoredItemsParameters& data)
02841     {
02842         *this >> data.SubscriptionId;
02843         *this >> data.TimestampsToReturn;
02844         DeserializeContainer(*this, data.ItemsToModify);
02845     }
02846 
02847 */
02848 
02849 /*  DISABLED
02850 
02851     template<>
02852     void DataDeserializer::Deserialize<ModifyMonitoredItemsRequest>(ModifyMonitoredItemsRequest& data)
02853     {
02854         *this >> data.TypeId;
02855         *this >> data.Header;
02856         *this >> data.Parameters;
02857     }
02858 
02859 */
02860 
02861 /*  DISABLED
02862 
02863     template<>
02864     void DataDeserializer::Deserialize<ModifyMonitoredItemsResponse>(ModifyMonitoredItemsResponse& data)
02865     {
02866         *this >> data.TypeId;
02867         *this >> data.Header;
02868         DeserializeContainer(*this, data.Results);
02869         DeserializeContainer(*this, data.DiagnosticInfos);
02870     }
02871 
02872 */
02873 
02874 /*  DISABLED
02875 
02876     template<>
02877     void DataDeserializer::Deserialize<SetMonitoringModeParameters>(SetMonitoringModeParameters& data)
02878     {
02879         *this >> data.SubscriptionId;
02880         *this >> data.MonitoringMode;
02881         DeserializeContainer(*this, data.MonitoredItemIds);
02882     }
02883 
02884 */
02885 
02886 /*  DISABLED
02887 
02888     template<>
02889     void DataDeserializer::Deserialize<SetMonitoringModeRequest>(SetMonitoringModeRequest& data)
02890     {
02891         *this >> data.TypeId;
02892         *this >> data.Header;
02893         *this >> data.Parameters;
02894     }
02895 
02896 */
02897 
02898 /*  DISABLED
02899 
02900     template<>
02901     void DataDeserializer::Deserialize<SetMonitoringModeResult>(SetMonitoringModeResult& data)
02902     {
02903         DeserializeContainer(*this, data.Results);
02904         DeserializeContainer(*this, data.DiagnosticInfos);
02905     }
02906 
02907 */
02908 
02909 /*  DISABLED
02910 
02911     template<>
02912     void DataDeserializer::Deserialize<SetMonitoringModeResponse>(SetMonitoringModeResponse& data)
02913     {
02914         *this >> data.TypeId;
02915         *this >> data.Header;
02916         *this >> data.Parameters;
02917     }
02918 
02919 */
02920 
02921 /*  DISABLED
02922 
02923     template<>
02924     void DataDeserializer::Deserialize<SetTriggeringParameters>(SetTriggeringParameters& data)
02925     {
02926         *this >> data.SubscriptionId;
02927         *this >> data.TriggeringItemId;
02928         DeserializeContainer(*this, data.LinksToAdd);
02929         DeserializeContainer(*this, data.LinksToRemove);
02930     }
02931 
02932 */
02933 
02934 /*  DISABLED
02935 
02936     template<>
02937     void DataDeserializer::Deserialize<SetTriggeringRequest>(SetTriggeringRequest& data)
02938     {
02939         *this >> data.TypeId;
02940         *this >> data.Header;
02941         *this >> data.Parameters;
02942     }
02943 
02944 */
02945 
02946 /*  DISABLED
02947 
02948     template<>
02949     void DataDeserializer::Deserialize<SetTriggeringResult>(SetTriggeringResult& data)
02950     {
02951         DeserializeContainer(*this, data.AddResults);
02952         DeserializeContainer(*this, data.AddDiagnosticInfos);
02953         DeserializeContainer(*this, data.RemoveResults);
02954         DeserializeContainer(*this, data.RemoveDiagnosticInfos);
02955     }
02956 
02957 */
02958 
02959 /*  DISABLED
02960 
02961     template<>
02962     void DataDeserializer::Deserialize<SetTriggeringResponse>(SetTriggeringResponse& data)
02963     {
02964         *this >> data.TypeId;
02965         *this >> data.Header;
02966         *this >> data.Parameters;
02967     }
02968 
02969 */
02970 
02971     template<>
02972     void DataDeserializer::Deserialize<DeleteMonitoredItemsParameters>(DeleteMonitoredItemsParameters& data)
02973     {
02974         *this >> data.SubscriptionId;
02975         DeserializeContainer(*this, data.MonitoredItemIds);
02976     }
02977 
02978 
02979     template<>
02980     void DataDeserializer::Deserialize<DeleteMonitoredItemsRequest>(DeleteMonitoredItemsRequest& data)
02981     {
02982         *this >> data.TypeId;
02983         *this >> data.Header;
02984         *this >> data.Parameters;
02985     }
02986 
02987 
02988     template<>
02989     void DataDeserializer::Deserialize<DeleteMonitoredItemsResponse>(DeleteMonitoredItemsResponse& data)
02990     {
02991         *this >> data.TypeId;
02992         *this >> data.Header;
02993         DeserializeContainer(*this, data.Results);
02994         DeserializeContainer(*this, data.DiagnosticInfos);
02995     }
02996 
02997 
02998     template<>
02999     void DataDeserializer::Deserialize<CreateSubscriptionParameters>(CreateSubscriptionParameters& data)
03000     {
03001         *this >> data.RequestedPublishingInterval;
03002         *this >> data.RequestedLifetimeCount;
03003         *this >> data.RequestedMaxKeepAliveCount;
03004         *this >> data.MaxNotificationsPerPublish;
03005         *this >> data.PublishingEnabled;
03006         *this >> data.Priority;
03007     }
03008 
03009 
03010     template<>
03011     void DataDeserializer::Deserialize<CreateSubscriptionRequest>(CreateSubscriptionRequest& data)
03012     {
03013         *this >> data.TypeId;
03014         *this >> data.Header;
03015         *this >> data.Parameters;
03016     }
03017 
03018 
03019     template<>
03020     void DataDeserializer::Deserialize<SubscriptionData>(SubscriptionData& data)
03021     {
03022         *this >> data.SubscriptionId;
03023         *this >> data.RevisedPublishingInterval;
03024         *this >> data.RevisedLifetimeCount;
03025         *this >> data.RevisedMaxKeepAliveCount;
03026     }
03027 
03028 
03029     template<>
03030     void DataDeserializer::Deserialize<CreateSubscriptionResponse>(CreateSubscriptionResponse& data)
03031     {
03032         *this >> data.TypeId;
03033         *this >> data.Header;
03034         *this >> data.Data;
03035     }
03036 
03037 
03038 /*  DISABLED
03039 
03040     template<>
03041     void DataDeserializer::Deserialize<ModifySubscriptionParameters>(ModifySubscriptionParameters& data)
03042     {
03043         *this >> data.SubscriptionId;
03044         *this >> data.RequestedPublishingInterval;
03045         *this >> data.RequestedLifetimeCount;
03046         *this >> data.RequestedMaxKeepAliveCount;
03047         *this >> data.MaxNotificationsPerPublish;
03048         *this >> data.Priority;
03049     }
03050 
03051 */
03052 
03053 /*  DISABLED
03054 
03055     template<>
03056     void DataDeserializer::Deserialize<ModifySubscriptionRequest>(ModifySubscriptionRequest& data)
03057     {
03058         *this >> data.TypeId;
03059         *this >> data.Header;
03060         *this >> data.Parameters;
03061     }
03062 
03063 */
03064 
03065 /*  DISABLED
03066 
03067     template<>
03068     void DataDeserializer::Deserialize<ModifySubscriptionResult>(ModifySubscriptionResult& data)
03069     {
03070         *this >> data.RevisedPublishingInterval;
03071         *this >> data.RevisedLifetimeCount;
03072         *this >> data.RevisedMaxKeepAliveCount;
03073     }
03074 
03075 */
03076 
03077 /*  DISABLED
03078 
03079     template<>
03080     void DataDeserializer::Deserialize<ModifySubscriptionResponse>(ModifySubscriptionResponse& data)
03081     {
03082         *this >> data.TypeId;
03083         *this >> data.Header;
03084         *this >> data.Parameters;
03085     }
03086 
03087 */
03088 
03089     template<>
03090     void DataDeserializer::Deserialize<PublishingModeParameters>(PublishingModeParameters& data)
03091     {
03092         *this >> data.PublishingEnabled;
03093         DeserializeContainer(*this, data.SubscriptionIds);
03094     }
03095 
03096 
03097     template<>
03098     void DataDeserializer::Deserialize<SetPublishingModeRequest>(SetPublishingModeRequest& data)
03099     {
03100         *this >> data.TypeId;
03101         *this >> data.Header;
03102         *this >> data.Parameters;
03103     }
03104 
03105 
03106     template<>
03107     void DataDeserializer::Deserialize<PublishingModeResult>(PublishingModeResult& data)
03108     {
03109         DeserializeContainer(*this, data.Results);
03110         DeserializeContainer(*this, data.DiagnosticInfos);
03111     }
03112 
03113 
03114     template<>
03115     void DataDeserializer::Deserialize<SetPublishingModeResponse>(SetPublishingModeResponse& data)
03116     {
03117         *this >> data.TypeId;
03118         *this >> data.Header;
03119         *this >> data.Result;
03120     }
03121 
03122 
03123     template<>
03124     void DataDeserializer::Deserialize<NotificationMessage>(NotificationMessage& data)
03125     {
03126         *this >> data.SequenceNumber;
03127         *this >> data.PublishTime;
03128         DeserializeContainer(*this, data.NotificationData);
03129     }
03130 
03131 
03132 /*  DISABLED
03133 
03134     template<>
03135     void DataDeserializer::Deserialize<NotificationData>(NotificationData& data)
03136     {
03137         *this >> data.TypeId;
03138         *this >> data.Encoding;
03139         if ((data.Encoding) & (1>>(0))) *this >> data.Body;
03140     }
03141 
03142 */
03143 
03144 /*  DISABLED
03145 
03146     template<>
03147     void DataDeserializer::Deserialize<MonitoredItemNotification>(MonitoredItemNotification& data)
03148     {
03149         *this >> data.ClientHandle;
03150         *this >> data.Value;
03151     }
03152 
03153 */
03154 
03155 /*  DISABLED
03156 
03157     template<>
03158     void DataDeserializer::Deserialize<DataChangeNotification>(DataChangeNotification& data)
03159     {
03160         *this >> data.TypeId;
03161         *this >> data.Encoding;
03162         *this >> data.BodyLength;
03163         DeserializeContainer(*this, data.MonitoredItems);
03164         DeserializeContainer(*this, data.DiagnosticInfos);
03165     }
03166 
03167 */
03168 
03169 /*  DISABLED
03170 
03171     template<>
03172     void DataDeserializer::Deserialize<EventFieldList>(EventFieldList& data)
03173     {
03174         *this >> data.ClientHandle;
03175         DeserializeContainer(*this, data.EventFields);
03176     }
03177 
03178 */
03179 
03180 /*  DISABLED
03181 
03182     template<>
03183     void DataDeserializer::Deserialize<EventNotificationList>(EventNotificationList& data)
03184     {
03185         *this >> data.TypeId;
03186         *this >> data.Encoding;
03187         *this >> data.BodyLength;
03188         DeserializeContainer(*this, data.Events);
03189     }
03190 
03191 */
03192 
03193 /*  DISABLED
03194 
03195     template<>
03196     void DataDeserializer::Deserialize<HistoryEventFieldList>(HistoryEventFieldList& data)
03197     {
03198         DeserializeContainer(*this, data.EventFields);
03199     }
03200 
03201 */
03202 
03203 /*  DISABLED
03204 
03205     template<>
03206     void DataDeserializer::Deserialize<HistoryEvent>(HistoryEvent& data)
03207     {
03208         DeserializeContainer(*this, data.Events);
03209     }
03210 
03211 */
03212 
03213 /*  DISABLED
03214 
03215     template<>
03216     void DataDeserializer::Deserialize<UpdateEventDetails>(UpdateEventDetails& data)
03217     {
03218         *this >> data.NodeId;
03219         *this >> data.PerformInsertReplace;
03220         *this >> data.Filter;
03221         DeserializeContainer(*this, data.EventData);
03222     }
03223 
03224 */
03225 
03226 /*  DISABLED
03227 
03228     template<>
03229     void DataDeserializer::Deserialize<StatusChangeNotification>(StatusChangeNotification& data)
03230     {
03231         *this >> data.TypeId;
03232         *this >> data.Encoding;
03233         *this >> data.BodyLength;
03234         *this >> data.Status;
03235         *this >> data.DiagnosticInfo;
03236     }
03237 
03238 */
03239 
03240     template<>
03241     void DataDeserializer::Deserialize<SubscriptionAcknowledgement>(SubscriptionAcknowledgement& data)
03242     {
03243         *this >> data.SubscriptionId;
03244         *this >> data.SequenceNumber;
03245     }
03246 
03247 
03248     template<>
03249     void DataDeserializer::Deserialize<PublishRequest>(PublishRequest& data)
03250     {
03251         *this >> data.TypeId;
03252         *this >> data.Header;
03253         DeserializeContainer(*this, data.SubscriptionAcknowledgements);
03254     }
03255 
03256 
03257     template<>
03258     void DataDeserializer::Deserialize<PublishResult>(PublishResult& data)
03259     {
03260         *this >> data.SubscriptionId;
03261         DeserializeContainer(*this, data.AvailableSequenceNumbers);
03262         *this >> data.MoreNotifications;
03263         *this >> data.NotificationMessage;
03264         DeserializeContainer(*this, data.Results);
03265         DeserializeContainer(*this, data.DiagnosticInfos);
03266     }
03267 
03268 
03269     template<>
03270     void DataDeserializer::Deserialize<PublishResponse>(PublishResponse& data)
03271     {
03272         *this >> data.TypeId;
03273         *this >> data.Header;
03274         *this >> data.Parameters;
03275     }
03276 
03277 
03278     template<>
03279     void DataDeserializer::Deserialize<RepublishParameters>(RepublishParameters& data)
03280     {
03281         *this >> data.SubscriptionId;
03282         *this >> data.RetransmitSequenceNumber;
03283     }
03284 
03285 
03286     template<>
03287     void DataDeserializer::Deserialize<RepublishRequest>(RepublishRequest& data)
03288     {
03289         *this >> data.TypeId;
03290         *this >> data.Header;
03291         *this >> data.Parameters;
03292     }
03293 
03294 
03295     template<>
03296     void DataDeserializer::Deserialize<RepublishResponse>(RepublishResponse& data)
03297     {
03298         *this >> data.TypeId;
03299         *this >> data.Header;
03300         *this >> data.NotificationMessage;
03301     }
03302 
03303 
03304 /*  DISABLED
03305 
03306     template<>
03307     void DataDeserializer::Deserialize<TransferResult>(TransferResult& data)
03308     {
03309         *this >> data.Status;
03310         DeserializeContainer(*this, data.AvailableSequenceNumbers);
03311     }
03312 
03313 */
03314 
03315 /*  DISABLED
03316 
03317     template<>
03318     void DataDeserializer::Deserialize<TransferSubscriptionsParameters>(TransferSubscriptionsParameters& data)
03319     {
03320         DeserializeContainer(*this, data.SubscriptionIds);
03321         *this >> data.SendInitialValues;
03322     }
03323 
03324 */
03325 
03326 /*  DISABLED
03327 
03328     template<>
03329     void DataDeserializer::Deserialize<TransferSubscriptionsRequest>(TransferSubscriptionsRequest& data)
03330     {
03331         *this >> data.TypeId;
03332         *this >> data.Header;
03333         *this >> data.Parameters;
03334     }
03335 
03336 */
03337 
03338 /*  DISABLED
03339 
03340     template<>
03341     void DataDeserializer::Deserialize<TransferSubscriptionsResult>(TransferSubscriptionsResult& data)
03342     {
03343         DeserializeContainer(*this, data.Results);
03344         DeserializeContainer(*this, data.DiagnosticInfos);
03345     }
03346 
03347 */
03348 
03349 /*  DISABLED
03350 
03351     template<>
03352     void DataDeserializer::Deserialize<TransferSubscriptionsResponse>(TransferSubscriptionsResponse& data)
03353     {
03354         *this >> data.TypeId;
03355         *this >> data.Header;
03356         *this >> data.Parameters;
03357     }
03358 
03359 */
03360 
03361     template<>
03362     void DataDeserializer::Deserialize<DeleteSubscriptionsRequest>(DeleteSubscriptionsRequest& data)
03363     {
03364         *this >> data.TypeId;
03365         *this >> data.Header;
03366         DeserializeContainer(*this, data.SubscriptionIds);
03367     }
03368 
03369 
03370     template<>
03371     void DataDeserializer::Deserialize<DeleteSubscriptionsResponse>(DeleteSubscriptionsResponse& data)
03372     {
03373         *this >> data.TypeId;
03374         *this >> data.Header;
03375         DeserializeContainer(*this, data.Results);
03376         DeserializeContainer(*this, data.DiagnosticInfos);
03377     }
03378 
03379 
03380 /*  DISABLED
03381 
03382     template<>
03383     void DataDeserializer::Deserialize<ScalarTestType>(ScalarTestType& data)
03384     {
03385         *this >> data.Boolean;
03386         *this >> data.SByte;
03387         *this >> data.Byte;
03388         *this >> data.Int16;
03389         *this >> data.UInt16;
03390         *this >> data.Int32;
03391         *this >> data.UInt32;
03392         *this >> data.Int64;
03393         *this >> data.UInt64;
03394         *this >> data.Float;
03395         *this >> data.Double;
03396         *this >> data.String;
03397         *this >> data.DateTime;
03398         *this >> data.Guid;
03399         *this >> data.ByteString;
03400         *this >> data.XmlElement;
03401         *this >> data.NodeId;
03402         *this >> data.ExpandedNodeId;
03403         *this >> data.Status;
03404         *this >> data.DiagnosticInfo;
03405         *this >> data.QualifiedName;
03406         *this >> data.LocalizedText;
03407         *this >> data.ExtensionObject;
03408         *this >> data.DataValue;
03409         *this >> data.EnumeratedValue;
03410     }
03411 
03412 */
03413 
03414 /*  DISABLED
03415 
03416     template<>
03417     void DataDeserializer::Deserialize<ArrayTestType>(ArrayTestType& data)
03418     {
03419         DeserializeContainer(*this, data.Booleans);
03420         DeserializeContainer(*this, data.SBytes);
03421         DeserializeContainer(*this, data.Int16s);
03422         DeserializeContainer(*this, data.UInt16s);
03423         DeserializeContainer(*this, data.Int32s);
03424         DeserializeContainer(*this, data.UInt32s);
03425         DeserializeContainer(*this, data.Int64s);
03426         DeserializeContainer(*this, data.UInt64s);
03427         DeserializeContainer(*this, data.Floats);
03428         DeserializeContainer(*this, data.Doubles);
03429         DeserializeContainer(*this, data.Strings);
03430         DeserializeContainer(*this, data.DateTimes);
03431         DeserializeContainer(*this, data.Guids);
03432         DeserializeContainer(*this, data.ByteStrings);
03433         DeserializeContainer(*this, data.XmlElements);
03434         DeserializeContainer(*this, data.NodeIds);
03435         DeserializeContainer(*this, data.ExpandedNodeIds);
03436         DeserializeContainer(*this, data.StatusCodes);
03437         DeserializeContainer(*this, data.DiagnosticInfos);
03438         DeserializeContainer(*this, data.QualifiedNames);
03439         DeserializeContainer(*this, data.LocalizedTexts);
03440         DeserializeContainer(*this, data.ExtensionObjects);
03441         DeserializeContainer(*this, data.DataValues);
03442         DeserializeContainer(*this, data.Variants);
03443         DeserializeContainer(*this, data.EnumeratedValues);
03444     }
03445 
03446 */
03447 
03448 /*  DISABLED
03449 
03450     template<>
03451     void DataDeserializer::Deserialize<CompositeTestType>(CompositeTestType& data)
03452     {
03453         *this >> data.Field1;
03454         *this >> data.Field2;
03455     }
03456 
03457 */
03458 
03459 /*  DISABLED
03460 
03461     template<>
03462     void DataDeserializer::Deserialize<TestStackParameters>(TestStackParameters& data)
03463     {
03464         *this >> data.TestId;
03465         *this >> data.Iteration;
03466         *this >> data.Input;
03467     }
03468 
03469 */
03470 
03471 /*  DISABLED
03472 
03473     template<>
03474     void DataDeserializer::Deserialize<TestStackRequest>(TestStackRequest& data)
03475     {
03476         *this >> data.TypeId;
03477         *this >> data.Header;
03478         *this >> data.Parameters;
03479     }
03480 
03481 */
03482 
03483 /*  DISABLED
03484 
03485     template<>
03486     void DataDeserializer::Deserialize<TestStackResult>(TestStackResult& data)
03487     {
03488         *this >> data.Output;
03489     }
03490 
03491 */
03492 
03493 /*  DISABLED
03494 
03495     template<>
03496     void DataDeserializer::Deserialize<TestStackResponse>(TestStackResponse& data)
03497     {
03498         *this >> data.TypeId;
03499         *this >> data.Header;
03500         *this >> data.Parameters;
03501     }
03502 
03503 */
03504 
03505 /*  DISABLED
03506 
03507     template<>
03508     void DataDeserializer::Deserialize<TestStackExParameters>(TestStackExParameters& data)
03509     {
03510         *this >> data.TestId;
03511         *this >> data.Iteration;
03512         *this >> data.Input;
03513     }
03514 
03515 */
03516 
03517 /*  DISABLED
03518 
03519     template<>
03520     void DataDeserializer::Deserialize<TestStackExRequest>(TestStackExRequest& data)
03521     {
03522         *this >> data.TypeId;
03523         *this >> data.Header;
03524         *this >> data.Parameters;
03525     }
03526 
03527 */
03528 
03529 /*  DISABLED
03530 
03531     template<>
03532     void DataDeserializer::Deserialize<TestStackExResult>(TestStackExResult& data)
03533     {
03534         *this >> data.Output;
03535     }
03536 
03537 */
03538 
03539 /*  DISABLED
03540 
03541     template<>
03542     void DataDeserializer::Deserialize<TestStackExResponse>(TestStackExResponse& data)
03543     {
03544         *this >> data.TypeId;
03545         *this >> data.Header;
03546         *this >> data.Parameters;
03547     }
03548 
03549 */
03550 
03551 /*  DISABLED
03552 
03553     template<>
03554     void DataDeserializer::Deserialize<BuildInfo>(BuildInfo& data)
03555     {
03556         *this >> data.ProductUri;
03557         *this >> data.ManufacturerName;
03558         *this >> data.ProductName;
03559         *this >> data.SoftwareVersion;
03560         *this >> data.BuildNumber;
03561         *this >> data.BuildDate;
03562     }
03563 
03564 */
03565 
03566 /*  DISABLED
03567 
03568     template<>
03569     void DataDeserializer::Deserialize<RedundantServerDataType>(RedundantServerDataType& data)
03570     {
03571         *this >> data.ServerId;
03572         *this >> data.ServiceLevel;
03573         *this >> data.ServerState;
03574     }
03575 
03576 */
03577 
03578 /*  DISABLED
03579 
03580     template<>
03581     void DataDeserializer::Deserialize<EndpointUrlListDataType>(EndpointUrlListDataType& data)
03582     {
03583         DeserializeContainer(*this, data.EndpointUrlList);
03584     }
03585 
03586 */
03587 
03588 /*  DISABLED
03589 
03590     template<>
03591     void DataDeserializer::Deserialize<NetworkGroupDataType>(NetworkGroupDataType& data)
03592     {
03593         *this >> data.ServerUri;
03594         DeserializeContainer(*this, data.NetworkPaths);
03595     }
03596 
03597 */
03598 
03599 /*  DISABLED
03600 
03601     template<>
03602     void DataDeserializer::Deserialize<SamplingIntervalDiagnosticsDataType>(SamplingIntervalDiagnosticsDataType& data)
03603     {
03604         *this >> data.SamplingInterval;
03605         *this >> data.MonitoredItemCount;
03606         *this >> data.MaxMonitoredItemCount;
03607         *this >> data.DisabledMonitoredItemCount;
03608     }
03609 
03610 */
03611 
03612 /*  DISABLED
03613 
03614     template<>
03615     void DataDeserializer::Deserialize<ServerDiagnosticsSummaryDataType>(ServerDiagnosticsSummaryDataType& data)
03616     {
03617         *this >> data.ServerViewCount;
03618         *this >> data.CurrentSessionCount;
03619         *this >> data.CumulatedSessionCount;
03620         *this >> data.SecurityRejectedSessionCount;
03621         *this >> data.RejectedSessionCount;
03622         *this >> data.SessionTimeoutCount;
03623         *this >> data.SessionAbortCount;
03624         *this >> data.CurrentSubscriptionCount;
03625         *this >> data.CumulatedSubscriptionCount;
03626         *this >> data.PublishingIntervalCount;
03627         *this >> data.SecurityRejectedRequestsCount;
03628         *this >> data.RejectedRequestsCount;
03629     }
03630 
03631 */
03632 
03633 /*  DISABLED
03634 
03635     template<>
03636     void DataDeserializer::Deserialize<ServerStatusDataType>(ServerStatusDataType& data)
03637     {
03638         *this >> data.StartTime;
03639         *this >> data.CurrentTime;
03640         *this >> data.State;
03641         *this >> data.BuildInfo;
03642         *this >> data.SecondsTillShutdown;
03643         *this >> data.ShutdownReason;
03644     }
03645 
03646 */
03647 
03648 /*  DISABLED
03649 
03650     template<>
03651     void DataDeserializer::Deserialize<SessionSecurityDiagnosticsDataType>(SessionSecurityDiagnosticsDataType& data)
03652     {
03653         *this >> data.SessionId;
03654         *this >> data.ClientUserIdOfSession;
03655         DeserializeContainer(*this, data.ClientUserIdHistory);
03656         *this >> data.AuthenticationMechanism;
03657         *this >> data.Encoding;
03658         *this >> data.TransportProtocol;
03659         *this >> data.SecurityMode;
03660         *this >> data.SecurityPolicyUri;
03661         *this >> data.ClientCertificate;
03662     }
03663 
03664 */
03665 
03666 /*  DISABLED
03667 
03668     template<>
03669     void DataDeserializer::Deserialize<ServiceCounterDataType>(ServiceCounterDataType& data)
03670     {
03671         *this >> data.TotalCount;
03672         *this >> data.ErrorCount;
03673     }
03674 
03675 */
03676 
03677 /*  DISABLED
03678 
03679     template<>
03680     void DataDeserializer::Deserialize<SessionDiagnosticsDataType>(SessionDiagnosticsDataType& data)
03681     {
03682         *this >> data.SessionId;
03683         *this >> data.SessionName;
03684         *this >> data.ClientDescription;
03685         *this >> data.ServerUri;
03686         *this >> data.EndpointUrl;
03687         DeserializeContainer(*this, data.LocaleIds);
03688         *this >> data.ActualSessionTimeout;
03689         *this >> data.MaxResponseMessageSize;
03690         *this >> data.ClientConnectionTime;
03691         *this >> data.ClientLastContactTime;
03692         *this >> data.CurrentSubscriptionsCount;
03693         *this >> data.CurrentMonitoredItemsCount;
03694         *this >> data.CurrentPublishRequestsInQueue;
03695         *this >> data.TotalRequestCount;
03696         *this >> data.UnauthorizedRequestCount;
03697         *this >> data.ReadCount;
03698         *this >> data.HistoryReadCount;
03699         *this >> data.WriteCount;
03700         *this >> data.HistoryUpdateCount;
03701         *this >> data.CallCount;
03702         *this >> data.CreateMonitoredItemsCount;
03703         *this >> data.ModifyMonitoredItemsCount;
03704         *this >> data.SetMonitoringModeCount;
03705         *this >> data.SetTriggeringCount;
03706         *this >> data.DeleteMonitoredItemsCount;
03707         *this >> data.CreateSubscriptionCount;
03708         *this >> data.ModifySubscriptionCount;
03709         *this >> data.SetPublishingModeCount;
03710         *this >> data.PublishCount;
03711         *this >> data.RepublishCount;
03712         *this >> data.TransferSubscriptionsCount;
03713         *this >> data.DeleteSubscriptionsCount;
03714         *this >> data.AddNodesCount;
03715         *this >> data.AddReferencesCount;
03716         *this >> data.DeleteNodesCount;
03717         *this >> data.DeleteReferencesCount;
03718         *this >> data.BrowseCount;
03719         *this >> data.BrowseNextCount;
03720         *this >> data.TranslateBrowsePathsToNodeIdsCount;
03721         *this >> data.QueryFirstCount;
03722         *this >> data.QueryNextCount;
03723         *this >> data.RegisterNodesCount;
03724         *this >> data.UnregisterNodesCount;
03725     }
03726 
03727 */
03728 
03729 /*  DISABLED
03730 
03731     template<>
03732     void DataDeserializer::Deserialize<StatusResult>(StatusResult& data)
03733     {
03734         *this >> data.Status;
03735         *this >> data.DiagnosticInfo;
03736     }
03737 
03738 */
03739 
03740 /*  DISABLED
03741 
03742     template<>
03743     void DataDeserializer::Deserialize<SubscriptionDiagnosticsDataType>(SubscriptionDiagnosticsDataType& data)
03744     {
03745         *this >> data.SessionId;
03746         *this >> data.SubscriptionId;
03747         *this >> data.Priority;
03748         *this >> data.PublishingInterval;
03749         *this >> data.MaxKeepAliveCount;
03750         *this >> data.MaxLifetimeCount;
03751         *this >> data.MaxNotificationsPerPublish;
03752         *this >> data.PublishingEnabled;
03753         *this >> data.ModifyCount;
03754         *this >> data.EnableCount;
03755         *this >> data.DisableCount;
03756         *this >> data.RepublishRequestCount;
03757         *this >> data.RepublishMessageRequestCount;
03758         *this >> data.RepublishMessageCount;
03759         *this >> data.TransferRequestCount;
03760         *this >> data.TransferredToAltClientCount;
03761         *this >> data.TransferredToSameClientCount;
03762         *this >> data.PublishRequestCount;
03763         *this >> data.DataChangeNotificationsCount;
03764         *this >> data.EventNotificationsCount;
03765         *this >> data.NotificationsCount;
03766         *this >> data.LatePublishRequestCount;
03767         *this >> data.CurrentKeepAliveCount;
03768         *this >> data.CurrentLifetimeCount;
03769         *this >> data.UnacknowledgedMessageCount;
03770         *this >> data.DiscardedMessageCount;
03771         *this >> data.MonitoredItemCount;
03772         *this >> data.DisabledMonitoredItemCount;
03773         *this >> data.MonitoringQueueOverflowCount;
03774         *this >> data.NextSequenceNumber;
03775         *this >> data.EventQueueOverFlowCount;
03776     }
03777 
03778 */
03779 
03780 /*  DISABLED
03781 
03782     template<>
03783     void DataDeserializer::Deserialize<ModelChangeStructureDataType>(ModelChangeStructureDataType& data)
03784     {
03785         *this >> data.Affected;
03786         *this >> data.AffectedType;
03787         *this >> data.Verb;
03788     }
03789 
03790 */
03791 
03792 /*  DISABLED
03793 
03794     template<>
03795     void DataDeserializer::Deserialize<SemanticChangeStructureDataType>(SemanticChangeStructureDataType& data)
03796     {
03797         *this >> data.Affected;
03798         *this >> data.AffectedType;
03799     }
03800 
03801 */
03802 
03803 /*  DISABLED
03804 
03805     template<>
03806     void DataDeserializer::Deserialize<Range>(Range& data)
03807     {
03808         *this >> data.Low;
03809         *this >> data.High;
03810     }
03811 
03812 */
03813 
03814 /*  DISABLED
03815 
03816     template<>
03817     void DataDeserializer::Deserialize<EUInformation>(EUInformation& data)
03818     {
03819         *this >> data.NamespaceUri;
03820         *this >> data.UnitId;
03821         *this >> data.DisplayName;
03822         *this >> data.Description;
03823     }
03824 
03825 */
03826 
03827 /*  DISABLED
03828 
03829     template<>
03830     void DataDeserializer::Deserialize<ComplexNumberType>(ComplexNumberType& data)
03831     {
03832         *this >> data.Real;
03833         *this >> data.Imaginary;
03834     }
03835 
03836 */
03837 
03838 /*  DISABLED
03839 
03840     template<>
03841     void DataDeserializer::Deserialize<DoubleComplexNumberType>(DoubleComplexNumberType& data)
03842     {
03843         *this >> data.Real;
03844         *this >> data.Imaginary;
03845     }
03846 
03847 */
03848 
03849 /*  DISABLED
03850 
03851     template<>
03852     void DataDeserializer::Deserialize<AxisInformation>(AxisInformation& data)
03853     {
03854         *this >> data.EngineeringUnits;
03855         *this >> data.EURange;
03856         *this >> data.Title;
03857         *this >> data.AxisScaleType;
03858         DeserializeContainer(*this, data.AxisSteps);
03859     }
03860 
03861 */
03862 
03863 /*  DISABLED
03864 
03865     template<>
03866     void DataDeserializer::Deserialize<XVType>(XVType& data)
03867     {
03868         *this >> data.X;
03869         *this >> data.Value;
03870     }
03871 
03872 */
03873 
03874 /*  DISABLED
03875 
03876     template<>
03877     void DataDeserializer::Deserialize<ProgramDiagnosticDataType>(ProgramDiagnosticDataType& data)
03878     {
03879         *this >> data.CreateSessionId;
03880         *this >> data.CreateClientName;
03881         *this >> data.InvocationCreationTime;
03882         *this >> data.LastTransitionTime;
03883         *this >> data.LastMethodCall;
03884         *this >> data.LastMethodSessionId;
03885         DeserializeContainer(*this, data.LastMethodInputArguments);
03886         DeserializeContainer(*this, data.LastMethodOutputArguments);
03887         *this >> data.LastMethodCallTime;
03888         *this >> data.LastMethodReturnStatus;
03889     }
03890 
03891 */
03892 
03893     template<>
03894     void DataDeserializer::Deserialize<Annotation>(Annotation& data)
03895     {
03896         *this >> data.Message;
03897         *this >> data.UserName;
03898         *this >> data.AnnotationTime;
03899     }
03900 
03901 
03902    }
03903 
03904 } // namespace
03905     


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