org.abora.gold.filter
Class Joint

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.filter.Joint
Direct Known Subclasses:
PropJoint

public class Joint
extends Heaper

Joints are used to prune searches through trees of Regions. Each Joint summarizes the
Joints and Regions at its node and its children using their intersection and union. If you
maintain this information at each each node in the tree, then you can search for Regions
in the tree efficiently using Filter::pass() to adapt the search criteria to the contents
of the subtree. See also Filter::pass(Joint *).


Field Summary
protected  XnRegion myIntersected
           
protected  XnRegion myUnioned
           
 
Fields inherited from class org.abora.gold.xpp.basic.Heaper
AllBlasts, BecomeMap, GarbageCount, InGC, InitializedClasses, InitializingClasses, LastMemory, NextClientRequestNumber, NotOneElementSignal, PackageTable, PromiseNameTable, StringHashSBoxes
 
Fields inherited from class org.abora.gold.java.AboraHeaper
ActiveClubs, CurrentAuthor, CurrentBertCanopyCache, CurrentBertCrum, CurrentChunk, CurrentGrandMap, CurrentKeyMaster, CurrentPacker, CurrentSensorCanopyCache, CurrentServer, CurrentSession, CurrentSessions, CurrentTrace, InitialEditClub, InitialOwner, InitialReadClub, InitialSponsor, InsideTransactionFlag
 
Constructor Summary
Joint(Rcvr receiver)
           
Joint(XnRegion unioned, XnRegion intersected)
           
 
Method Summary
 int actualHashForEqual()
           
 XnRegion intersected()
          The intersection of the regions at all child nodes in the tree.
 boolean isEqual(Heaper other)
          Return true if the two objects are equal.
 Joint join(Joint other)
          A Joint that is a parent of this Joint and the given one.
static Heaper make(CoordinateSpace space)
          An empty Joint in the given coordinate space.
static Heaper make(Joint left, Joint right)
          A joint that is a parent of the two given Joints.
static Heaper make(java.lang.Object something)
           
static Heaper make(java.lang.Object something, java.lang.Object other)
           
static Heaper make(ScruSet subs)
          A Joint that is a parent of all of the Joints in the set.
static Heaper make(XnRegion both)
          A Joint containing only the given region.
static Heaper make(XnRegion unioned, XnRegion intersected)
          A Joint with the given union and intersection regions.
 void printOn(java.io.PrintWriter oo)
           
 void sendSelfTo(Xmtr xmtr)
          do nothing
 XnRegion unioned()
          The union of the regions at all child nodes in the tree.
 Joint with(XnRegion region)
          A Joint that is a parent of this one and the given region.
 
