GraphLinksModel
La implementación genérica de un modelo de diagrama compuesto por nodos y subgrafos, con cualquier número de datos de enlace explícitos que representen vínculos entre dos nodos.
Hereda de: DiagramModel
Implementa: ILinksModel, IDiagramModel, ISubGraphLinksModel, ISubGraphModel, IGroupsModel
Constructores
public GraphLinksModel()
graphLinksModel = GraphLinksModel()
El constructor predeterminado produce un modelo vacío.
Propiedades
public string GroupNodePath { get; set; }
value = graphLinksModel.GroupNodePath
graphLinksModel.GroupNodePath = value
Obtiene o establece una ruta de propiedad que especifica cómo obtener la clave para "container" o datos de nodos de grupo de un objeto de datos de nodos.
public string LinkCategoryPath { get; set; }
value = graphLinksModel.LinkCategoryPath
graphLinksModel.LinkCategoryPath = value
Consigue o establece una ruta de propiedad que especifica cómo encontrar la categoría de datos de enlace.
public string LinkFromParameterPath { get; set; }
value = graphLinksModel.LinkFromParameterPath
graphLinksModel.LinkFromParameterPath = value
Obtiene o establece una ruta de propiedad que especifica cómo obtener información opcional del parámetro "port" para los datos "de" nodos de un objeto de datos de enlace.
public string LinkFromPath { get; set; }
value = graphLinksModel.LinkFromPath
graphLinksModel.LinkFromPath = value
Consigue o establece una ruta de propiedad que especifica cómo obtener la clave para los datos de "desde" de un objeto de datos de enlace.
public string LinkLabelNodePath { get; set; }
value = graphLinksModel.LinkLabelNodePath
graphLinksModel.LinkLabelNodePath = value
Obtiene o establece una ruta de propiedad que especifica cómo obtener la clave para los datos de nodos "belde" de un objeto de datos de enlace.
public IEnumerable LinksSource { get; set; }
value = graphLinksModel.LinksSource
graphLinksModel.LinksSource = value
Obtiene o establece la colección de elementos de datos de enlace para el modelo.
public string LinkToParameterPath { get; set; }
value = graphLinksModel.LinkToParameterPath
graphLinksModel.LinkToParameterPath = value
Obtiene o establece una ruta de propiedad que especifica cómo obtener información opcional del parámetro "port" para los datos de "a" nodos de un objeto de datos de enlace.
public string LinkToPath { get; set; }
value = graphLinksModel.LinkToPath
graphLinksModel.LinkToPath = value
Consigue o establece una ruta de propiedad que especifica cómo obtener la clave para los datos de "a" nodos de un objeto de datos de enlace.
public string MemberNodesPath { get; set; }
value = graphLinksModel.MemberNodesPath
graphLinksModel.MemberNodesPath = value
Obtiene o establece un camino de propiedad que especifica cómo obtener una lista de claves para los nodos "miembro" de un objeto de datos de nodos de grupo.
public string NodeCategoryPath { get; set; }
value = graphLinksModel.NodeCategoryPath
graphLinksModel.NodeCategoryPath = value
Consigue o establece una ruta de propiedad que especifica cómo encontrar la categoría de datos de nodos.
public string NodeIsGroupPath { get; set; }
value = graphLinksModel.NodeIsGroupPath
graphLinksModel.NodeIsGroupPath = value
Obtiene o establece un camino de propiedad que especifica cómo averiguar si un dato de nodo es también un grupo de "contenedores".
public string NodeIsLinkLabelPath { get; set; }
value = graphLinksModel.NodeIsLinkLabelPath
graphLinksModel.NodeIsLinkLabelPath = value
Obtiene o establece una ruta de propiedad que especifica cómo averiguar si los datos de nodo son también una "etiqueta" para los datos de enlace.
public bool NodeKeyIsNodeData { get; set; }
value = graphLinksModel.NodeKeyIsNodeData
graphLinksModel.NodeKeyIsNodeData = value
Obtiene o establece si todos los datos de nodos son también sus propias claves.
public string NodeKeyPath { get; set; }
value = graphLinksModel.NodeKeyPath
graphLinksModel.NodeKeyPath = value
Consigue o establece un camino de propiedad que especifica cómo obtener la clave para los datos de nodos.
public bool NodeKeyReferenceAutoInserts { get; set; }
value = graphLinksModel.NodeKeyReferenceAutoInserts
graphLinksModel.NodeKeyReferenceAutoInserts = value
Obtiene o establece si una referencia, cuando NodeKeyIsNodeData es verdadera, inserta automáticamente el nodo en NodesSource@.
public IEnumerable NodesSource { get; set; }
value = graphLinksModel.NodesSource
graphLinksModel.NodesSource = value
Obtiene o establece la colección de elementos de datos de nodos para el modelo.
public ValidCycle ValidCycle { get; set; }
value = graphLinksModel.ValidCycle
graphLinksModel.ValidCycle = value
Especifique qué tipo de gráficos permite este modelo.
public ValidUnconnectedLinks ValidUnconnectedLinks { get; set; }
value = graphLinksModel.ValidUnconnectedLinks
graphLinksModel.ValidUnconnectedLinks = value
Obtiene o establece si cada enlace debe tener ambos extremos se refieren a datos de nodos.
Métodos
AddCollectionCopy(GraphLinksModel{, GraphLinksModel{) : CopyDictionary<T, T, T, T>
Copia los datos existentes de nodo y enlace y agregue a este modelo.
- coll
- la recopilación de datos que se copiarán
- env
- el ICopyDictionary solía hacer un seguimiento de objetos copiados; si nulo, el método llamará CreateCopyDictionary, utilizarlo, y devolverlo
Devuelve: el diccionario de copia actualizado, mapeando datos originales para copiar datos
public LinkType AddLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.AddLink(fromdata, fromparam, todata, toparam)
Añada un enlace a LinksSource.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
public void AddLink(LinkType linkdata)
graphLinksModel.AddLink(linkdata)
Añada un enlace a LinksSource.
- linkdata
public LinkType AddLinkCopy(LinkType linkdata)
result = graphLinksModel.AddLinkCopy(linkdata)
Agregue una copia de los datos de enlace a este modelo.
- linkdata
Devuelve: los datos de enlace copiados
public void AddMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.AddMemberNodeKey(nodedata, memberkey)
Agregue el valor clave de los datos de nodos de un "miembro" a la lista de "miembros" de los datos de un nodo.
- nodedata
- los datos de nodos que se modificarán
- memberkey
- el valor clave de los nuevos datos de nodos "miembros"
public void AddNode(NodeType nodedata)
graphLinksModel.AddNode(nodedata)
Añada datos de nodos a NodesSource.
- nodedata
public NodeType AddNodeCopy(NodeType nodedata)
result = graphLinksModel.AddNodeCopy(nodedata)
Agregue una copia de los datos de nodo a este modelo.
- nodedata
Devuelve: los datos de los nodos copiados
AugmentCopyCollection(GraphLinksModel{)
Superar este método para añadir más (relacionados) datos a copiar.
- coll
- la recopilación de datos que se copiarán
AugmentCopyDictionary(GraphLinksModel{)
Supera este método para evitar copiar algunos datos, o para cambiar cómo se resuelven las referencias copiadas.
- env
- el diccionario cartografía de objetos originales para copiar objetos
protected override void ChangeDataValue(ModelChangedEventArgs e, bool undo)
graphLinksModel.ChangeDataValue(e, undo)
Esto se llama durante el deshacer o rehacer para efectuar cambios estatales a los datos modelo.
- e
- una edición que describe el cambio a realizar
- undo
- verdadero si deshacerse; falso si redobla
protected override void ChangeModelValue(ModelChangedEventArgs e, bool undo)
graphLinksModel.ChangeModelValue(e, undo)
Esto se llama durante el deshacer o rehacer para efectuar cambios estatales en este modelo.
- e
- una edición que describe el cambio a realizar
- undo
- verdadero si deshacerse; falso si redobla
protected virtual bool CheckLinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam, bool ignoreexistinglink, LinkType oldlinkdata)
result = graphLinksModel.CheckLinkValid(fromdata, fromparam, todata, toparam, ignoreexistinglink, oldlinkdata)
Este predicado es cierto si añadir un enlace entre dos nodos/puertos resultaría en un gráfico estructurado válidamente.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
- ignoreexistinglink
- verdadero si reenlazamiento; falso si añade un nuevo enlace
- oldlinkdata
- los datos de enlace originales que podrían ser modificados, si es cierto
Devuelve: El comportamiento de este predicado depende del valor de ValidCycle y ValidUnconnectedLinks.
protected virtual bool CheckMemberValid(NodeType groupnodedata, NodeType membernodedata, bool ignoreexistingmembership)
result = graphLinksModel.CheckMemberValid(groupnodedata, membernodedata, ignoreexistingmembership)
Este predicado es cierto si añadir un nodo a un nodo de grupo resultaría en un gráfico inválido.
- groupnodedata
- los datos de nodo que es un grupo
- membernodedata
- a nodo de datos que se deben considerar para añadir al grupo
- ignoreexistingmembership
- si ignorar la 's grupo de miembros existentes, porque ese miembro está siendo transferido de su grupo existente
Devuelve: Esto devuelve falso para la membresía que rompería la estructura de árboles del gráfico de grupos del modelo.
public void ClearUnresolvedReferences()
graphLinksModel.ClearUnresolvedReferences()
Olvídate de todas las referencias retrasadas o de avanzada no resueltas.
CopyLink1(T, GraphLinksModel{) : T
Este es el primer paso de copiar datos de enlace, responsable de construir una copia y copiar la mayoría de sus propiedades.
- linkdata
- env
- el diccionario cartografía de objetos originales para copiar objetos
Devuelve: los datos de enlace copiados
CopyLink2(T, GraphLinksModel{, T, T, T, T)
Este es el segundo paso de copiar datos de enlace, responsable de fijar referencias a otros objetos.
- oldlinkdata
- los datos de enlace originales
- env
- el diccionario cartografía de objetos originales para copiar objetos
- newlinkdata
- los datos de enlace copiados
- newfromnodedata
- por conveniencia, el nodo copiado "de"
- newtonodedata
- por conveniencia, el nodo copiado
- newlinklabel
- por conveniencia, el nodo de la etiqueta copiada
CopyNode1(T, GraphLinksModel{) : T
Este es el primer paso de copiar datos de nodos, responsable de construir una copia y copiar la mayoría de sus propiedades.
- nodedata
- env
- el diccionario cartografía de objetos originales para copiar objetos
Devuelve: los datos de los nodos copiados
CopyNode2(T, GraphLinksModel{, T, T, IEnumerable<T>)
Este es el segundo paso de copiar datos de nodos, responsable de fijar referencias a otros objetos.
- oldnodedata
- los datos originales de los nodos
- env
- el diccionario cartografía de objetos originales para copiar objetos
- newnodedata
- los datos de los nodos copiados
- newgroup
- para comodidad, los datos de nodos copiados "parente"
- newmembers
- para comodidad, una lista de nuevos nodos miembros copiados
public virtual CopyDictionary<NodeType, NodeKey, PortKey, LinkType> CreateCopyDictionary()
result = graphLinksModel.CreateCopyDictionary()
Crear un ICopyDictionary inicializado para este modelo.
Devuelve: Normalmente este será un diccionario vacío.
public virtual DataCollection<NodeType, NodeKey, PortKey, LinkType> CreateDataCollection()
result = graphLinksModel.CreateDataCollection()
Cree un IDataCollection@ vacío para este modelo.
CreateInitializedCopy(GraphLinksModel{) : GraphLinksModel<T, T, T, T>
Haga una copia de este modelo, sin compartir las colecciones NodesSource o LinksSource.
- init
- Esta es una DataCollection que proporciona el nodo inicial y los datos de enlace. (No se copian estos datos.) Si esto es nulo, los valores iniciales NodesSource y LinksSource@ son colecciones vacías.
Devuelve: un modelo igual que éste, pero con datos diferentes
protected virtual void DeleteLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
graphLinksModel.DeleteLink(fromdata, fromparam, todata, toparam)
Este método implementa la eliminación de datos de enlace de la colección LinksSource.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
protected virtual void DeleteLink(LinkType linkdata)
graphLinksModel.DeleteLink(linkdata)
Este método implementa la eliminación de datos de enlace de la colección LinksSource.
- linkdata
protected virtual void DeleteMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DeleteMemberNodeKey(nodedata, memberkey)
Este método implementa la modificación de los datos de nodos para que su recopilación de datos de nodos de niños no incluya un dado.
- nodedata
- los datos de nodo para ser modificado; si null, este método no hace nada
- memberkey
- el valor clave de los datos de nodos "miembros"; si null, este método no hace nada
protected virtual void DeleteNode(NodeType nodedata)
graphLinksModel.DeleteNode(nodedata)
Este método implementa la eliminación de datos de nodos de la colección NodesSource.
- nodedata
public void DoGroupNodeChanged(NodeType nodedata)
graphLinksModel.DoGroupNodeChanged(nodedata)
Esto debe llamarse cuando la membresía de los datos de un nodo en un grupo puede haber cambiado.
- nodedata
- los datos modificados de los nodos
public void DoLinkAdded(LinkType linkdata)
graphLinksModel.DoLinkAdded(linkdata)
Esto debe llamarse cuando se agrega un objeto de datos de enlace a la colección LinksSource.
- linkdata
public void DoLinkCategoryChanged(LinkType linkdata)
graphLinksModel.DoLinkCategoryChanged(linkdata)
Esto debe llamarse cuando el valor de la categoría de datos de enlace puede haber cambiado.
- linkdata
public void DoLinkLabelChanged(LinkType linkdata)
graphLinksModel.DoLinkLabelChanged(linkdata)
Esto debe llamarse cuando el nodo de etiqueta de un enlace puede haber cambiado.
- linkdata
public void DoLinkPortsChanged(LinkType linkdata)
graphLinksModel.DoLinkPortsChanged(linkdata)
Esto debe llamarse cuando los datos de enlace son nodos o puertos conectados, ya sea "de" o "a", puede haber cambiado.
- linkdata
public void DoLinkRemoved(LinkType linkdata)
graphLinksModel.DoLinkRemoved(linkdata)
Esto debe llamarse cuando se elimina un objeto de datos de enlace de la colección LinksSource.
- linkdata
public void DoMemberNodeKeyAdded(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DoMemberNodeKeyAdded(nodedata, memberkey)
Esto debe llamarse cuando se ha añadido una clave de datos de nodos "miembros" a la colección de claves de nodos "miembros".
- nodedata
- los datos modificados de los nodos
- memberkey
- la clave para los datos de nodos "miembro" añadidos
public void DoMemberNodeKeyRemoved(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DoMemberNodeKeyRemoved(nodedata, memberkey)
Esto debe llamarse cuando una clave de datos de nodos "miembro" ha sido eliminada de la colección de claves de nodos "miembro".
- nodedata
- los datos modificados de los nodos
- memberkey
- la clave para los datos de nodos eliminados "miembro"
public void DoMemberNodeKeysChanged(NodeType nodedata)
graphLinksModel.DoMemberNodeKeysChanged(nodedata)
Esto debe llamarse cuando se ha reemplazado la lista de datos de nodos de "miembro".
- nodedata
public void DoNodeAdded(NodeType nodedata)
graphLinksModel.DoNodeAdded(nodedata)
Esto debe llamarse cuando se agrega un objeto de datos de nodos a la colección NodesSource.
- nodedata
public void DoNodeCategoryChanged(NodeType nodedata)
graphLinksModel.DoNodeCategoryChanged(nodedata)
Esto debe llamarse cuando el valor de la categoría de datos de nodos puede haber cambiado.
- nodedata
public void DoNodeKeyChanged(NodeType nodedata)
graphLinksModel.DoNodeKeyChanged(nodedata)
Esto debe llamarse cuando el valor clave de los datos de un nodo puede haber cambiado.
- nodedata
public void DoNodeRemoved(NodeType nodedata)
graphLinksModel.DoNodeRemoved(nodedata)
Esto debe llamarse cuando se elimina un objeto de datos de nodo de la colección NodesSource.
- nodedata
protected virtual string FindCategoryForLink(LinkType linkdata)
result = graphLinksModel.FindCategoryForLink(linkdata)
Encuentre la categoría de datos de enlace.
- linkdata
Devuelve: por defecto una cadena vacía
protected virtual string FindCategoryForNode(NodeType nodedata)
result = graphLinksModel.FindCategoryForNode(nodedata)
Encuentre la categoría de datos de nodos.
- nodedata
Devuelve: por defecto una cadena vacía
protected virtual NodeKey FindFromNodeKeyForLink(LinkType linkdata)
result = graphLinksModel.FindFromNodeKeyForLink(linkdata)
Encuentre la clave "de" nodo para un enlace dado.
- linkdata
Devuelve: a para el nodo conectado
protected virtual PortKey FindFromParameterForLink(LinkType linkdata)
result = graphLinksModel.FindFromParameterForLink(linkdata)
Encuentre información adicional sobre la conexión "desde" nodos para un enlace dado.
- linkdata
Devuelve: a
protected virtual NodeKey FindGroupKeyForNode(NodeType nodedata)
result = graphLinksModel.FindGroupKeyForNode(nodedata)
Busque la clave de nodo de grupo para un dato de nodo dado, si es que lo hay.
- nodedata
Devuelve: a para el nodo de grupo que contiene, o el valor predeterminado de ese tipo si no hay nodo de contenedor para el nodo
protected virtual bool FindIsGroupForNode(NodeType nodedata)
result = graphLinksModel.FindIsGroupForNode(nodedata)
Encuentre si los datos de un nodo son un grupo o contenedor de otros nodos.
- nodedata
protected virtual bool FindIsLinkLabelForNode(NodeType nodedata)
result = graphLinksModel.FindIsLinkLabelForNode(nodedata)
Encuentre si un nodo es un "etiqueta" para un enlace.
- nodedata
protected virtual NodeKey FindKeyForNode(NodeType nodedata)
result = graphLinksModel.FindKeyForNode(nodedata)
Encuentra la clave para los datos de nodos.
- nodedata
Devuelve: la clave única (esperadamente) para los datos de nodos dados en este modelo
protected virtual NodeKey FindLabelNodeKeyForLink(LinkType linkdata)
result = graphLinksModel.FindLabelNodeKeyForLink(linkdata)
Busque la clave de nodo "bella" para un enlace dado, si es que lo hay.
- linkdata
Devuelve: a para los datos de nodos de etiquetas
protected virtual IEnumerable FindMemberNodeKeysForNode(NodeType nodedata)
result = graphLinksModel.FindMemberNodeKeysForNode(nodedata)
Encuentre la lista de llaves de los nodos para un objeto de datos de nodos.
- nodedata
Devuelve: la lista de llaves infantiles, un IEnumerable de
public NodeType FindNodeByKey(NodeKey key)
result = graphLinksModel.FindNodeByKey(key)
Dada la clave, encuentre los datos de nodos con esa clave.
- key
- un valor nulo para este argumento dará lugar al valor predeterminado para
Devuelve: a; el valor será el predeterminado para el tipo si no se sabe que tales datos de nodos están en este modelo
protected virtual NodeKey FindToNodeKeyForLink(LinkType linkdata)
result = graphLinksModel.FindToNodeKeyForLink(linkdata)
Encuentra la clave de "a" de los nodos para un enlace dado.
- linkdata
Devuelve: a para el nodo conectado
protected virtual PortKey FindToParameterForLink(LinkType linkdata)
result = graphLinksModel.FindToParameterForLink(linkdata)
Encuentre información adicional sobre la conexión "a" de nodos para un enlace dado.
- linkdata
Devuelve: a
public string GetCategoryForLink(LinkType linkdata)
result = graphLinksModel.GetCategoryForLink(linkdata)
Este método obtiene la categoría de un enlace.
- linkdata
Devuelve: a Cuerda, por defecto a la cadena vacía
public string GetCategoryForNode(NodeType nodedata)
result = graphLinksModel.GetCategoryForNode(nodedata)
Este método obtiene la categoría de un nodo.
- nodedata
Devuelve: a Cuerda, por defecto a la cadena vacía
public IEnumerable<NodeType> GetConnectedNodesForNode(NodeType nodedata, Predicate<PortKey> portpred)
result = graphLinksModel.GetConnectedNodesForNode(nodedata, portpred)
Devuelve una secuencia de datos de nodos que están directamente conectados a un nodo dado, en cualquier dirección.
- nodedata
- portpred
- a predicado a ser aplicado a cada parámetro port; si no null, este predicado debe ser cierto para que el nodo se incluya en la secuencia de retorno
Devuelve: un IEnumerable
public IEnumerable<NodeType> GetConnectedNodesForNode(NodeType nodedata)
result = graphLinksModel.GetConnectedNodesForNode(nodedata)
Devuelve una secuencia de datos de nodos que están directamente conectados a un nodo dado, en cualquier dirección.
- nodedata
Devuelve: un IEnumerable
public IEnumerable<LinkType> GetFromLinksForNode(NodeType nodedata)
result = graphLinksModel.GetFromLinksForNode(nodedata)
Devuelve una secuencia de datos de enlace que se connectan en datos de nodos dados, sólo entrando en el nodo dado.
- nodedata
Devuelve: un IEnumerable
public NodeType GetFromNodeForLink(LinkType linkdata)
result = graphLinksModel.GetFromNodeForLink(linkdata)
Devuelve los datos de "de" nodos en los que se conectan los datos de enlace.
- linkdata
Devuelve: a los datos de los nodos
public IEnumerable<NodeType> GetFromNodesForNode(NodeType nodedata)
result = graphLinksModel.GetFromNodesForNode(nodedata)
Devuelve una secuencia de datos de nodos que están directamente conectados por enlaces entrando en un nodo dado.
- nodedata
Devuelve: un IEnumerable
public IEnumerable<NodeType> GetFromNodesForNode(NodeType nodedata, Predicate<PortKey> toportpred)
result = graphLinksModel.GetFromNodesForNode(nodedata, toportpred)
Devuelve una secuencia de datos de nodos que están directamente conectados por enlaces entrando en un nodo dado.
- nodedata
- toportpred
- a predicado a ser aplicado a cada parámetro "a" puerto; si no-null, este predicado debe ser verdadero para el "des" nodo a ser incluido en la secuencia de retorno
Devuelve: un IEnumerable
public PortKey GetFromParameterForLink(LinkType linkdata)
result = graphLinksModel.GetFromParameterForLink(linkdata)
Devuelve información adicional "port" para el "desde" final de un enlace.
- linkdata
public NodeType GetGroupForLink(LinkType linkdata)
result = graphLinksModel.GetGroupForLink(linkdata)
Devuelve los datos de nodos de contenedor para datos de enlace dados, si el enlace pertenece a un grupo.
- linkdata
Devuelve: a los datos de los nodos
public NodeType GetGroupForNode(NodeType nodedata)
result = graphLinksModel.GetGroupForNode(nodedata)
Devuelve los datos de nodos de grupo de contenedores para datos de nodos dados, si hay uno.
- nodedata
Devuelve: a los datos de los nodos
public bool GetHasLabeledLinkForNode(NodeType nodedata)
result = graphLinksModel.GetHasLabeledLinkForNode(nodedata)
Este predicado es verdadero para los datos de nodos si se asocia con datos de enlace como su "etiqueta".
- nodedata
public bool GetHasLabelNodeForLink(LinkType linkdata)
result = graphLinksModel.GetHasLabelNodeForLink(linkdata)
Este predicado es cierto si los datos de enlace dados tienen un nodo "bello".
- linkdata
public bool GetIsGroupForNode(NodeType nodedata)
result = graphLinksModel.GetIsGroupForNode(nodedata)
Este predicado es cierto si los datos de nodos determinados pueden ser un grupo (i.e@. a container) de otros nodos.
- nodedata
public bool GetIsLinkLabelForNode(NodeType nodedata)
result = graphLinksModel.GetIsLinkLabelForNode(nodedata)
Este predicado es cierto si los datos de nodo dados pueden ser utilizados como "etiqueta" para un enlace.
- nodedata
public LinkType GetLabeledLinkForNode(NodeType nodedata)
result = graphLinksModel.GetLabeledLinkForNode(nodedata)
Obtenga los datos de enlace que se refieren a datos de nodos dados como su "etiqueta".
- nodedata
Devuelve: a los datos de enlace
public NodeType GetLabelNodeForLink(LinkType linkdata)
result = graphLinksModel.GetLabelNodeForLink(linkdata)
Obtenga los datos de nodos "belde" para un enlace, si los hay.
- linkdata
Devuelve: a los datos de los nodos
public IEnumerable<LinkType> GetLinksBetweenNodes(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.GetLinksBetweenNodes(fromdata, fromparam, todata, toparam)
Devuelve una secuencia de todos los datos de enlace que van de un nodo a otro, posiblemente restringido a ciertos "puertos".
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
Devuelve: un IEnumerable
public IEnumerable<LinkType> GetLinksForNode(NodeType nodedata)
result = graphLinksModel.GetLinksForNode(nodedata)
Devuelve una secuencia de datos de enlace que se connectan en datos de nodo dado, en cualquier dirección.
- nodedata
Devuelve: un IEnumerable
public IEnumerable<LinkType> GetLinksForNode(NodeType nodedata, Predicate<LinkType> predicate)
result = graphLinksModel.GetLinksForNode(nodedata, predicate)
Devuelve una secuencia de datos de enlace que se connectan en un nodo dado, en cualquier dirección, que satisfacen un predicado dado.
- nodedata
- predicate
- un delegado que toma un argumento y devuelve un booleano
Devuelve: un IEnumerable
public IEnumerable<LinkType> GetMemberLinksForGroup(NodeType nodedata)
result = graphLinksModel.GetMemberLinksForGroup(nodedata)
Devuelve una secuencia de datos de enlace que están contenidos por datos de nodo dado.
- nodedata
Devuelve: un IEnumerable de datos de enlace miembro; una secuencia vacía si no hay enlaces de miembros
public IEnumerable<NodeType> GetMemberNodesForGroup(NodeType nodedata)
result = graphLinksModel.GetMemberNodesForGroup(nodedata)
Devuelve una secuencia de datos de nodos que son miembros inmediatos de datos de nodos dados.
- nodedata
Devuelve: un IEnumerable de los datos de los nodos miembros; una secuencia vacía si no hay miembros
public Type GetNodeType()
result = graphLinksModel.GetNodeType()
Devuélvete la .
Devuelve: a Tipo, no un objeto de datos de nodos, ni una cadena
public IEnumerable<LinkType> GetToLinksForNode(NodeType nodedata)
result = graphLinksModel.GetToLinksForNode(nodedata)
Devuelve una secuencia de datos de enlace que se connectan en datos de nodo dado, sólo saliendo del nodo dado.
- nodedata
Devuelve: un IEnumerable
public NodeType GetToNodeForLink(LinkType linkdata)
result = graphLinksModel.GetToNodeForLink(linkdata)
Devuelve los datos de "a" nodos en los que se conectan los datos de enlace.
- linkdata
Devuelve: a los datos de los nodos
public IEnumerable<NodeType> GetToNodesForNode(NodeType nodedata, Predicate<PortKey> fromportpred)
result = graphLinksModel.GetToNodesForNode(nodedata, fromportpred)
Devuelve una secuencia de datos de nodos que están directamente conectados por enlaces que salen de un nodo dado.
- nodedata
- fromportpred
- a predicado a ser aplicado a cada parámetro "de" puerto; si no-null, este predicado debe ser cierto para que el nodo "a" se incluya en la secuencia de retorno
Devuelve: un IEnumerable
public IEnumerable<NodeType> GetToNodesForNode(NodeType nodedata)
result = graphLinksModel.GetToNodesForNode(nodedata)
Devuelve una secuencia de datos de nodos que están directamente conectados por enlaces que salen de un nodo dado.
- nodedata
Devuelve: un IEnumerable
public PortKey GetToParameterForLink(LinkType linkdata)
result = graphLinksModel.GetToParameterForLink(linkdata)
Devuelve información adicional "port" para el final "a" de un enlace.
- linkdata
protected virtual void HandleLinkPropertyChanged(object sender, PropertyChangedEventArgs e)
graphLinksModel.HandleLinkPropertyChanged(sender, e)
Este es el manipulador de eventos INotifyPropertyChangedpara datos de enlace.
- sender
- e
- preferentemente a ModelChangedEventArgs que describe lo que cambió y cómo
protected virtual void HandleNodePropertyChanged(object sender, PropertyChangedEventArgs e)
graphLinksModel.HandleNodePropertyChanged(sender, e)
Este es el manipulador de eventos INotifyPropertyChangedpara datos de nodos.
- sender
- e
- preferentemente a ModelChangedEventArgs que describe lo que cambió y cómo
protected virtual LinkType InsertLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.InsertLink(fromdata, fromparam, todata, toparam)
Este método implementa la creación y adición de datos de enlace a la colección LinksSource.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
protected virtual void InsertLink(LinkType linkdata)
graphLinksModel.InsertLink(linkdata)
Este método implementa la adición de datos de enlace a la colección LinksSource.
- linkdata
protected virtual void InsertMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.InsertMemberNodeKey(nodedata, memberkey)
Este método implementa la modificación de los datos de nodos para que su recopilación de datos de nodos de miembro incluya un dado.
- nodedata
- los datos de nodo para ser modificado; si null, este método no hace nada
- memberkey
- el valor clave de los nuevos datos de nodos "miembros"; si null, este método no hace nada
protected virtual void InsertNode(NodeType nodedata)
graphLinksModel.InsertNode(nodedata)
Este método implementa la adición de datos de nodos a la colección NodesSource.
- nodedata
protected virtual bool IsEqualPortParameters(PortKey a, PortKey b)
result = graphLinksModel.IsEqualPortParameters(a, b)
Este predicado compara dos valores y vuelve a ser verdad si son "igual".
- a
- b
Devuelve: Normalmente esto utiliza el valor predeterminado EqualityComparer para el tipo. Pero es posible que necesite anular este método si ese tipo de comparación de igualdad es inapropiado para su información portuaria.
public bool IsLinkData(LinkType linkdata)
result = graphLinksModel.IsLinkData(linkdata)
Este predicado es cierto si el argumento es un enlace de datos en este modelo.
- linkdata
- el objeto a ser revisado para ver si es un enlace conocido datos en este modelo
Devuelve: verdadero si el es en el LinksSource
public bool IsLinked(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.IsLinked(fromdata, fromparam, todata, toparam)
Este predicado es cierto si hay un enlace de un nodo de datos/puerto a otro.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
public bool IsLinkType(object linkdata)
result = graphLinksModel.IsLinkType(linkdata)
Devuélvete la .
Devuelve: a Tipo, no un objeto de datos de enlace, ni una cadena
public bool IsLinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.IsLinkValid(fromdata, fromparam, todata, toparam)
Este predicado es cierto si añadir un enlace entre dos nodos/puertos resultaría en un gráfico válido.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
public bool IsMember(NodeType groupnodedata, NodeType membernodedata)
result = graphLinksModel.IsMember(groupnodedata, membernodedata)
Este predicado es cierto si el es miembro del grupo de contenedores.
- groupnodedata
- membernodedata
public bool IsMemberValid(NodeType groupnodedata, NodeType membernodedata, bool ignoreexistingmembership)
result = graphLinksModel.IsMemberValid(groupnodedata, membernodedata, ignoreexistingmembership)
Este predicado es cierto si añadir a un nodo de grupo () resultaría en un gráfico inválido.
- groupnodedata
- los datos de nodo que es un grupo
- membernodedata
- a los datos de los nodos
- ignoreexistingmembership
- si ignorar la 's grupo de miembros existentes, porque ese miembro está siendo transferido de su grupo existente
public bool IsNodeData(NodeType nodedata)
result = graphLinksModel.IsNodeData(nodedata)
Este predicado es cierto si el argumento es un dato de nodos en este modelo.
- nodedata
- el objeto a ser revisado para ver si es un nodo conocido datos en este modelo
Devuelve: verdadero si el es en el NodesSource
public bool IsNodeType(object nodedata)
result = graphLinksModel.IsNodeType(nodedata)
Este predicado es cierto cuando el argumento es una instancia de .
- nodedata
- el objeto arbitrario que se debe verificar para que la compatibilidad sea un nodo
Devuelve: verdadero si el puede ser lanzado a la ; falso de otro modo
public bool IsRelinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam, LinkType oldlinkdata)
result = graphLinksModel.IsRelinkValid(fromdata, fromparam, todata, toparam, oldlinkdata)
Este predicado es cierto si reemplazar un enlace entre dos nodos/puertos resultaría en un gráfico válido.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
- oldlinkdata
- los datos de enlace originales que podrían ser modificados
public void Load<NodeDataType, LinkDataType>(XContainer root, XName nodename, XName linkname)
graphLinksModel.Load(root, nodename, linkname)
Dado un Linq para XML XContainer con datos de nodos y enlaces, sustituya las colecciones NodesSource y LinksSource@ con colecciones de nuevos datos de nodos y nuevos datos de enlace.
- root
- el XContainer que contiene todos los datos
- nodename
- el nombre de cada XElement que contiene datos de nodos
- linkname
- el nombre de cada XElement que contiene datos de enlace
public void Load<NodeDataType, LinkDataType>(XContainer root, Func<XElement, NodeDataType> nodedataallocator, Func<XElement, LinkDataType> linkdataallocator)
graphLinksModel.Load(root, nodedataallocator, linkdataallocator)
Dado un Linq para XML XContainer con datos de nodos y enlaces, sustituya las colecciones NodesSource y LinksSource@ con colecciones de nuevos datos de nodos y nuevos datos de enlace.
- root
- el XContainer que contiene todos los datos
- nodedataallocator
- una función que toma un XElement y devuelve un objeto de tipo o nulo de nueva construcción si se debe ignorar el XElement
- linkdataallocator
- una función que toma un XElement y devuelve un objeto de tipo o nulo de nueva construcción si se debe ignorar el XElement
protected virtual bool MakeNodeKeyUnique(NodeType nodedata)
result = graphLinksModel.MakeNodeKeyUnique(nodedata)
Este método se llama cuando se ha encontrado una clave duplicada.
- nodedata
Devuelve: verdadero para aceptar los datos como nodo después de haber hecho la clave única en el modelo; falso para ignorar estos datos.
protected virtual void ModifyGroupNodeKey(NodeType nodedata, NodeKey groupkey)
graphLinksModel.ModifyGroupNodeKey(nodedata, groupkey)
Este método implementa la modificación de los datos de nodos para que su referencia a un grupo que contiene datos de nodos (si es que hay) sea el dado.
- nodedata
- los datos de nodos que se modificarán
- groupkey
- el valor clave de los datos de nodos "grupos"
protected virtual void ModifyLinkFromPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.ModifyLinkFromPort(linkdata, nodekey, portparam)
Este método implementa la modificación de los datos de enlace para cambiar la referencia a los datos de "desde" nodos y la información de puerto "desde" del enlace.
- linkdata
- los datos de enlace que se han de modificar
- nodekey
- los nuevos datos de nodos
- portparam
protected virtual void ModifyLinkLabelKey(LinkType linkdata, NodeKey linklabelkey)
graphLinksModel.ModifyLinkLabelKey(linkdata, linklabelkey)
Este método implementa la modificación de los datos de enlace para cambiar la referencia a los datos de nodos "belde".
- linkdata
- los datos de enlace que se han de modificar
- linklabelkey
- los datos de la nueva etiqueta
protected virtual void ModifyLinkToPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.ModifyLinkToPort(linkdata, nodekey, portparam)
Este método implementa la modificación de los datos de enlace para cambiar la referencia a los datos de "a" nodos y la información de puerto "a" del enlace.
- linkdata
- los datos de enlace que se han de modificar
- nodekey
- los nuevos datos de nodos
- portparam
protected virtual void ModifyMemberNodeKeys(NodeType nodedata, IEnumerable membernodekeys)
graphLinksModel.ModifyMemberNodeKeys(nodedata, membernodekeys)
Este método implementa realmente la sustitución de la colección de datos de nodos de grupo de claves de nodos miembros.
- nodedata
- los datos de nodos que se modificarán
- membernodekeys
- una secuencia de valores clave de datos de nodos "miembros"
public void RemoveLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
graphLinksModel.RemoveLink(fromdata, fromparam, todata, toparam)
Retire todos los datos de enlace de LinksSource que conectan los dos nodos/puertos.
- fromdata
- un nodo clave identificando los datos de nodos de los que viene el enlace
- fromparam
- un valor opcional identificando qué puerto en el nodo "de" el enlace se conecta a
- todata
- una clave de nodo identifica los datos de nodo a los que va el enlace
- toparam
- un valor opcional identificando qué puerto en el "a" nodo el enlace está conectado a
public void RemoveLink(LinkType linkdata)
graphLinksModel.RemoveLink(linkdata)
Retire los datos de enlace de LinksSource.
- linkdata
public void RemoveMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.RemoveMemberNodeKey(nodedata, memberkey)
Eliminar el valor clave de los datos de los ganglios de un grupo de la lista de valores clave "miembros".
- nodedata
- los datos de nodos que se modificarán
- memberkey
- el valor clave de los datos de nodos "miembros"
public void RemoveNode(NodeType nodedata)
graphLinksModel.RemoveNode(nodedata)
Retire los datos de nodos de NodesSource.
- nodedata
public void ResolveAllReferences()
graphLinksModel.ResolveAllReferences()
Causa ResolveNodeKey(a ser llamado a cada referencia de nodos retrasados o de avance conocidos.
protected virtual void ResolveNodeKey(NodeKey nodekey)
graphLinksModel.ResolveNodeKey(nodekey)
Esto es llamado repetidamente por ResolveAllReferences@, una vez por cada referencia conocida retrasada o posterior a los nodos.
- nodekey
public XElement Save<NodeDataType, LinkDataType>(XName rootname, XName nodename, XName linkname)
result = graphLinksModel.Save(rootname, nodename, linkname)
Generar un Linq para XML XElement conteniendo todos los datos de nodo y enlace.
- rootname
- el nombre del XElement devuelto
- nodename
- el nombre de cada XElement que contiene datos de nodos
- linkname
- el nombre de cada XElement que contiene datos de enlace
Devuelve: un XElement
public void SetGroupNodeKey(NodeType nodedata, NodeKey groupkey)
graphLinksModel.SetGroupNodeKey(nodedata, groupkey)
Cambia los datos de nodos para que se refiera a los datos de un grupo de contenedores diferentes, por clave de nodo.
- nodedata
- los datos de nodos que se modificarán
- groupkey
- el valor clave de los nuevos datos de nodos "grupos"
public void SetLinkFromPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.SetLinkFromPort(linkdata, nodekey, portparam)
Cambiar datos de enlace para que se refiera a datos de nodos diferentes "de" e información de puerto asociada.
- linkdata
- los datos de enlace que se han de modificar
- nodekey
- los nuevos datos de nodos
- portparam
public void SetLinkLabelKey(LinkType linkdata, NodeKey linklabelkey)
graphLinksModel.SetLinkLabelKey(linkdata, linklabelkey)
Cambiar datos de enlace para que se refiera a datos de nodos "etiquetados".
- linkdata
- los datos de enlace que se han de modificar
- linklabelkey
- los datos de la nueva etiqueta
public void SetLinkToPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.SetLinkToPort(linkdata, nodekey, portparam)
Cambia los datos de enlace para que se refiera a datos de nodos diferentes "a" e información de puerto asociada.
- linkdata
- los datos de enlace que se han de modificar
- nodekey
- los nuevos datos de nodos
- portparam
public void SetMemberNodeKeys(NodeType nodedata, IEnumerable membernodekeys)
graphLinksModel.SetMemberNodeKeys(nodedata, membernodekeys)
Reemplazar la lista de datos de nodos de valores clave "miembro".
- nodedata
- los datos de nodos que se modificarán
- membernodekeys
- una secuencia de valores clave de datos de nodos "miembros"