icetdatareplicationgroupcolor(3) [debian man page]
icetDataReplicationGroupColor(3) IceT Reference icetDataReplicationGroupColor(3)NAME
icetDataReplicationGroupColor -- define data replication.
Synopsis
#include <IceT.h>
void icetDataReplicationGroupColor( IceTInt color );
Description
IceT has the ability to take advantage of geometric data that is replicated among processes. If a group of processes share the same geome-
try data, then IceT will split the region of the display that the data projects onto among the processes, thereby reducing the total amount
of image composition work that needs to be done.
Despite the name of the function, icetDataReplicationGroupColor has nothing to do the color of the data being replicated. Instead, color is
used to mark the local process as part of a given group. When icetDataReplicationGroupColor is called, it finds all other processes that
have the same color and builds a group based on this information.
icetDataReplicationGroupColor must be called on every processes before the function will return.
Errors
None.
Warnings
None.
Bugs
IceT assumes that icetDataReplicationGroup is called with the exact same parameters on all processes belonging to a given group. Likewise,
IceT also assumes that all processes have called icetBoundingVertices or icetBoundingBox with the exact same parameters on all processes
belonging to a given group. These requirements are not strictly enforced, but failing to do so may cause some of the geometry to not be
rendered.
Copyright
Copyright (C)2003 Sandia Corporation
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software.
This source code is released under the New BSD License.
See AlsoicetDataReplicationGroup(3), icetBoundingVertices(3), icetBoundingBox(3)IceT Reference September 20, 2010 icetDataReplicationGroupColor(3)
Check Out this Related Man Page
icetCompositeOrder(3) IceT Reference icetCompositeOrder(3)NAME
icetCompositeOrder -- specify the order in which images are composited
Synopsis
#include <IceT.h>
void icetCompositeOrder( const IceTInt * process_ranks );
Description
If ICET_ORDERED_COMPOSITE is enabled and the current strategy supports ordered composition (verified with the ICET_STRATEGY_SUPPORTS_ORDER-
ING state variable, then the order which images are composited is specified with icetCompositeOrder. If compositing is done with z-buffer
comparisons (e.g. icetCompositeMode is called with ICET_COMPOSITE_MODE_Z_BUFFER), then the ordering does not matter, and ICET_ORDERED_COM-
POSITE should probably be disabled. However, if compositing is done with color blending (e.g. icetCompositeMode is called with ICET_COM-
POSITE_MODE_BLEND), then the order in which the images are composed can drastically change the output.
For ordered image compositing to work, the geometric objects rendered by processes must be arranged such that if the geometry of one
process is ``in front'' of the geometry of another process for any camera ray, that ordering holds for all camera rays. It is the applica-
tion's responsibility to ensure that such an ordering exists and to find that ordering. The easiest way to do this is to ensure that the
geometry of each process falls cleanly into regions of a grid, octree, k-d tree, or similar structure.
Once the geometry order is determined for a particular rendering viewpoint, it is given to IceT in the form of an array of ranks. The
parameter process_ranks should have exactly ICET_NUM_PROCESSES entries, each with a unique, valid process rank. The first process should
have the geometry that is ``in front'' of all others, the next directly behind that, and so on. It should be noted that the application may
actually impose only a partial order on the geometry, but that can easily be converted to the linear ordering required by IceT .
When ordering is on, it is accepted that icetCompositeOrder will be called in between every frame since the order of the geometry may
change with the viewpoint.
If data replication is in effect (see icetDataReplicationGroup), all processes are still expected to be listed in process_ranks. Correct
ordering can be achieved by ensuring that all processes in each group are listed in contiguous entries in process_ranks.
Errors
ICET_INVALID_VALUE
Not every entry in the parameter process_ranks was a unique, valid process rank.
Warnings
None.
Bugs
If an ICET_INVALID_VALUE error is raised, internal arrays pertaining to the ordering of images may not be restored properly. If such an
error is raised, the function should be re-invoked with a valid ordering before preceding. Unpredictable results may occur otherwise.
Copyright
Copyright (C)2003 Sandia Corporation
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software.
This source code is released under the New BSD License.
See AlsoicetCompositeMode(3)icetStrategy(3)IceT Reference August 9, 2010 icetCompositeOrder(3)