- Encapsulates the Quadrature over the receiver and the building of links
This is an abstract class and cannot be directly instanced.
[
Rad |
Source |
Search |
Keywords |
Summary | Ancestors | All Members | Descendants ]
- DESCRIPTION
- WARNING
- PATTERN
Class Summary
class RiLinkStrategy
{
}; // RiLinkStrategy
DESCRIPTION
This is a strategy (or strategy family) that is responsible for computing the
data needed for building links and deciding refinement issues and then actually
building the links (used by RiRefineStrategy). This enables a lot of flexibility
in changing things. It also allows the system to have different strategies
for different situations (completely unoccluded, linked to eye, linked to
an object with no form factor capability) and build the appropriate links
for them.
WARNING
This class should have no data. It is always referenced, never copied.
This allows all data to be in a class (RiRefine) with no virtual methods.
PATTERN
Strategy
void Link(RiRefine &data) const;
Do any actions between the src and rec given that they have been subdivided to an appropriate level.
virtual void Link(RiRefine &data) const;
bool ComputeTransfer(RiRefine &data) const;
computes all form factor/error/visibility info. Returns false if the two surfaces don't interact.
virtual bool ComputeTransfer(RiRefine &data) const;
const RiLinkStrategy &GetRefinedLinkStrategy(RiRefine &data) const;
Get somebody to handle the children's link building
virtual const RiLinkStrategy &GetRefinedLinkStrategy(RiRefine &data) const;
All Members
Ancestors
Class does not inherit from any other class.
Descendants
Class is not inherited by any others.
Generated from source by the Cocoon utilities on Fri Feb 25 15:15:46 2000
.