SGI

NAME

     ilPolyadicImg - base class	for N-input operators


INHERITS FROM

     ilLink : ilImage :	ilCacheImg : ilMemCacheImg : ilOpImg


HEADER FILE

     #include <il/ilPolyadicImg.h>


CLASS DESCRIPTION

     ilPolyadicImg is the base class for IL operator images with multiple
     input (parent) images. This class is only useable when derived from to
     define the	processing to be perform using the virtual, calcPage();	there
     is	no public constructor.


CLASS MEMBER FUNCTION SUMMARY

     Constructor

	  ilPolyadicImg(int numInputs =	-1)    protected

     Get/set methods

	  void setOffset(int x,	int y, int z = 0, int idx = 0)
	  ilStatus getOffset(int &x, int &y, int &z, int idx = 0)
	  iflXYZint* getOffsets()
	  int getNumActiveInputs()
	  ilImage* getActiveInput(int idx=0)
	  ilStatus getActiveOffset(int &x, int &y, int &z, int idx = 0)
	  double getActiveInputMin(int idx=0)
	  double getActiveInputMax(int idx=0)

     Defining the image	processing operation

	  virtual ilStatus calcPage(void** inBuf, int numIn, void* outBuf,
				    ilMpCacheRequest& req)    protected



FUNCTION DESCRIPTIONS

     ilPolyadicImg()

	  ilPolyadicImg(int numInputs =	-1)    protected


	  The constructor take a single	argument, numInputs, that specifies
	  the maximum number of	inputs that a derived class will accept.  The
	  default value, -1, indicates that an unlimited number	of inputs are
	  allowed.

     calcPage()



	  virtual ilStatus calcPage(void** inBuf, int numIn, void* outBuf,
				    ilMpCacheRequest& req)    protected


	  This method must be defined to by a derived class to implement the
	  actual image processing algorithm.  The input	buffers	are passed in
	  an array of void pointers, inBuf, of length, numIn.  The output data
	  is placed in outBuf. The page	origin and size	are defined by the
	  (x,y,z,c) and	(nx,ny,nz,nc) members of req.

     getActiveInput()

	  ilImage* getActiveInput(int idx=0)


	  This method returns the idx'th active	input (zero relative).	An
	  active input is any input that is non-NULL.

     getActiveInputMax()

	  double getActiveInputMax(int idx=0)


	  This method returns the maximum pixel	value of the idx'th active
	  input	(zero relative).  An active input is any input that is non-
	  NULL.

     getActiveInputMin()

	  double getActiveInputMin(int idx=0)


	  This method returns the minimum pixel	value of the idx'th active
	  input	(zero relative).  An active input is any input that is non-
	  NULL.

     getActiveOffset()

	  ilStatus getActiveOffset(int &x, int &y, int &z, int idx = 0)


	  This method returns the (x,y,z) offsets of the idx'th	active input
	  (zero	relative). An active input is any input	that is	non-NULL.
	  Those	offsets	are subtracted from the	page origin in
	  prepareRequest() to determine	the tile to be accessed	from the
	  indicated input.

     getNumActiveInputs()

	  int getNumActiveInputs()


	  This method returns the number of active (non-NULL) inputs.

     getOffset()

	  ilStatus getOffset(int &x, int &y, int &z, int idx = 0)


	  This method returns the (x,y,z) offsets of the idx'th	input (zero
	  relative). Those offsets are subtracted from the page	origin in
	  prepareRequest() to determine	the tile to be accessed	from the
	  indicated input.

     getOffsets()

	  iflXYZint* getOffsets()


	  This method returns an array of offsets (as iflXYZint's) for all of
	  the inputs.  Set getOffset() for more	details	on the offset
	  interpretation.

     setOffset()

	  void setOffset(int x,	int y, int z = 0, int idx = 0)


	  This method sets the (x,y,z) offsets of the idx'th input (zero
	  relative). Those offsets are subtracted from the page	origin in
	  prepareRequest() to determine	the tile to be accessed	from the
	  indicated input.


