libSBML C++ API  5.20.2
RenderExtension.h File Reference

Definition of RenderExtension, the core module of the render package. More...

Include dependency graph for RenderExtension.h:
This graph shows which files directly or indirectly include this file:

Classes

class  RenderExtension
 

Macros

#define RENDER_CREATE_NS(variable, sbmlns)    EXTENSION_CREATE_NS(RenderPkgNamespaces,variable,sbmlns);
 

Typedefs

typedef SBMLExtensionNamespaces< RenderExtensionRenderPkgNamespaces
 

Enumerations

enum  FillRule_t {
  FILL_RULE_UNSET ,
  FILL_RULE_NONZERO ,
  FILL_RULE_EVENODD ,
  FILL_RULE_INHERIT ,
  FILL_RULE_INVALID
}
 Enumeration of values permitted as the value of the "rule" attribute on Fill objects. More...
 
enum  FontFamily_t {
  FONT_FAMILY_SERIF ,
  FONT_FAMILY_SANS_SERIF ,
  FONT_FAMILY_MONOSPACE ,
  FONT_FAMILY_INVALID
}
 Enumeration of values permitted as the value of the "family" attribute on Font objects. More...
 
enum  FontStyle_t {
  FONT_STYLE_UNSET ,
  FONT_STYLE_NORMAL ,
  FONT_STYLE_ITALIC ,
  FONT_STYLE_INVALID
}
 Enumeration of values permitted as the value of the "style" attribute on Font objects. More...
 
enum  FontWeight_t {
  FONT_WEIGHT_UNSET ,
  FONT_WEIGHT_NORMAL ,
  FONT_WEIGHT_BOLD ,
  FONT_WEIGHT_INVALID
}
 Enumeration of values permitted as the value of the "weight" attribute on Font objects. More...
 
enum  GradientSpreadMethod_t {
  GRADIENT_SPREADMETHOD_PAD ,
  GRADIENT_SPREADMETHOD_REFLECT ,
  GRADIENT_SPREADMETHOD_REPEAT ,
  GRADIENT_SPREAD_METHOD_INVALID
}
 Enumeration of values permitted as the value of the "spreadmethod" attribute on Gradient objects. More...
 
enum  HTextAnchor_t {
  H_TEXTANCHOR_UNSET ,
  H_TEXTANCHOR_START ,
  H_TEXTANCHOR_MIDDLE ,
  H_TEXTANCHOR_END ,
  H_TEXTANCHOR_INVALID
}
 Enumeration of values permitted as the value of the "text-anchor" attribute on various objects. More...
 
enum  SBMLRenderTypeCode_t {
  SBML_RENDER_COLORDEFINITION = 1000 ,
  SBML_RENDER_ELLIPSE = 1001 ,
  SBML_RENDER_GLOBALRENDERINFORMATION = 1002 ,
  SBML_RENDER_GLOBALSTYLE = 1003 ,
  SBML_RENDER_GRADIENTDEFINITION = 1004 ,
  SBML_RENDER_GRADIENT_STOP = 1005 ,
  SBML_RENDER_GROUP = 1006 ,
  SBML_RENDER_IMAGE = 1007 ,
  SBML_RENDER_LINEENDING = 1008 ,
  SBML_RENDER_LINEARGRADIENT = 1009 ,
  SBML_RENDER_LINESEGMENT = 1010 ,
  SBML_RENDER_LISTOFGLOBALSTYLES = 1011 ,
  SBML_RENDER_LISTOFLOCALSTYLES = 1012 ,
  SBML_RENDER_LOCALRENDERINFORMATION = 1013 ,
  SBML_RENDER_LOCALSTYLE = 1014 ,
  SBML_RENDER_POLYGON = 1015 ,
  SBML_RENDER_RADIALGRADIENT = 1016 ,
  SBML_RENDER_RECTANGLE = 1017 ,
  SBML_RENDER_RELABSVECTOR = 1018 ,
  SBML_RENDER_CUBICBEZIER = 1019 ,
  SBML_RENDER_CURVE = 1020 ,
  SBML_RENDER_POINT = 1021 ,
  SBML_RENDER_TEXT = 1022 ,
  SBML_RENDER_TRANSFORMATION2D = 1023 ,
  SBML_RENDER_DEFAULTS = 1024 ,
  SBML_RENDER_TRANSFORMATION = 1025 ,
  SBML_RENDER_GRAPHICALPRIMITIVE1D = 1026 ,
  SBML_RENDER_GRAPHICALPRIMITIVE2D = 1027 ,
  SBML_RENDER_STYLE_BASE = 1028 ,
  SBML_RENDER_RENDERINFORMATION_BASE = 1029
}
 SBMLRenderTypeCode_t Enumeration of possible types in the libSBML “render” package implementation. More...
 
