Skip to content
This repository has been archived by the owner on Jun 22, 2019. It is now read-only.

T_CAEX_ClassModel_InterfaceFamilyType

AutomationML edited this page Feb 23, 2017 · 2 revisions

InterfaceFamilyType Class

Class InterfaceFamilyType.

Class InterfaceFamilyType.

Inheritance Hierarchy

System.Object
  TypeBase
    CAEX_ClassModel.CAEXBasicObject
      CAEX_ClassModel.CAEXObject
        CAEX_ClassModel.InterfaceClassType
          CAEX_ClassModel.InterfaceFamilyType
Namespace: CAEX_ClassModel
Assembly: AMLEngine (in AMLEngine.dll) Version: 3.5

Syntax

C#

public class InterfaceFamilyType : InterfaceClassType, 
	IInstantiable

C++

public ref class InterfaceFamilyType : public InterfaceClassType, 
	IInstantiable

The InterfaceFamilyType type exposes the following members.

Constructors

 

Name Description
Public method InterfaceFamilyType Initializes a new instance of the InterfaceFamilyType class.
  Back to Top

Properties

 

Name Description
Public property BaseClass Gets or sets the base class for this instance. if another base class is set, the value is overwritten. (Inherited from InterfaceClassType.)
Public property ClassName Gets the name of the CAEXObject. (Inherited from InterfaceClassType.)
Public property Copyright Get the CopyrightType of this header object. (Inherited from CAEXBasicObject.)
Public property Description Get the description of this object. The returned object is null when no description element is found! (Inherited from CAEXBasicObject.)
Public property FrameAttribute Gets the Frame attribute (Inherited from InterfaceClassType.)
Public property GetRefBaseClassPath Gets the reference base class path. (Inherited from InterfaceClassType.)
Public property IDValue Gets the identifier value. (Inherited from InterfaceClassType.)
Public property IsAttachmentInterface Gets a value indicating whether this instance is an attachment interface. (Inherited from InterfaceClassType.)
Public property IsCOLLADAInterface Gets a value indicating whether this instance is a collada interface. (Inherited from InterfaceClassType.)
Public property IsPLCOpenLogicInterface Gets a value indicating whether this instance is PLC open logic interface. (Inherited from InterfaceClassType.)
Public property IsPLCOpenVariableInterface Gets a value indicating whether this instance is PLC open variable interface. (Inherited from InterfaceClassType.)
Public property ReferencedClassName Gets the name of the referenced base class. (Inherited from InterfaceClassType.)
Public property ReferencedClassPath Gets the full path of the referenced base class. (Inherited from InterfaceClassType.)
Public property RefTypeAttribute Gets the reference type attribute. (Inherited from InterfaceClassType.)
Public property RefURIAttribute Gets the ExternalReference Attribute defined for this object. (Inherited from InterfaceClassType.)
Public property SetRefBaseClassPath Sets the reference base class path. (Inherited from InterfaceClassType.)
Public propertyStatic member StaticInfo Gets the static information.
Public property Version Get the VersionType of this header object. (Inherited from CAEXBasicObject.)
  Back to Top

Methods

 

