org.abora.gold.spaces.cross
Class CrossSpace

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.spaces.basic.CoordinateSpace
                    |
                    +--org.abora.gold.spaces.cross.CrossSpace
Direct Known Subclasses:
GenericCrossSpace

public class CrossSpace
extends CoordinateSpace

Represents the cross of several coordinate spaces.


Field Summary
protected  PtrArray mySubSpaces
           
 
Fields inherited from class org.abora.gold.spaces.basic.CoordinateSpace
myAscending, myDescending, myEmptyRegion, myFullRegion, 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
CrossSpace()
           
CrossSpace(PtrArray subSpaces)
           
 
Method Summary
 int actualHashForEqual()
           
 PtrArray axes()
          Essential.
 CoordinateSpace axis(int dimension)
          The sub coordinate space on the given axis
 int axisCount()
          The number of dimensions in this space
 IntegerVar count()
           
 Mapping crossOfMappings()
           
 Mapping crossOfMappings(PtrArray subMappings)
          Essential.
 CrossOrderSpec crossOfOrderSpecs()
           
 CrossOrderSpec crossOfOrderSpecs(PtrArray subOrderings)
           
 CrossOrderSpec crossOfOrderSpecs(PtrArray subOrderings, PrimIntArray subSpaceOrdering)
          Essential.
 Tuple crossOfPositions(PtrArray coordinates)
          Essential.
 CrossRegion crossOfRegions(PtrArray subRegions)
          Essential.
 CrossRegion extrusion(int dimension, XnRegion subRegion)
          Return a region whose projection is 'subRegion' along 'dimension', but is full on all
other dimensions
static void info()
          {PtrArray CLIENT of: CoordinateSpace} axes
{CoordinateSpace CLIENT} axis: dimension {Int32}
{Int32 CLIENT} axisCount
{Mapping CLIENT} crossOfMappings
{Mapping CLIENT} crossOfMappings: subMappings {(PtrArray of: Mapping | NULL)
default: NULL}
{CrossOrderSpec CLIENT} crossOfOrderSpecs
{CrossOrderSpec CLIENT} crossOfOrderSpecs: subOrderings {(PtrArray of: OrderSpec | NULL)
default: NULL}
{CrossOrderSpec CLIENT} crossOfOrderSpecs: subOrderings {(PtrArray of: OrderSpec | NULL)
default: NULL} with: subSpaceOrdering {Int32Array default: NULL}
{Tuple CLIENT} crossOfPositions: coordinates {PtrArray of: Position}
{CrossRegion CLIENT} crossOfRegions: subRegions {PtrArray of: XuRegion | NULL}
{CrossRegion CLIENT} extrusion: dimension {Int32} with: subRegion {XuRegion}
 int intCount()
           
 boolean isEqual(Heaper other)
          Return true if the two objects are equal.
static Heaper make(CoordinateSpace zeroSpace, CoordinateSpace oneSpace)
          Cross two sub spaces
static Heaper make(PtrArray subSpaces)
          Make a cross space with the given list of subspaces
 CrossMapping makeCrossMapping(PtrArray subMappings)
           
 CrossOrderSpec makeCrossOrderSpec(PtrArray subOrderings, Int32Array subSpaceOrdering)
          Make a lexical ordering of all elements in the space, using the given ordering for each
sub space.
 CrossRegion makeCrossRegion(PtrArray subRegions)
          Make a 'rectangular' region as a cross of all the given regions
 Tuple makeTuple(PtrArray coordinates)
          Make an individual position
 PtrArray secretSubSpaces()
          The actual array of sub spaces.
 CoordinateSpace subSpace(int dimension)
           
 PtrArray subSpaces()
           
 
Methods inherited from class org.abora.gold.spaces.basic.CoordinateSpace
ascending, completeMapping, descending, emptyRegion, fetchAscending, fetchDescending, finishCreate, fullRegion, getAscending, getDescending, identityDsp, identityMapping, importMapping, importOrderSpec, importRegion, mapping, mapping, orderSpec, region, verify
 
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

mySubSpaces

protected PtrArray mySubSpaces
Constructor Detail

CrossSpace

public CrossSpace()

CrossSpace

public CrossSpace(PtrArray subSpaces)
Method Detail

