org.abora.gold.spaces.basic
Class CoordinateSpace

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.spaces.basic.CoordinateSpace
Direct Known Subclasses:
BasicSpace, CrossSpace, FilterSpace, HeaperSpace, IDSpace, IntegerSpace, RealSpace, SequenceSpace

public class CoordinateSpace
extends Heaper

A coordinate space represents (among other things) the domain space of a table.
Corresponding to each coordinate space will be a set of objects of the following kinds:
Position -- The elements of the coordinate space.
Mapping -- (Add a description.)
OrderSpec -- The ways of specifying partial orders of this coordinate space''s Positions.
XuRegion -- An XuRegion represents a set of Positions. The domain of a table is an
XuRegion.
When defining a new coordinate space class, one generally defines new corresponing
subclasses of each of the above classes. A kind of any of the above classes knows what
coordinate space it is a part of (the "coordinateSpace()" message will yield an
appropriate kind of CoordinateSpace). CoordinateSpace objects exist mostly just to
represent this commonality. Coordinate spaces are disjoint--it is an error to use any of
the generic protocol of any of the above classes if the objects in question are of two
different coordinate spaces. For example, "dsp->of (pos)" is not an error iff
"dsp->coordinateSpace()->isEqual (pos->coordinateSpace())".
Note that this class is not COPY or even PSEUDO_COPY. All of the instance variables for
CoordinateSpace are basically cached
quantities that require vary little actual state from the derived classes in order to be
constructed. This realization allows a knot
to be untangled when reading these objects from external storage.


Field Summary
protected  OrderSpec myAscending
           
protected  OrderSpec myDescending
           
protected  XnRegion myEmptyRegion
           
protected  XnRegion myFullRegion
           
protected  Dsp myIdentityDsp
           
 
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
CoordinateSpace()
           
CoordinateSpace(XnRegion emptyRegion, XnRegion fullRegion, Dsp identityDsp)
           
CoordinateSpace(XnRegion emptyRegion, XnRegion fullRegion, Dsp identityDsp, OrderSpec ascending)
           
CoordinateSpace(XnRegion emptyRegion, XnRegion fullRegion, Dsp identityDsp, OrderSpec ascending, OrderSpec descending)
           
 
Method Summary
 int actualHashForEqual()
           
 OrderSpec ascending()
          Essential.
 Mapping completeMapping(XnRegion range)
          Essential.
 OrderSpec descending()
          The mirror image of the partial order returned by 'CoordinateSpace::ascending'.
 XnRegion emptyRegion()
          Essential.
 OrderSpec fetchAscending()
          The natural full-ordering of the coordinate space.
 OrderSpec fetchDescending()
          The mirror image of the partial order returned by
'CoordinateSpace::fetchAscending'.
 void finishCreate(XnRegion emptyRegion, XnRegion fullRegion, Dsp identityDsp, OrderSpec ascending, OrderSpec descending)
           
 XnRegion fullRegion()
          A full region in this coordinate space
 OrderSpec getAscending()
          Essential.
 OrderSpec getDescending()
          The mirror image of the partial order returned by 'CoordinateSpace::getAscending'.
 Dsp identityDsp()
          A Dsp which maps all positions in the coordinate space onto themselves
 Mapping identityMapping()
          Essential.
 Mapping importMapping(PrimArray data, CoordinateSpace rangeSpace)
           
 OrderSpec importOrderSpec(PrimArray data)
           
 XnRegion importRegion(PrimArray data)
           
