CGAL 4.7 - Kinetic Framework
Kinetic Namespace Reference

## Classes

class  ActiveObjectsTable
This container holds a set of objects of a particular type. It creates notifications using the standard Multi_listener<Interface> interface when a primitive changes or is added or deleted. Objects which are listening for events can then ask which primitives changed. More...

class  CertificateGenerator
This functor allows you to create certificate objects of some type. The models of this "concept" take some set of arguments which depend on the certificate being computed (for example three points for a two dimensional orientation) followed by either one or two instances of the Kinetic::Simulator::Time concept. The functions either return a Certificate or the corresponding value at the current time (if only a time value rather than an interval is passed). More...

class  EventQueue
The concept for priority queues used by the Simulator. The concept basically defines a priority queue which supports deletions and changes of items in the queue (but not their priorities). Items in the queue must implement the Event concept. More...

class  FunctionKernel
The concept Kinetic::FunctionKernel encapsulates all the methods for representing and handing functions. The set is kept deliberately small to easy use of new Kinetic::FunctionKernels, but together these operations are sufficient to allow the correct processing of events, handling of degeneracies, usage of static data structures, run-time error checking as well as run-time verification of the correctness of kinetic data structures. The computation of a polynomial with the variable negated is used for reversing time in kinetic data structures and can be omitted if that capability is not needed. More...

class  InstantaneousKernel
The concept Kinetic::InstantaneousKernel covers models that act as adaptors allowing CGAL static data structures to act on snapshots of kinetic data. Different methods for evaluating predicates are used depending on whether time is set using an NT or a Time object. Evaluating predicates when time is the former is much cheaper. More...

class  Key
The concept Key is a unique identifier for something in some sort of table. In general, they can be only created by the table and are returned when a appropriate new_foo() method is called on the table. There are two classes of values for a Key, valid and invalid. The latter cannot refer to something in a table. Use the method is_valid() to differentiate. More...

class  Certificate
The concept Kinetic::Certificate represents certificate. Its main purpose is to provide a way of creating Time objects corresponding to when the certificate fails and to cache any useful work done in find the Time for later. More...

class  Kernel
The concept Kinetic::Kernel acts as the kinetic analog of a CGAL kernel. It provides some set of primitives and predicats acting on them. The predicates are instances of Kinetic::CertificateGenerator and can be used to either create Certificates or to evaluate instantaneous predicates. More...

class  RootStack
The concept Kinetic::RootStack enumerates through roots of a function contained in a half open interval [lb $$\dots$$ ub). More...

class  SimulationTraits
This concept ties together the parts needed in order to run a kinetic data structure. All support trajectories defined by polynomial coordinates. The Exact vs Inexect picks whether the roots of the certificate functions are compared exactly or approximated numerically. The regular triangulation models have weighted points of the appropriate dimension as the primitive used in the Kinetic::InstantaneousKernel and the Kinetic::ActiveObjectsTable. More...

class  Simulator
The class Kinetic::Simulator controls kinetic data structures by maintaining a the current time and ensuring that events are processed when necessary. More...