Name Description
Public method CAEXPath Get the path to this in the object tree. For all objects, it returns the XML full Node Path except for Interface instances, then it returns GUID:InterfaceName. (Inherited from CAEXBasicObject.)
Public method Children(Type) Gets all Children of this instance which are of the specified childrenType. This returns only the direct Children. (Inherited from CAEXBasicObject.)
Public method Children(Type, Func(XmlNode, CAEXBasicObject)) Gets all Children of this instance which are of the specified childrenType. This returns only the direct Children. (Inherited from CAEXBasicObject.)
Public method Children(T)() Gets all Children of this instance which are of Type T. This returns only the direct Children. (Inherited from CAEXBasicObject.)
Public method Children(T)(Func(XmlNode, T)) Gets all Children of this instance which are of Type T. This returns only the direct Children. (Inherited from CAEXBasicObject.)
Public method clone Create a clone of this object via reflection. The underlying XMLNode is normally cloned and a new instance of this class is created via Activator.CreateInstance with the cloned xml node. If an object of type InternalElement should be cloned, the method create_unique copy is called instead of using reflection to automatically get new GUIDs assigned. (Inherited from CAEXBasicObject.)
Public method CloneNode(Boolean) Clones the node. (Inherited from CAEXBasicObject.)
Public method CloneNode(Boolean, Boolean) Clones the node. (Inherited from CAEXBasicObject.)
Public method ConsistencyCheck_ClassReference Check if the given classPath is a valid path to an existent class in the AML file. (Inherited from CAEXBasicObject.)
Public method CreateClassInstance Creates an instance of this class and returns the instance as an new InterfaceClassType.
Public method CreateInterfaceFamilyClass Create an InterfaceClass from this interface (e.g. ExternalInterface). An InterfaceClass is of type InterfaceFamilyType and may contain InterfaceFamilyTypes as child elements. (Inherited from InterfaceClassType.)
Public method Descendants(Type) Gets all Descendants of this instance which are of the specified descendantType. This returns all subordinate Children and their Descendants. (Inherited from CAEXBasicObject.)
Public method Descendants(Type, Func(XmlNode, CAEXBasicObject)) Gets all Descendants of this instance which are of the specified descendantType. This returns all subordinate Children and their Descendants. (Inherited from CAEXBasicObject.)
Public method Descendants(T)() Gets all Descendants of this instance which are of Type T. This returns all subordinate Children and their Descendants. (Inherited from CAEXBasicObject.)
Public methodCode example Descendants(T)(Func(XmlNode, T)) Gets all Descendants of this instance which are of Type T. This returns all subordinate Children and their Descendants. (Inherited from CAEXBasicObject.)
Public method Equals Determines, if the specified Object and the current Object are equal. (Inherited from CAEXBasicObject.)
Public method findInternalElement Resolve a reference to an InternalElement and return the referenced element if found. Use FindFastByID for speed optimizations. (Inherited from CAEXBasicObject.)
Public method FirstAncestor(T) Gets the first ancestor of the specified type for this CaexObject (Inherited from CAEXBasicObject.)
Public method GetAttribute Gets the attribute with the specified name. (Inherited from InterfaceClassType.)
Public method getAttributeField Getting this Attributes collection (Inherited from InterfaceClassType.)
Public method getClassForPath Resolving a reference to a base class if this interface class has a reference to a base class
Public method GetDerivedAttributes Gets the derived attributes. (Overrides InterfaceClassType.GetDerivedAttributes(Boolean).)
Public method getFullNodePath Getting the full path from document root to the specified XmlNode. As name of an XmlNode is the value of the contained attribute "name" taken. Hierarchies are separated via the path separator (slash '/'). The name of the document root element CAEXFile is not contained in the path. (Inherited from CAEXBasicObject.)
Public method GetHashCode Returns a hash code for this instance. (Inherited from CAEXBasicObject.)
Public method getLastAttributeNode **Obsolete. ** Gets the last attribute node. (Inherited from CAEXBasicObject.)
Public method getLastHeaderNode This methods returns the last XmlNode of this CAEX basic object according to the element order given by the CAEX schema. In this context "last" describes the element that is at the end of this header elements. (Inherited from CAEXBasicObject.)
Public method GetParent This method returns the parent CAEXBasicObject of the current CAEXBasicObject. (Inherited from CAEXBasicObject.)
Public method getReferencedClass Gets the referenced class. (Overrides CAEXBasicObject.getReferencedClass(String).)
Public method getReferencedGUID Parsing a string of form GUID:Interface and returning the GUID (Inherited from CAEXBasicObject.)
Public method getReferencedInterfaceClass Getting a referenced InterfaceClass. Use FindFastByPath for speed optimizations. (Inherited from CAEXBasicObject.)
Public method getReferencedInterfaceName Getting the name of the referenced Interface. Use FindFastByPath for speed optimizations. (Inherited from CAEXBasicObject.)
Public method getReferencedRoleClass Getting a referenced RoleClass. Use FindFastByPath for speed optimizations. (Inherited from CAEXBasicObject.)
Public method getReferencedSystemUnitClass Getting a referenced SystemUnitClass. Use FindFastByPath for speed optimizations. (Inherited from CAEXBasicObject.)
Public method GetReferenceHierarchy(T) Getting the reference hierarchy. hierarchy is build up as a queue. the most specialized class is first one in queue (Inherited from CAEXBasicObject.)
Public method Insert_Attribute Inserting an attribute element to this class
Public method Insert_Element Inserting an element generically to this object.
Public method Insert_InterfaceClass Appends the interface class at the End of all existing Child Interfaces
Public method Insert_TypeBaseElement Generic method to insert an element of type TypeBase in this object. This method could be declared as abstract, but then all inherited classes have to implement this method but not all inherited classes use this method. (Inherited from CAEXBasicObject.)
Public method InterfaceClassChildren Gets all direct child InterfaceFamilyType Objects in this InterfaceClass.
Public method InterfaceClassDescendants Gets all descendant InterfaceFamilyType Objects in this InterfaceClass. InterfaceClasses on all levels below this InterfaceClass are returned.
Public method MergeContent Merging the content of this interface class with the given interface class by copying all attributes. (Inherited from InterfaceClassType.)
Public method New_AdditionalInformation Adding a new AdditionalInformation node to this basic object. It is allowed to insert more than one AdditionalInformation node (Inherited from CAEXBasicObject.)
Public method New_Attribute New_s the attribute.
Public method New_Copyright Adding an new Copyright node to this object. If a Copyright node is already existent when calling this method an exception is thrown. (Inherited from CAEXBasicObject.)
Public method New_Description Creating a new description element. An exception is thrown when a description element is already present. (Inherited from CAEXBasicObject.)
Public method New_InterfaceClass Adding a new Interface class to this object.
Public method New_Revision Creating a new revision element. According to CAEX schema each revision element must contain at least the two sub elements "RevisionDate" and "AuthorName". They are created with this revision object. The sibling order according to the CAEX Schema is preserved in that way, that revision nodes are always inserted nodes of type VersionType (Inherited from CAEXBasicObject.)
Public method New_Version Creating a new version element. An exception is thrown when a version element is already present. The sibling order according to the CAEX Schema is preserved in that way, that version nodes are always inserted after nodes of type DescriptionType (Inherited from CAEXBasicObject.)
Public method RemoveHeader Removing all header elements from this basic object (Inherited from CAEXBasicObject.)
Public method SetDescription This method sets a description. If no description exists, it is created. (Inherited from CAEXObject.)
Public method ToString Returning the name attribute of this element as string representation of the object (Inherited from CAEXObject.)
  Back to Top

