Skip to main content

EnsLib.InteropTools.HL7.MessageAnalyzer.Derive.Tree

class EnsLib.InteropTools.HL7.MessageAnalyzer.Derive.Tree extends %Library.RegisteredObject

Method Inventory

Methods

method %OnNew(ByRef pTree, pTopIndex As %Integer) as %Status
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

method AddReference(pIndex As %Integer, pPointerIndex As %Integer)
Add the given pointer pPointerIndex to the end of the entry at pIndex
method AddReferenceAfter(pIndex As %Integer, pPointerIndex As %Integer, pAfterThisPointerIndex As %Integer)
In the pIndex subtree: add the given pointer pPointerIndex after the subentry containing pAfterThisPointerIndex
method AddReferenceBefore(pIndex As %Integer, pPointerIndex As %Integer, pBeforeThisPointerIndex As %Integer)
In the pIndex subtree: add the given pointer pPointerIndex before the subentry containing pBeforeThisPointerIndex
method ChangeReferences(pIndex As %Integer, pPointerIndex As %Integer, pTreeRefs As TreeRefs)
Change all references to pPointerIndex to refer to pIndex instead

References in pIndex are NOT changed

method Clone() as Tree
method Count() as %Integer
method DeleteAllPointersAt(pIndex As %Integer)
method DeletePointerAt(pIndex As %Integer, pPointerKey As %Integer)
method Dump()
method FindPointerIndex(pIndex As %Integer, pPointerIndex As %Integer) as %Integer
method GetNodeAt(pIndex As %Integer) as %List
Return the top-level node at the given index
method GetParentIndex(pIndex As %Integer) as %Integer
This is not a method you want to call often - it searches the tree

Returns 0 if this is the root node

Throws an exception if this is not the root node and no parent is found in the tree (probably a detached node)

method GetPointerAt(pIndex As %Integer, pPointerKey As %Integer) as %Integer
Return the pointer index at the given top-level index and pointer key
method GetTopIndex() as %Integer
method NewTopLevelEntry(pNode As %List) as %Integer
Create a new top-level tree entry for the given node, returning the index
method NodeCount(pIndex As %Integer) as %Integer
method Pattern(pIndex As %Integer, pQuotePlainValues As %Boolean = 0) as %String
method ReplacePointerAt(pIndex As %Integer, pPointerKey As %Integer)
Given Tree(pIndex,pPointerKey)=INDEX, where Tree(INDEX) has exactly one child TREE(INDEX,1)=CHILDINDEX

Insert Tree(pIndex,NEWPOINTERKEY)=CHILDINDEX after pPointerKey and delete Tree(pIndex,pPointerKey)

method ReplaceWith(pTree As Tree)
method SetNodeAt(pNode As %List, pIndex As %Integer)
method SetTopIndex(pNewTopIndex As %Integer)

Inherited Members

Inherited Methods

FeedbackOpens in a new tab