axes

public PtrArray axes()
Essential. The base spaces that I am a cross of.


axis

public CoordinateSpace axis(int dimension)
The sub coordinate space on the given axis


axisCount

public int axisCount()
The number of dimensions in this space


actualHashForEqual

public int actualHashForEqual()
Overrides:
actualHashForEqual in class CoordinateSpace

isEqual

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

Overrides:
isEqual in class CoordinateSpace

crossOfMappings

public Mapping crossOfMappings(PtrArray subMappings)
Essential. Map each coordinate according to the mapping from its space. NULLs mean 'use
the identity mapping'


crossOfOrderSpecs

public CrossOrderSpec crossOfOrderSpecs(PtrArray subOrderings,
                                        PrimIntArray subSpaceOrdering)
Essential. Make a lexical ordering of all elements in the space, using the given ordering
for each sub space. If no sub space ordering is given, then it is in the order they are in
the array.
subSpaceOrdering lists the lexicographic order in which each dimension should be
processed. Every dimension should be listed exactly one, from most significant (at index
0) to least significant.
subOrderings are indexed by *dimension*, not by lexicographic order. In order to index by
lex order, look up the dimension in subSpaceOrdering, and then look up the resulting
dimension number in subOrderings.


crossOfPositions

public Tuple crossOfPositions(PtrArray coordinates)
Essential. Make an individual position


crossOfRegions

public CrossRegion crossOfRegions(PtrArray subRegions)
Essential. Make a 'rectangular' region as a cross of all the given regions


extrusion

public CrossRegion extrusion(int dimension,
                             XnRegion subRegion)
Return a region whose projection is 'subRegion' along 'dimension', but is full on all
other dimensions


count

public IntegerVar count()

intCount

public int intCount()

makeCrossMapping

public CrossMapping makeCrossMapping(PtrArray subMappings)

makeCrossOrderSpec

public CrossOrderSpec makeCrossOrderSpec(PtrArray subOrderings,
                                         Int32Array subSpaceOrdering)
Make a lexical ordering of all elements in the space, using the given ordering for each
sub space. If no sub space ordering is given, then it is in the order they are in the
array


makeCrossRegion

public CrossRegion makeCrossRegion(PtrArray subRegions)
Make a 'rectangular' region as a cross of all the given regions


makeTuple

public Tuple makeTuple(PtrArray coordinates)
Make an individual position


subSpace

public CoordinateSpace subSpace(int dimension)

subSpaces

public PtrArray subSpaces()

crossOfMappings

public Mapping crossOfMappings()

crossOfOrderSpecs

public CrossOrderSpec crossOfOrderSpecs()

crossOfOrderSpecs

public CrossOrderSpec crossOfOrderSpecs(PtrArray subOrderings)

secretSubSpaces

public PtrArray secretSubSpaces()
The actual array of sub spaces. DO NOT MODIFY


make

public static Heaper make(PtrArray subSpaces)
Make a cross space with the given list of subspaces


make

public static Heaper make(CoordinateSpace zeroSpace,
                          CoordinateSpace oneSpace)
Cross two sub spaces


info

public static void info()
{PtrArray CLIENT of: CoordinateSpace} axes
{CoordinateSpace CLIENT} axis: dimension {Int32}
{Int32 CLIENT} axisCount
{Mapping CLIENT} crossOfMappings
{Mapping CLIENT} crossOfMappings: subMappings {(PtrArray of: Mapping | NULL)
default: NULL}
{CrossOrderSpec CLIENT} crossOfOrderSpecs
{CrossOrderSpec CLIENT} crossOfOrderSpecs: subOrderings {(PtrArray of: OrderSpec | NULL)
default: NULL}
{CrossOrderSpec CLIENT} crossOfOrderSpecs: subOrderings {(PtrArray of: OrderSpec | NULL)
default: NULL} with: subSpaceOrdering {Int32Array default: NULL}
{Tuple CLIENT} crossOfPositions: coordinates {PtrArray of: Position}
{CrossRegion CLIENT} crossOfRegions: subRegions {PtrArray of: XuRegion | NULL}
{CrossRegion CLIENT} extrusion: dimension {Int32} with: subRegion {XuRegion}



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