Fields

 

Name Description
Public field AdditionalInformation The additional information (Inherited from CAEXBasicObject.)
Public field Attribute The attribute (Inherited from InterfaceClassType.)
Public field ChangeMode The change mode (Inherited from CAEXBasicObject.)
Public field ID The identifier (Inherited from CAEXObject.)
Public field InterfaceClass The interface class
Public field Name The name (Inherited from CAEXObject.)
Public field RefBaseClassPath The reference base class path (Inherited from InterfaceClassType.)
Public field Revision The revision (Inherited from CAEXBasicObject.)
  Back to Top

Extension Methods

 

Name Description
Public Extension Method AttributesEquals Compare all Attributes of two Objects with Attributes (Defined by CaexObjectComparer.)
Public Extension Method CaexEquals Compare the CAEXPath of two CaexBasicObjects. (Defined by CaexObjectComparer.)
Public Extension Method Clone_Save(T) Clones a CAEX Object. (Defined by BasicExtensions.)
Public Extension Method CopyAttributesFrom copies all attribute and nested attributes of a given InterfaceClass to the calling InterfaceClass to another object (Defined by ExternalizationExtensions.)
Public Extension Method CopyToClipboard Copies the XML node's outer xml text to the clipboard. The Data format string is set to "CAEX". (Defined by AutomationMLClipboard.)
Public Extension Method FindByID(String) Overloaded.
Searches an object starting from the given CAEXBasicObject that has the given ID, the expected type must be casted in the source code. This search bases on XPath and is slow. (Defined by NavigationExtensions.)
Public Extension Method FindByID(T)(String) Overloaded.
Searches an object starting from the given CAEXBasicObject that has the given ID, the expected type must be given in angle brackets. (Defined by NavigationExtensions.)
Public Extension Method FindByXPath(String) Overloaded.
Searches a CAEXBasicObject from the given xPath, you must cast the returned CAEXBasicObject into the type you expect. The search bases on XPath and is slow. For speed optimization, use FindFastByPath instead. If your CAEX file has changed, update the hash tables before using this function using updateCAEXObjectHashLists before. (Defined by NavigationExtensions.)
Public Extension Method FindByXPath(T)(String) Overloaded.
Searches a CAEXBasicObject from the given xPath, the type must be given in angle brackets. The search bases on XPath and is slow. For speed optimization, use FindFastByPath instead. If your CAEX file has changed, update the hash tables before using this function using updateCAEXObjectHashLists before. (Defined by NavigationExtensions.)
Public Extension Method FindFastByPath Performs a document wide fast search and returns a CAEXObject given by its ID. It is fast due to hash table support. If your CAEX file has changed, update the hash tables before using this function using updateCAEXObjectHashLists before. (Defined by NavigationExtensions.)
Public Extension Method ForEachInterfaceClass perform an action on each child-interfaceClass in the interfaceClass (Defined by ActionExtensions.)
Public Extension Method GetAllLibraryClasses Get all library classes withing a given Library object or CAEX-Class Object (Defined by NavigationExtensions.)
Public Extension Method GetAllParentInternalElements Gets all parents in correct order from root parent element to obj excluding the element itself. (Defined by NavigationExtensions.)
Public Extension Method GetAncestors(T) Gets all Ancestors in the Hierarchy of the specified Caex-Object, which are of Type T (Defined by NavigationExtensions.)
Public Extension Method GetChangeMode Returns the change mode out of the given CAEXBasicObject. (Defined by BasicExtensions.)
Public Extension Method GetClassLibrary(T) Enables every CAEXBasicObject, to get its class Library. You must specify the type of the ClassLibrary-Type that you expect. (Defined by NavigationExtensions.)
Public Extension Method GetClassName Returns the class name of the given external interface. (Defined by BasicExtensions.)
Public Extension Method GetFullClassName Returns the full class name of the given external interface. (Defined by BasicExtensions.)
Public Extension Method GetInternalElementsAndExternalInterfaces Get all internal elements and interfaces of the given CAEXObject as flat list (Defined by NavigationExtensions.)
Public Extension Method GetLibraryOfCaexObject Gets the library of any caex object. (Defined by NavigationExtensions.)
Public Extension Method GetMetaObjectInformation() Overloaded.
this methods returns the meta information out of an existing AutomationML file for an AutomationML Object (Defined by BasicExtensions.)
Public Extension Method GetMetaObjectInformation(String) Overloaded.
this methods returns the meta information out of an existing AutomationML file for an AutomationML Object and a specific Writer-ID (Defined by BasicExtensions.)
Public Extension Method GetParent() Overloaded.
Enables every CAEXBasicObject to get its parent object as a CAEX_ClassModel class. You must cast the result in your own code. (Defined by BasicExtensions.)
Public Extension Method GetParent(T)() Overloaded.
Enables every CAEXBasicObject to get its parent object as a CAEX_ClassModel class. You must specify the type of the CAEX_ClassModel type that you exspect. (Defined by NavigationExtensions.)
Public Extension Method GetParentNodeName Returns the AML node name of the parent (Defined by NavigationExtensions.)
Public Extension Method GetRefBaseClassPath Get the RefBaseClassPath of the given external interface. (Defined by BasicExtensions.)
Public Extension Method InterfaceEquals Comparing Interfaces (Attributes and CAEXPath) (Defined by CaexObjectComparer.)
Public Extension Method IsAutomationMLBaseInterface Determines whether the specified interface class is derived from the AutomationMLBase interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsCOLLADAInterface Determines whether the specified interface class is derived from the COLLADAInterface interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsCommunicationInterface Determines whether the specified interface class is derived from the Communication interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsDerivedFormInterfaceClass Determines whether the specified interface class has an inheritance relation from the interface class, uniquely identifyable by the given interface class path. The interface class path may contain an alias. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsExternalDataConnector Determines whether the specified interface class is derived from the ExternalDataConnector interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsInterlockingConnector Determines whether the specified interface class is derived from the InterlockingConnector interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsOrderInterface Determines whether the specified interface class is derived from the Order interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsPLCopenXMLInterface Determines whether the specified interface class is derived from the PLCopenXMLInterface interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsPortConnector Determines whether the specified interface class is derived from the PortConnector interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsPPRConnector Determines whether the specified interface class is derived from the PPRConnector interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method IsSignalInterface Determines whether the specified interface class is derived from the SignalInterface interface class. The method can resolve alias references anywhere in the inheritance hierarchy. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeAutomationMLBaseInterface Makes the AutomationML base interface. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeCOLLADAInterface Makes the collada interface. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeCommunicationInterface Makes the communication interface. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeExternalDataConnector Makes the external data connector. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeInterlockingConnector Makes the interlocking connector. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeOrderInterface Makes the order interface. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakePLCopenXMLInterface Makes the PLCopen XML interface. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakePortConnector Makes the port connector. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakePPRConnector Makes the PPR connector. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method MakeSignalInterface Makes the signal interface. (Defined by AutomationMLInterfaceClassLib.)
Public Extension Method Name Get the Name of the specified object. (Defined by BasicExtensions.)
Public Extension Method New_Revision Creates a new Revision object including dataTime and AuthorName (Defined by SpecificExtensions.)
Public Extension Method OwnerDocument returns a CAEXDocument of an XML node (Defined by NavigationExtensions.)
Public Extension Method Remove Deletes the object from the AML document. (Defined by BasicExtensions.)
Public Extension Method RemoveSplitPoint Remove a split point defined for this object. (Defined by ExternalizationExtensions.)
Public Extension Method RemoveSubElements(T) Removes all InternalElement and ExternalInterface Elements from a SystemUnit Class. (Defined by BasicExtensions.)
Public Extension Method Replace(T) Replaces a CaexObject by another CaexObject (Defined by BasicExtensions.)
Public Extension Method SetChangeMode Sets or removes the change mode of the given CAEXBasicObject. (Defined by BasicExtensions.)
Public Extension Method SetMetaObjectInformation(MetaObjectInformation) Overloaded.
this method is a short version of the setMetaInformation for any caex object (Defined by BasicExtensions.)
Public Extension Method SetMetaObjectInformation(String, String, String) Overloaded.
this function sets the meta information to store tool specific object-IDs (Defined by BasicExtensions.)
Public Extension Method SetSplitPointIfPossible Record a split point for this object. Returns true if succeeded. Only allowed for objects of type InstanceHierarchy, InternalElement, SystemUnitClassLib, InterfaceClassLib, RoleClassLib. Will be split off and written to file only by SaveSplitModelParts(). (Defined by ExternalizationExtensions.)
  Back to Top

See Also

Reference

CAEX_ClassModel Namespace

  • Introduction
  • [Version History](Version history)
    • [Version 3.5](Version 3.4)
    • [Version 3.1](Version 3.0)
    • [Version 2.1](Version 2.1)
    • [Version 2.0](Version 2.0)
  • [Getting Started](Getting started)
  • Examples
  • AMLEngine API
BEST Practice Content

Extensions

CAEX Elements

AutomationML

Utilities

Interfaceclasses

Exceptions

Objecttables and Document validation

Clone this wiki locally