INHERITED MEMBER FUNCTIONS

   Inherited from ilOpImg
     checkMinMax(), clearClamp(), getBias(), getClamp(), getInputMax(),
     getInputMin(), getInputScaleMax(),	getInputScaleMin(), getValidOrders(),
     getValidTypes(), isClamped(), isDiff(), isPrecisionKept(),
     keepPrecision(), resetOp(), setBias(), setClamp(),	setMaxPageSize(),
     setMinPageSize(), setValidOrder(),	setValidType(),	setWorkingType()

   Inherited from ilMemCacheImg
     allocPage(), doUserPageAlloc(), enableMP(), executeRequest(),
     finishRequest(), freePage(), getGlobalThrashMode(), getMpRequest(),
     getPage(),	getPageAllocTime(), getPageTime(), getRetainMode(),
     getRetainPath(), getThrashMode(), getThrashTime(),	getTotalPageTime(),
     isMPenabled(), isUserPageAlloc(), prepareRequest(),
     setGlobalThrashMode(), setPage(), setPageAllocTime(), setRetainMode(),
     setRetainPath(), setThrashMode(),

   Inherited from ilCacheImg
     enablePagingCallback(), flush(), getCacheSize(),
     isPagingCallbackEnabled(),	listResident()

   Inherited from ilImage
     addInput(), allocFillData(), checkColorModel(), checkValidOrder(),
     checkValidType(), clipTile(), configureRetainedCache(), copy(),
     copyTile(), copyTile3D(), copyTileCfg(), fillTile(), fillTile3D(),
     fillTileRGB(), freeFillData(), getColorImg(), getColorModel(),
     getColormap(), getCompression(), getConfig(), getCopyConverter(),
     getCsize(), getDataType(),	getDimensions(), getDirectInput(),
     getDisplayCacheEnable(), getFill(), getFillData(),	getFillValue(),
     getHeight(), getHwEnable(), getHwHint(), getHwIntHint(), getHwOp(),
     getHwPassTable(), getInput(), getInputTileRequirement(),
     getLockTileSet(), getMaxColormapLevels(), getMaxValue(), getMinValue(),
     getNumChans(), getNumInputs(), getOrder(),	getOrientation(),
     getPageBorder(), getPageBorderX(),	getPageBorderY(), getPageBorderZ(),
     getPageCounts(), getPageDelta(), getPageDimensions(), getPageIndices(),
     getPageOrigin(), getPageOriginC(),	getPageOriginX(), getPageOriginY(),
     getPageOriginZ(), getPageSize(), getPageSizeC(), getPageSizePix(),
     getPageSizeVal(), getPageSizeX(), getPageSizeY(), getPageSizeZ(),
     getPixel(), getPixel3D(), getPriority(), getScaleMax(), getScaleMin(),
     getSize(),	getStrides(), getSubTile(), getSubTile3D(), getTile(),
     getTile3D(), getWidth(), getXsize(), getYsize(), getZsize(),
     hasPageBorder(), hasPages(), hwDefine(), hwGetPass(), inherit(),
     initColorModel(), initHwEnable(), initMinMax(), initPageSize(),
     initScaleMinMax(),	isColorImg(), isIntegral(), isMirrorOrientation(),
     isPartialPage(), isSigned(), isValidPage(), isWritable(), lockPage(),
     lockPageSet(), lockTile(),	lockTile3D(), mapFlipTrans(), mapFromInput(),
     mapFromSource(), mapOrientation(),	mapSize(), mapTile(), mapToInput(),
     mapToSource(), mapXY(), mapXYSign(), outOfBound(),	qCopyTileCfg(),
     qFillTile3D(), qFillTileRGB(), qGetSubTile3D(), qGetTile3D(),
     qLockPageSet(), qSetSubTile3D(), qSetTile3D(), removeHwHint(),
     removeInput(), reset(), setColorModel(), setColormap(), setCompression(),
     setCsize(), setDataType(),	setDisplayCacheEnable(), setFill(),
     setFillValue(), setHwEnable(), setHwHint(), setHwIntHint(), setInput(),
     setMaxColormapLevels(), setMaxValue(), setMinValue(), setNumChans(),
     setNumInputs(), setOrder(), setOrientation(), setPageBorder(),
     setPageSize(), setPageSizeC(), setPageSizeZ(), setPixel(),	setPixel3D(),
     setPriority(), setScaleMinMax(), setScaleType(), setSize(), setSubTile(),
     setSubTile3D(), setTile(),	setTile3D(), setTileRequirementFunction(),
     setWritable(), setXsize(),	setYsize(), setZsize(),	unlockPage(),
     unlockPageSet()

   Inherited from ilLink
     addResetCallback(), alterAction(),	anyAltered(), clearAllowed(),
     clearSet(), clearStatus(),	deleteRelated(), disableAltered(),
     dumpChain(), getClassPropSet(), getDescription(), getDirectParent(),
     getDisabledIndex(), getFloatProp(), getGenerationID(), getIntProp(),
     getMaxIndex(), getMinIndex(), getNumChildren(), getNumParents(),
     getParent(), getProp(), getProp(),	getPropSet(), getPtrProp(),
     getRelatedChild(),	getRelatedDelete(), getRelatedType(), getStatus(),
     hasResetCallbacks(), ilGetClassPropSet(), inProgress(), isAllowed(),
     isAltered(), isEnabled(), isRelated(), isSet(), markSet(),	mpUnlock(),
     neverReset(), newRelatedType(), removeParent(), removeProp(),
     removeResetCallback(), reset(), resetAltered(), resetCheck(),
     setAllowed(), setAltered(), setDescription(), setDisabledIndex(),
     setEnabled(), setParent(),	setProp(), setPropAltered(),
     setRelatedDelete(), setRelatedType(), setStatus(),	stopWatching(),
     unalterable(), watch(), watchNotify()


SEE ALSO