/[libvob]/libvob/doc/design_C.rst
ViewVC logotype

Diff of /libvob/doc/design_C.rst

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by tjl, Mon Feb 24 11:33:14 2003 UTC revision 1.2 by tjl, Fri May 2 16:46:59 2003 UTC
# Line 13  we have settled on the following package Line 13  we have settled on the following package
13    
14      package TransformInterfaces      package TransformInterfaces
15    
16      package Transforms      package TransformsImpl
17          use TransformInterfaces          use TransformInterfaces
18    
19      package VobInterfaces      package VobInterfaces
# Line 30  we have settled on the following package Line 30  we have settled on the following package
30    
31      TransformInterfaces.c = (0,0);      TransformInterfaces.c = (0,0);
32    
33      Transforms.c = (-100, 100);      TransformsImpl.c = (-100, 100);
34      VobInterfaces.c = (100, 40);      VobInterfaces.c = (100, 40);
35    
36      VobSceneImpl.c = (0, 150);      VobSceneImpl.c = (0, 150);
# Line 40  This way the relationships between the d Line 40  This way the relationships between the d
40  aspects of the system go through well-defined  aspects of the system go through well-defined
41  interfaces in the packages TransformInterfaces and VobInterfaces.  interfaces in the packages TransformInterfaces and VobInterfaces.
42    
43    Interfaces
44    ==========
45    
46    The transform interfaces and vob interfaces are relatively simple,
47    defined in the include files ``vob/Transform.hxx`` and ``vob/Vob.hxx``.
48    
49    XXX humppake show how to make bidir links to the Doc++ docs of those here!
50    
51    The central interfaces on the C side are ``Vob`` and
52    ``Transform``, corresponding to the Java side Vob design.
53    
54    .. UML-refer: vobs_overall_2
55    
56    In C++, however, transforms are *real* classes since the overhead
57    is not significant.
58    
59    Implementations: Code Generation
60    ================================
61    
62    The TransformsImpl and VobImpl packages in the above diagram are a different
63    story: in order to support extensibility and multiple language bindings,
64    we rely on code generation and templates to create the glue code
65    from a simple definition of the actual functionality.
66    
67    The details of creating each type of class are documented
68    separately (design_vobs, design_transforms)
69    
70    XXX humppake: bidir link?
71    
72  A basic concept is the PrimitiveTransform, which is a simple  A basic concept is the PrimitiveTransform, which is a simple
73  parametrized function of points to points.  parametrized function of points to points.
74  The public members are as follows::  The public members are as follows::

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26