enum  VTextAnchor_t {
  V_TEXTANCHOR_UNSET ,
  V_TEXTANCHOR_TOP ,
  V_TEXTANCHOR_MIDDLE ,
  V_TEXTANCHOR_BOTTOM ,
  V_TEXTANCHOR_BASELINE ,
  V_TEXTANCHOR_INVALID
}
 Enumeration of values permitted as the value of the "vtext-anchor" attribute on various objects. More...
 

Detailed Description

Definition of RenderExtension, the core module of the render package.

Author
Frank T. Bergmann

Macro Definition Documentation

◆ RENDER_CREATE_NS

#define RENDER_CREATE_NS (   variable,
  sbmlns 
)     EXTENSION_CREATE_NS(RenderPkgNamespaces,variable,sbmlns);

Typedef Documentation

◆ RenderPkgNamespaces

Enumeration Type Documentation

◆ FillRule_t

enum FillRule_t

Enumeration of values permitted as the value of the "rule" attribute on Fill objects.

See also
Fill::getRule()
Fill::setRule()
Enumerator
FILL_RULE_UNSET 

The fill rule is "unset".

FILL_RULE_NONZERO 

The fill rule is "nonzero".

FILL_RULE_EVENODD 

The fill rule is "evenodd".

FILL_RULE_INHERIT 

The fill rule is "inherit".

FILL_RULE_INVALID 

Invalid FillRule value.

◆ FontFamily_t

Enumeration of values permitted as the value of the "family" attribute on Font objects.

See also
Font::getFamily()
Font::setFamily()
Enumerator
FONT_FAMILY_SERIF 

The font family is "serif".

FONT_FAMILY_SANS_SERIF 

The font family is "sans-serif".

FONT_FAMILY_MONOSPACE 

The font family is "monospace".

FONT_FAMILY_INVALID 

Invalid FontFamily value.

◆ FontStyle_t

Enumeration of values permitted as the value of the "style" attribute on Font objects.

See also
Font::getStyle()
Font::setStyle()
Enumerator
FONT_STYLE_UNSET 

The font style is unset.

FONT_STYLE_NORMAL 

The font style is "normal".

FONT_STYLE_ITALIC 

The font style is "italic".

FONT_STYLE_INVALID 

Invalid FontStyle value.

◆ FontWeight_t

Enumeration of values permitted as the value of the "weight" attribute on Font objects.

See also
Font::getWeight()
Font::setWeight()
Enumerator
FONT_WEIGHT_UNSET 

The font weight is unset.

FONT_WEIGHT_NORMAL 

The font weight is "normal".

FONT_WEIGHT_BOLD 

The font weight is "bold".

FONT_WEIGHT_INVALID 

Invalid FontWeight value.

◆ GradientSpreadMethod_t

Enumeration of values permitted as the value of the "spreadmethod" attribute on Gradient objects.

See also
GradientBase::getSpreadMethod()
GradientBase::setSpreadMethod()
Enumerator
GRADIENT_SPREADMETHOD_PAD 

The gradient spreadmethod is "pad".

GRADIENT_SPREADMETHOD_REFLECT 

The gradient spreadmethod is "reflect".

GRADIENT_SPREADMETHOD_REPEAT 

The gradient spreadmethod is "repeat".

GRADIENT_SPREAD_METHOD_INVALID 

Invalid GradientSpreadMethod value.

◆ HTextAnchor_t

Enumeration of values permitted as the value of the "text-anchor" attribute on various objects.

See also
DefaultValues::getTextAnchor()
DefaultValues::setTextAnchor()
RenderGroup::getTextAnchor()
RenderGroup::setTextAnchor()
Text::getTextAnchor()
Text::setTextAnchor()
Enumerator
H_TEXTANCHOR_UNSET 

The horizontal textanchor is "unset".

H_TEXTANCHOR_START 

The horizontal textanchor is "start".

H_TEXTANCHOR_MIDDLE 

The horizontal textanchor is "middle".

H_TEXTANCHOR_END 

The horizontal textanchor is "end".

H_TEXTANCHOR_INVALID 

Invalid HTextAnchor value.

◆ SBMLRenderTypeCode_t

SBMLRenderTypeCode_t Enumeration of possible types in the libSBML “render” package implementation.

LibSBML attaches an identifying code to every kind of SBML object. These are integer constants known as SBML type codes. The names of all the codes begin with the characters SBML_. The set of possible type codes for core elements is defined in the enumeration SBMLTypeCode_t, and in addition, libSBML plug-ins for SBML Level 3 packages define their own extra enumerations of type codes (e.g., SBMLLayoutTypeCode_t for the Level 3 Layout package). Note that different Level 3 package plug-ins may use overlapping type codes; to identify the package to which a given object belongs, call the SBase::getPackageName() method on the object.

The exception to this is lists: all SBML-style list elements have the type SBML_LIST_OF, regardless of what package they are from.