static void info()
          {OrderSpec CLIENT} ascending
{Mapping CLIENT} completeMapping: range {XuRegion}
{OrderSpec CLIENT} descending
{XuRegion CLIENT} emptyRegion
{XuRegion CLIENT} fullRegion
{Mapping CLIENT} identityMapping
 boolean isEqual(Heaper other)
          Return true if the two objects are equal.
 Mapping mapping(PrimArray data)
           
 Mapping mapping(PrimArray data, CoordinateSpace rangeSpace)
           
 OrderSpec orderSpec(PrimArray data)
           
 XnRegion region(PrimArray data)
           
 boolean verify(Heaper thing)
          tell whether this is a valid Position/XuRegion/Dsp/OrderSpec for this space
 
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, make, makeClassTable, makeFillTable, makeRequestTable, mangle, markChildren, markCount, markInstances, mayBecome, mayBecomeAnySubclassOf, new1, newX, nonCopyVariables, notWorking, pack, packageClasses, packagingCategory, parseExportName, passe, pointerToStaticMember, pointerToStaticMember, pointerToVirtualMember, preorderMax, preorderNumber, printOn, PROBLEM, problems, promiseClass, promiseDefaultValue, promiseName, promiseNameTable, promiseToAbstract, registerPackageCategory, removeGeneratedCode, removeStubbleMethods, removeSubclassGeneratedCode, removeSubclassStubbleMethods, requestProcedure, requestProceduresFrom, returnTypeFor, rootName, scheduleTermination, sendProxyTo, sendSelfTo, 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

myEmptyRegion

protected XnRegion myEmptyRegion

myFullRegion

protected XnRegion myFullRegion

myIdentityDsp

protected Dsp myIdentityDsp

myAscending

protected OrderSpec myAscending

myDescending

protected OrderSpec myDescending
Constructor Detail

CoordinateSpace

public CoordinateSpace(XnRegion emptyRegion,
                       XnRegion fullRegion,
                       Dsp identityDsp)

CoordinateSpace

public CoordinateSpace(XnRegion emptyRegion,
                       XnRegion fullRegion,
                       Dsp identityDsp,
                       OrderSpec ascending)

CoordinateSpace

public CoordinateSpace()

CoordinateSpace

public CoordinateSpace(XnRegion emptyRegion,
                       XnRegion fullRegion,
                       Dsp identityDsp,
                       OrderSpec ascending,
                       OrderSpec descending)
Method Detail

actualHashForEqual

public int actualHashForEqual()
Overrides:
actualHashForEqual in class Heaper

ascending

public OrderSpec ascending()
Essential. The natural full-ordering of the coordinate space.


completeMapping

public Mapping completeMapping(XnRegion range)
Essential. A Mapping which maps each position in this space to every position in the range
region. The region can be from any CoordinateSpace.


descending

public OrderSpec descending()
The mirror image of the partial order returned by 'CoordinateSpace::ascending'.


emptyRegion

public XnRegion emptyRegion()
Essential. An empty region in this coordinate space


fetchAscending

public OrderSpec fetchAscending()
The natural full-ordering of the coordinate space.


fetchDescending

public OrderSpec fetchDescending()
The mirror image of the partial order returned by
'CoordinateSpace::fetchAscending'.


fullRegion

public XnRegion fullRegion()
A full region in this coordinate space


getAscending

public OrderSpec getAscending()
Essential. The natural full-ordering of the coordinate space.


getDescending

public OrderSpec getDescending()
The mirror image of the partial order returned by 'CoordinateSpace::getAscending'.


identityDsp

public Dsp identityDsp()
A Dsp which maps all positions in the coordinate space onto themselves


identityMapping

public Mapping identityMapping()
Essential. A Mapping which maps all positions in the coordinate space onto themselves


isEqual

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

Overrides:
isEqual in class Heaper

verify

public boolean verify(Heaper thing)
tell whether this is a valid Position/XuRegion/Dsp/OrderSpec for this space


finishCreate

public void finishCreate(XnRegion emptyRegion,
                         XnRegion fullRegion,
                         Dsp identityDsp,
                         OrderSpec ascending,
                         OrderSpec descending)

importMapping

public Mapping importMapping(PrimArray data,
                             CoordinateSpace rangeSpace)

importOrderSpec

public OrderSpec importOrderSpec(PrimArray data)

importRegion

public XnRegion importRegion(PrimArray data)

mapping

public Mapping mapping(PrimArray data)

mapping

public Mapping mapping(PrimArray data,
                       CoordinateSpace rangeSpace)

orderSpec

public OrderSpec orderSpec(PrimArray data)

region

public XnRegion region(PrimArray data)

info

public static void info()
{OrderSpec CLIENT} ascending
{Mapping CLIENT} completeMapping: range {XuRegion}
{OrderSpec CLIENT} descending
{XuRegion CLIENT} emptyRegion
{XuRegion CLIENT} fullRegion
{Mapping CLIENT} identityMapping



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