Namespace AXSharp.Connector
Classes
AddedPropertiesAttribute
CompilerOmitsAttribute
Prevents ixc builder to create a member for specific group of output type (Shadow, Plain, Onliner).
note
This attribute must be declared in the PLC code to be effective during build process.
// This will not compile to 'omitsInPlainString' member into respective 'Plain' type.
{#ix-attr:[CompilerOmits(CompilerOmissionGroups.BuilderPlainer))]}
ommitsInPlainString : STRING(50) := 'THIS IS OMMITED IN PLAINER';
// This will not compile to 'ommitsInPlainAndShadowerInterfaceString' member into respective 'Plain' type and Shadow interface.
{#ix-attr:[CompilerOmits(CompilerOmissionGroups.BuilderPlainer, CompilerOmissionGroups.BuilderShadowerInterface))]}
ommitsInPlainAndShadowerInterfaceString : STRING(50) := 'THIS IS OMMITED IN PLAINER';
ConcurrentSet<T>
Concurent implementation HasSet comes from:
https://stackoverflow.com/questions/18922985/concurrent-hashsett-in-net-framework
https://stackoverflow.com/questions/4306936/how-to-implement-concurrenthashset-in-net
Connector
Abstract base class provides implementation contract for the PLC connector and basic common underlying logic.
ConnectorAdapter
Provides basic abstractions for twin connectors.
ConnectorAdapterBuilder
Provides access to extension method for creating connector adapters.
ConnectorFactory
Provides abstraction for creation of Connector and value types (tags) for twin connector.
DummyConnector
Provides a connector without real target system connections.
DummyConnectorExtensions
Provides extensions for DummyConnector and DummyConnectorFactory.
DummyConnectorFactory
Dummy connector factory class. Serves as offline connector with no connection to a controller.
EnumeratorDiscriminatorAttribute
Attribute provides information about the member being treated as enum.
IPlainExtensions
Provides a series of extension methods to work with POCO objects.
ITwinController
Represents twin object for PLC controller.
IgnoreOnPocoOperation
This attribute will prevent R/W operation on on given member or type, when performing operation with POCO objects.
IgnoreReflectionAttribute
Indicates that the member should not be reflected within the ix framework.
PrimitiveAccessStatus
Provides information about access to a primitive item.
ReadOnceAttribute
Indicates that the member should be access only once throughout the life time of the application during periodic reading. This attribute would be typically used for members that do not change value during the life time of the application.
ReadOnlyAttribute
Attribute allows to prevent writing to the members of twin connector.
ReadOnlyAttribute can be declared for member of a FB, GVL or STRUCT.
note
This attribute is typically defined in the declaration section of PLC block and then trans-piled by ixc builder.
warning
Use of ReadOnlyAttribute does not prevent the PLC program to write to the variable that declares this attribute.
FUNCTION_BLOCK fbSomeReadOnlyMembers
VAR
{#ix-attr:[ReadOnly()]]}
_nonWrittableItem : BOOL; // Member is readonly for .net application.
{#ix-attr:[ReadOnly()]]}
_nonWrittableFunctionBlock : fbNonWrittable; // Member and its members are readonly for the .net application.
END_VAR
RootTwinObject
Object to represent the root TwinObject. Instance of this class is typically used as root for the connector object.
StringInterpolator
Provides extension methods for PLC's string interpolation.
TwinObjectExtensions
Extensions methods for ITwinObject.
TwinPrimitiveExtensions
Provides series of extension method for accessing primitive items.
WebApiConnectorExtensions
Provides extension methods for instantiating WebAPI connector.
Interfaces
IPlain
Basic abstraction for 'Plain' types.
note
Implementation used in building process. Not to be declared by framework consumers.
ITwinElement
Basic contract for any type that is product of building process.
ITwinObject
Basic contract for any complex object that is product of build process.
ITwinOnlineObject
Basic abstraction for 'IOnline' types.
note
Implementation used in building process. Not to be declared by framework consumers.
ITwinPrimitive
Provides basic contract for plc tag.
ITwinPrimitiveInfo
Provides interface for information about value types symbols.
ITwinShadowObject
Basic abstraction for 'IShadow' types.
note
Implementation used in building process. Not to be declared by framework consumers.
Enums
CommExceptionBehaviour
Specifies how the connector should behave when a communication exception occurs.
CompilerOmissionGroups
Builder omission groups enumerator. Enumerates builder output groups suitable for the omission.
ReadSubscriptionMode
Specifies how the variables should be subscribed to.