Here follow some additional general information about libSBML type codes:
  • The codes are the possible return values (integers) for the following functions: (Compatibility note: in libSBML 5, the type of return values of these functions changed from an enumeration to an integer for extensibility in the face of different programming languages.)
  • Each package extension must define similar sets of values for each SBase subclass (e.g. SBMLLayoutTypeCode_t for the SBML Level 3 Layout extension, SBMLFbcTypeCode_t for the SBML Level 3 Flux Balance Constraints extension, etc.).
  • The value of each package-specific type code can be duplicated between those of different packages. (This is necessary because the development of libSBML extensions for different SBML packages may be undertaken by different developers at different times; requiring the developers to coordinate their use of type codes would be nettlesome and probably doomed to failure.)
  • To distinguish between the type codes of different packages, both the return value of SBase::getTypeCode() and SBase::getPackageName() must be checked. This is particularly important for functions that take an SBML type code as an argument, such as SBase::getAncestorOfType(), which by default assumes you are handing it a core type, and will return NULL if the value you give it is actually from a package.

The following example code illustrates the combined use of SBase::getPackageName() and SBase::getTypeCode():

void example (const SBase *sb)
{
cons std::string pkgName = sb->getPackageName();
if (pkgName == "core")
{
switch (sb->getTypeCode())
{
case SBML_MODEL:
....
break;
....
}
}
else if (pkgName == "layout")
{
switch (sb->getTypeCode())
{
....
break;
....
}
}
...
}
@ SBML_LAYOUT_REACTIONGLYPH
Definition: LayoutExtension.h:446
@ SBML_LAYOUT_LAYOUT
Definition: LayoutExtension.h:443
@ SBML_MODEL
Definition: SBMLTypeCodes.h:75
@ SBML_REACTION
Definition: SBMLTypeCodes.h:77
Definition: SBase.h:191
const std::string & getPackageName() const
Returns the name of the SBML Level&#160;3 package in which this element is defined.
Definition: SBase.cpp:3476
virtual int getTypeCode() const
Returns the libSBML type code for this object.
Definition: SBase.cpp:3500
Enumerator
SBML_RENDER_COLORDEFINITION 

ColorDefinition

SBML_RENDER_ELLIPSE 

Ellipse

SBML_RENDER_GLOBALRENDERINFORMATION 

GlobalRenderInformation

SBML_RENDER_GLOBALSTYLE 

GlobalStyle

SBML_RENDER_GRADIENTDEFINITION 

GradientBase

SBML_RENDER_GRADIENT_STOP 

GradientStop

SBML_RENDER_GROUP 

RenderGroup

SBML_RENDER_IMAGE 

Image

SBML_RENDER_LINEENDING 

LineEnding

SBML_RENDER_LINEARGRADIENT 

LinearGradient

SBML_RENDER_LINESEGMENT 

LineSegment

SBML_RENDER_LISTOFGLOBALSTYLES 

ListOfGlobalStyles

SBML_RENDER_LISTOFLOCALSTYLES 

ListOfLocalStyles

SBML_RENDER_LOCALRENDERINFORMATION 

LocalRenderInformation

SBML_RENDER_LOCALSTYLE 

LocalStyle

SBML_RENDER_POLYGON 

Polygon

SBML_RENDER_RADIALGRADIENT 

RadialGradient

SBML_RENDER_RECTANGLE 

Rectangle

SBML_RENDER_RELABSVECTOR 

RelAbsVector

SBML_RENDER_CUBICBEZIER 

CubicBezier

SBML_RENDER_CURVE 

RenderCurve

SBML_RENDER_POINT 

RenderPoint

SBML_RENDER_TEXT 

Text

SBML_RENDER_TRANSFORMATION2D 

Transformation2D

SBML_RENDER_DEFAULTS 

DefaultValues

SBML_RENDER_TRANSFORMATION 

Transformation

SBML_RENDER_GRAPHICALPRIMITIVE1D 

GraphicalPrimitive1D

SBML_RENDER_GRAPHICALPRIMITIVE2D 

GraphicalPrimitive2D

SBML_RENDER_STYLE_BASE 

Style

SBML_RENDER_RENDERINFORMATION_BASE 

RenderInformationBase

◆ VTextAnchor_t

Enumeration of values permitted as the value of the "vtext-anchor" attribute on various objects.

See also
DefaultValues::getVTextAnchor()
DefaultValues::setVTextAnchor()
RenderGroup::getVTextAnchor()
RenderGroup::setVTextAnchor()
Text::getVTextAnchor()
Text::setVTextAnchor()
Enumerator
V_TEXTANCHOR_UNSET 

The vertical text anchor is "unset".

V_TEXTANCHOR_TOP 

The vertical text anchor is "top".

V_TEXTANCHOR_MIDDLE 

The vertical text anchor is "middle".

V_TEXTANCHOR_BOTTOM 

The vertical text anchor is "bottom".

V_TEXTANCHOR_BASELINE 

The vertical text anchor is "baseline".

V_TEXTANCHOR_INVALID 

Invalid VTextAnchor value.