Methods inherited from class org.abora.gold.xpp.basic.Heaper
abstractDeclarationFor, abstractTypeFor, addMethodAttributeToInOf, addPackage, addPackageCategory, allClientProtocolOn, argumentTypesFor, arrow, blast, blast, BLAST, cachePromiseNameTable, cachePromiseNameTableIn, canYouBecome, cast, cleanPromiseClasses, cleanupGarbage, clientClassesDo, clientFunctionsOn, clientMethodsOn, clientProtocol, clientProtocolDo, clientProtocolOn, clientProtocolOn, collectibleClasses, compare, compileClientSubclasses, compileConstantPromiseMethods, compileCreateFromRcvr, compileEQ, compileGeneratedClassMethod, compileGeneratedMethod, compileHook, compilePromise, compilePromiseDefaultMethods, compilePromiseFluidDeclarations, compilePromiseHandlers, compilePromiseMethods, compileRequestCreateMsgInArguments, compileRequestEvaluateMsgInReturningArguments, compileRPCSpecialistEvaluateMsgForReturningArguments, compileSendSelfTo, compileSendSelfToSendHook, compileStubbleMethods, compileSubclassStubbleMethods, computeMangle, computePreorder, constantTypeValue, convert, convertCopyDeclarations, convertDeferredDeclarations, convertProxyDeclarations, convertSubclassCopyDeclarations, convertSubclassDeferredDeclarations, convertSubclassProxyDeclarations, copyReferencesToType, create, create, create, create, create, create, create, create, create, create, createRequestClassArguments, definesProxyMethods, delete, deref, destroy, destruct, destructor, enum, enumFlags, equals, exportName, fetchAttribute, fetchPackage, fetchSuperCategory, fileOutClientProtocol, findCategory, findSenderAndReceiverMethods, findTailInto, flushPromiseNameTable, foo, freezeClientClasses, freezeClientProtocol, freezeStProtocol, frozenClasses, garbageCollect, garbageCollectFrom, gcOpportunity, gcOpportunity, generatedCategory, generatePromiseNames, getCategory, getOrMakePackage, getSuperCategory, handlerSignaturesFrom, hash, hashForEqual, hasProxyMethods, info_clientClasses, info_clientSideClasses, info_promiseClasses, info_stProtocol, inGC, initializedClasses, initializingClasses, initPackages, initStringHashSBoxes, inspectPieces, instanceSize, IntegerVar, isByProxy, isConstructed, isDestructed, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, isUnlocked, linkTimeNonInherited, makeClassTable, makeFillTable, makeRequestTable, mangle, markChildren, markCount, markInstances, mayBecome, mayBecomeAnySubclassOf, new1, newX, nonCopyVariables, notWorking, pack, packageClasses, packagingCategory, parseExportName, passe, pointerToStaticMember, pointerToStaticMember, pointerToVirtualMember, preorderMax, preorderNumber, PROBLEM, problems, promiseClass, promiseDefaultValue, promiseName, promiseNameTable, promiseToAbstract, registerPackageCategory, removeGeneratedCode, removeStubbleMethods, removeSubclassGeneratedCode, removeSubclassStubbleMethods, requestProcedure, requestProceduresFrom, returnTypeFor, rootName, scheduleTermination, sendProxyTo, serverNameFor, setGC, signal, signals, smalltalkSelector, stClientProtocol, stubbleSelectorTokenReturnsArguments, subclassNonCopyVariables, takeOop, togglePromiseName, togglePromiseOfParse, unimplemented, unmangle, verifyFreeze, wipeStubble
 
Methods inherited from class org.abora.gold.java.AboraHeaper
asOop, basicInspect, displayString, error, hack, halt, inspect, knownBug, mightNotImplement, REQUIRES, shouldImplement, shouldNotImplement, stubbleForSubclassResponsibility, thingToDo, willNotImplement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myUnioned

protected XnRegion myUnioned

myIntersected

protected XnRegion myIntersected
Constructor Detail

Joint

public Joint(XnRegion unioned,
             XnRegion intersected)

Joint

public Joint(Rcvr receiver)
Method Detail

printOn

public void printOn(java.io.PrintWriter oo)
Overrides:
printOn in class Heaper

intersected

public XnRegion intersected()
The intersection of the regions at all child nodes in the tree.


join

public Joint join(Joint other)
A Joint that is a parent of this Joint and the given one.


unioned

public XnRegion unioned()
The union of the regions at all child nodes in the tree.


with

public Joint with(XnRegion region)
A Joint that is a parent of this one and the given region.


actualHashForEqual

public int actualHashForEqual()
Overrides:
actualHashForEqual in class Heaper

isEqual

public boolean isEqual(Heaper other)
Description copied from class: Heaper
Return true if the two objects are equal.

Overrides:
isEqual in class Heaper

sendSelfTo

public void sendSelfTo(Xmtr xmtr)
Description copied from class: Heaper
do nothing

Overrides:
sendSelfTo in class Heaper

make

public static Heaper make(CoordinateSpace space)
An empty Joint in the given coordinate space.


make

public static Heaper make(Joint left,
                          Joint right)
A joint that is a parent of the two given Joints.


make

public static Heaper make(ScruSet subs)
A Joint that is a parent of all of the Joints in the set.


make

public static Heaper make(XnRegion both)
A Joint containing only the given region.


make

public static Heaper make(XnRegion unioned,
                          XnRegion intersected)
A Joint with the given union and intersection regions.


make

public static Heaper make(java.lang.Object something)

make

public static Heaper make(java.lang.Object something,
                          java.lang.Object other)


Translation - Copyright © 2003 David G Jones. All Rights Reserved.
Original Udanax-Gold - Copyright © 1979-1999 Udanax.com. All rights reserved.