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