| 89 | |
| 90 | **Important classes** |
| 91 | |
| 92 | Below is a list of some important classes which are used for manipulating the SVG properties. |
| 93 | |
| 94 | ||= **Class name** =||= **Description** =||= **Important Methods** =|| |
| 95 | || **SVGProperty** || It is a RefCounted object. It is the base of the SVG types: SVGNumber, SVGPoint, SVGRect, SVGMatrix, SVGTransfrom, SVGLength and SVGPathSeg. || || |
| 96 | || **SVGPathSeg** || It is a special kind of SVGProperty because it is only an abstract class. Only the super classes of it can be created. || || |
| 97 | || **SVGPathSegValue** || It is a template class of SVGPathSeg with a template parameter pack. All the SVGPathSeg types are derived from this template. || || |
| 98 | || **SVGAnimatedProperty** || It is the base class of all the animated properties, e.g. SVGAnimatedLength and SVGAnimatedString. It maintains two members baseVal and animVal.. || || |
| 99 | || **SVGList** || It is a template class and which provides the basic DOM interface of an SVG list. || || |
| 100 | || **SVGPropertyList** || It holds RefCounted items. It is the base class of SVGValuePropertyList and SVGPathSegList. || || |
| 101 | || **SVGValuePropertyList** || It holds SVG type items, e.g. SVGNumber and SVGPoint. || || |
| 102 | || **SVGPathSegList** || It is a SVGList of Ref<SVGPathSeg> but it does lazy conversions: from SVGPathByteStream to list of Ref<SVGPathSeg> and from list of Ref<SVGPathSeg> to SVGPathByteStream. || || |
| 103 | || **SVGPropertyOwner** || It is the base class of all the SVGProperty owners. It is driven by SVGElement, SVGAnimatedProperty, SVGPropertyList and SVGTransform. || || |
| 104 | || **SVGPropertyRegistry** || It manages the SVGProperties, connect them to their attributes and defines their accessors. || || |
| 105 | || **SVGAccessor** || It is used to access an SVGProperty in an SVGElement. The accessor can access a pair of SVGProperties if they are associated with the same attribute. One important task of an accessor is creating the SVGAnimator of an SVGAnimatedProperty of an SVGElement. || || |
| 106 | || **SVGAnimator** || It is responsible of changing the animVal of an SVGAnimatedProperty over a period of time. || || |
| 107 | || **SVGAnimationFunction** || This is where the new animated value of an SVGAnimator is calculated. || || |