|
PLCnext API Documentation 23.3.0.32
|
Namespace for classes and interfaces for the Remote Service Call implementation More...
Classes | |
| class | IRscAuthorizator |
| class | IRscReadEnumerator |
| Interface for reading an array or an enumerator. For regular enumerators UndefinedArrayLength is used. More... | |
| class | IRscSerializable |
| Marshalls structure or class data types. Serialize and Deserialize have to marshal fields in the same format and the same order. More... | |
| class | IRscService |
| Base interface for all Rsc service interface. More... | |
| class | IRscWriteEnumerator |
| Interface for writing an array or an enumerator. For regular enumerators UndefinedArrayLength is used. More... | |
| struct | RscArrayInformation |
| Contains information to marshall an array More... | |
| class | RscArrayReader |
| Helper class to read an array of primtive types from an RscVariant. This class uses the array information stored in RscVariant. More... | |
| class | RscArrayWriter |
| Helper class to read an array of primtive types from an RscVariant. This class uses the array information stored in RscVariant. More... | |
| class | RscComponentServiceImplBase |
| Base class for Rsc component service implementations. Contains reference to associated component. More... | |
| class | RscGuid |
| class | RscImplReadEnumerator |
| Implements IRscReadEnumeratorfor the service implementations. This should only be used in the implementation. The read callbacks have to be implemented and set by the service. More... | |
| class | RscImplWriteEnumerator |
| Implements IRscWriteEnumerator for the service implementations. This should only be used in the implementation. The write callbacks have to be implemented and set by the service. More... | |
| class | RscReadEnumerator |
| Implementation of IRscReadEnumerator used on client side. More... | |
| class | RscReader |
| Reads data from Rsc More... | |
| class | RscStream |
| Enables Rsc services to marshal large data packets as stream. More... | |
| class | RscStreamAdapter |
This class serves as adapter between Rsc streams and streams from Arp::System::Commons::Io, e.g. file streams. More... | |
| class | RscString |
| Contains a static string with string lentgh up to N characters. The string has to be null terminated. More... | |
| struct | RscStructInformation |
| Contains information to marshall an struct More... | |
| class | RscStructReader |
| Helper class to read a struct from an RscVariant. This class uses the struct information stored in RscVariant. More... | |
| class | RscStructWriter |
| Helper class to write a struct from an RscVariant. This class uses the struct information stored in RscVariant. More... | |
| class | RscVariant |
| Rsc container class for primitive data type, strings or information about arrays or structs. ArrayInformation and StructInformation are used in combination with RscArrayReader, RscArrayWriter, RscStructReader and RscStructWriter More... | |
| class | RscVersion |
Specifies a version with 4 version numbers and is marshalled to .NET type System.Version. More... | |
| class | RscWriteEnumerator |
| Implementation of IRscWriteEnumerator used on client side. More... | |
| class | RscWriter |
| Writes data to Rsc. More... | |
| class | SecureString |
| Specialized version of RscString for security context. Not implemented in this version. Wraps only RscString More... | |
| struct | StructInfo< T, true > |
Typedefs | |
| typedef uint16 | RscHandle |
| using | SecurityToken = Arp::System::Security::SecurityToken |
Enumerations | |
| enum class | RscChannelKind { None = 0 , Tcp = 1 , Ipc = 2 } |
| enum class | RscErrors : uint32 { None = 0 , CommunicationLayerMask = 0x80000000 , RemotingLayerMask = 0x40000000 , CommonServiceLayerMask = 0x20000000 , ServiceLayerMask = 0x00000000 , ServerAuthenticationFailure = 0x80000001 , FatalAuthorizationFailure = 0x80000002 , InvalidProtocolVersion = 0x40000001 , UnknownServiceHandle = 0x40000002 , UnknownMethodHandle = 0x40000003 , InvalidCommand = 0x40000004 , HeaderXsumError = 0x40000005 , UnknownProviderHandle = 0x40000006 , ProtocolViolation = 0x40000007 , InternalRemotingError = 0x40000008 , ArrayLengthOutOfRange = 0x40000009 , MaxConnectionsExceeds = 0x4000000A , AuthorizationFailure = 0x4000000B , AbortRequest = 0x40001000 , RecvTimeout = 0x40001001 , RecvFailed = 0x40001002 , SendTimeout = 0x40001003 , SendFailed = 0x40001004 , UnknownObjectFormat = 0x40001005 , ConnRemotelyClosed = 0x40001006 , OutOfMemory = 0x20000001 , InvalidHandle = 0x20000002 , ParameterOutOfRange = 0x20000003 , InvalidServiceState = 0x20000004 , OtherMasterActive = 0x20000005 , NoProgramOnTheDevice = 0x20000006 , ExecutionError = 0x20000007 , ReadOnly = 0x20000008 , InvalidEclrState = 0x20000009 , InternalError = 0x2000000A , AuthenticationFailure = 0x2000000B , Exception = 0x2000000C , IpcError = 0x2000000D , NotSupportedInterface = 0x2000000E , InvalidData = 0x2000000F , PrematurelyEndOfStream = 0x20000010 , ServiceProviderNameTooLong = 0x521 , ServiceNameTooLong = 0x522 , ArgumentsNotSupported = 0x523 } |
| enum class | RscStringEncoding { None = 0 , Ansi = 1 , Utf8 = 2 , Utf16 = 3 } |
| Determines the encoding of a Rsc String. Values are identical to CommonRemoting::StringEncoding. More... | |
| enum class | RscType : uint8 { None = 0xFF , End = 0 , Null = 0 , Void = 1 , Bool = 2 , Char = 3 , Int8 = 4 , Uint8 = 5 , Int16 = 6 , Uint16 = 7 , Int32 = 8 , Uint32 = 9 , Int64 = 10 , Uint64 = 11 , Real32 = 12 , Real64 = 13 , Struct = 18 , String = 19 , Utf8String = 19 , Array = 20 , DateTime = 23 , Version = 24 , Guid = 25 , AnsiString = 26 , Object = 28 , Utf16String = 30 , Stream = 34 , Enumerator = 35 , SecureString = 36 , Enum = 37 , Dictionary = 38 , SecurityToken = 39 , Exception = 40 , IecTime = 41 , IecTime64 = 42 , IecDate = 43 , IecDate64 = 44 , IecDateTime = 45 , IecDateTime64 = 46 , IecTimeOfDay = 47 , IecTimeOfDay64 = 48 } |
| Data types supported by RSC. More... | |
Functions | |
| ARP_CXX_SYMBOL_EXPORT std::ostream & | operator<< (std::ostream &os, RscChannelKind value) |
| ARP_CXX_SYMBOL_EXPORT std::istream & | operator>> (std::istream &is, RscChannelKind &value) |
| template<int N> | |
| std::ostream & | operator<< (std::ostream &os, const RscString< N > &rhs) |
| ARP_CXX_SYMBOL_EXPORT std::ostream & | operator<< (std::ostream &os, RscStringEncoding value) |
| ARP_CXX_SYMBOL_EXPORT std::istream & | operator>> (std::istream &is, RscStringEncoding &value) |
| template<class T > | |
| constexpr RscType | GetRscType (void) |
| template<> | |
| constexpr RscType | GetRscType< boolean > () |
| template<> | |
| constexpr RscType | GetRscType< char8 > () |
| template<> | |
| constexpr RscType | GetRscType< uint8 > () |
| template<> | |
| constexpr RscType | GetRscType< int8 > () |
| template<> | |
| constexpr RscType | GetRscType< uint16 > () |
| template<> | |
| constexpr RscType | GetRscType< int16 > () |
| template<> | |
| constexpr RscType | GetRscType< uint32 > () |
| template<> | |
| constexpr RscType | GetRscType< int32 > () |
| template<> | |
| constexpr RscType | GetRscType< uint64 > () |
| template<> | |
| constexpr RscType | GetRscType< int64 > () |
| template<> | |
| constexpr RscType | GetRscType< float32 > () |
| template<> | |
| constexpr RscType | GetRscType< float64 > () |
| template<> | |
| constexpr RscType | GetRscType< char * > () |
| template<> | |
| constexpr RscType | GetRscType< String > () |
| template<> | |
| constexpr RscType | GetRscType< DateTime > () |
| template<> | |
| constexpr RscType | GetRscType< RscVersion > () |
| template<> | |
| constexpr RscType | GetRscType< RscGuid > () |
| template<> | |
| constexpr RscType | GetRscType< SecurityToken > () |
| template<class T > | |
| constexpr RscType | GetRscTypeFrom (const T &) |
| template<int N> | |
| constexpr RscType | GetRscTypeFrom (const char(&)[N]) |
| template<int N> | |
| constexpr RscType | GetRscTypeFrom (const RscString< N > &) |
| template<int N> | |
| constexpr RscType | GetRscTypeFrom (const SecureString< N > &) |
| template<> | |
| constexpr RscType | GetRscTypeFrom (const String &) |
| template<> | |
| constexpr RscType | GetRscTypeFrom (const DateTime &) |
| template<> | |
| constexpr RscType | GetRscTypeFrom (const RscVersion &) |
| template<> | |
| constexpr RscType | GetRscTypeFrom (const RscGuid &) |
| template<> | |
| constexpr RscType | GetRscTypeFrom (const SecurityToken &) |
| constexpr bool | IsPrimitiveRscType (RscType type) |
| ARP_CXX_SYMBOL_EXPORT std::ostream & | operator<< (std::ostream &os, const RscType value) |
| ARP_CXX_SYMBOL_EXPORT std::istream & | operator>> (std::istream &is, RscType &value) |
| template<int N> | |
| constexpr RscType | GetRscTypeFrom (const RscVariant< N > &) |
Namespace for classes and interfaces for the Remote Service Call implementation
|
strong |
|
strong |
Data types supported by RSC.
Values are identical with CommonRemoting::RemotingMarshalType. Only supported types of RemotingMarshalType are included.
| Enumerator | |
|---|---|
| None | No data type set |
| End | End of stream (EOS) |
| Null |
|
| Void |
|
| Bool | |
| Char | Not supported! |
| Int8 | |
| Uint8 | |
| Int16 | |
| Uint16 | |
| Int32 | |
| Uint32 | |
| Int64 | |
| Uint64 | |
| Real32 | |
| Real64 | |
| Struct |
|
| String | String with undefined format. Deprecated with remoting version 4 used by Rsc. In Rsc context with at least remoting version 4 RscType String is mapped to Utf8String |
| Utf8String | Utf-8 string, |
| Array |
|
| DateTime | |
| Version | |
| Guid | Universal unique ID Arp::System::Rsc::Services::RscGuid |
| AnsiString | Ansi string, not supported in Rsc context |
| Object | Object type as Arp::System::Rsc::Services::RscVariant |
| Utf16String | Utf-16 string, not implemented in Rsc context |
| Stream | Streamed type to marshal large data blobs Arp::System::Rsc::Services::RscStream/> |
| Enumerator | Enumerator type implemented as IRscReadEnumerator or IRscWriteEnumerator |
| SecureString | String for security context, handled by Rsc with Arp::System::Rsc::Services::SecureString |
| Enum | Any enum type. |
| Dictionary | Dictionary type. Not supported. |
| SecurityToken | Security token needed for security services as Arp::System::Security::SecurityToken |
| Exception | Exception, for internal use only. summary>IEC type: TIME [int32] |
| IecTime | summary>IEC type: LTIME [int64] |
| IecTime64 | summary>IEC type: DATE [N/A] remarks>Not supported by PCWE. |
| IecDate | summary>IEC type: LDATE [int64] |
| IecDate64 | summary>IEC type: DATE_AND_TIME, DT [N/A] remarks>Not supported by PCWE. |
| IecDateTime | summary>IEC type: LDATE_AND_TIME, LDT [int64] |
| IecDateTime64 | summary>IEC type: TIME_OF_DAY, TOD [N/A] remarks>Not supported by PCWE. |
| IecTimeOfDay | summary>IEC type: LTIME_OF_DAY, LTOD [int64] |