From: Jean-Philippe Bruyère Date: Wed, 9 Mar 2022 21:09:36 +0000 (+0100) Subject: Clean gh-pages branch X-Git-Url: https://git.osiis.dedyn.io/?a=commitdiff_plain;h=a6e78cc2ce522f2d8979d8807d860834071c4cdd;p=jp%2Fvkvg.git Clean gh-pages branch --- a6e78cc2ce522f2d8979d8807d860834071c4cdd diff --git a/annotated.html b/annotated.html new file mode 100644 index 0000000..7383eab --- /dev/null +++ b/annotated.html @@ -0,0 +1,77 @@ + + + + + + + + + VKVG: Data Structures + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+ + + + + + +
 Cvkvg_color_t
 Cvkvg_font_extents_tFont metrics
 Cvkvg_glyph_info_tGlyphs position in a VkvgText
 Cvkvg_matrix_tVkvg matrix structure
 Cvkvg_text_extents_tText metrics
+
+
+ + + + + diff --git a/bc_s.png b/bc_s.png new file mode 100644 index 0000000..ddff304 Binary files /dev/null and b/bc_s.png differ diff --git a/bdwn.png b/bdwn.png new file mode 100644 index 0000000..5023422 Binary files /dev/null and b/bdwn.png differ diff --git a/classes.html b/classes.html new file mode 100644 index 0000000..46efde6 --- /dev/null +++ b/classes.html @@ -0,0 +1,74 @@ + + + + + + + + + VKVG: Data Structure Index + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Data Structure Index
+
+
+ + +
+ + + + + diff --git a/closed.png b/closed.png new file mode 100644 index 0000000..999d881 Binary files /dev/null and b/closed.png differ diff --git a/custom.css b/custom.css new file mode 100644 index 0000000..2c4b45c --- /dev/null +++ b/custom.css @@ -0,0 +1,1922 @@ +/* The standard CSS for doxygen 1.9.1 */ + +body, +table, +div, +p, +dl { + font: 400 14px/22px Roboto, sans-serif; +} + +p.reference, +p.definition { + font: 400 14px/22px Roboto, sans-serif; +} + +html { + height: 97%; +} + +body { + background-color: #DDD; + color: black; + margin: auto; + max-width: 850px; + border: thin solid black; + background-color: white; +} + +div.PageDoc {} + +div.contents { + margin: auto; + padding: 10px; + /*width: 80%;*/ +} + +@import url(https://fonts.googleapis.com/css?family=Open+Sans); +body { + background: #f2f2f2; + font-family: 'Open Sans', sans-serif; +} + +.search { + width: 100%; + position: relative; + display: flex; +} + +.searchTerm { + width: 100%; + border: 3px solid #00B4CC; + border-right: none; + padding: 5px; + height: 20px; + border-radius: 5px 0 0 5px; + outline: none; + color: #9DBFAF; +} + +.searchTerm:focus { + color: #00B4CC; +} + +.searchButton { + width: 40px; + height: 36px; + border: 1px solid #00B4CC; + background: #00B4CC; + text-align: center; + color: #fff; + border-radius: 0 5px 5px 0; + cursor: pointer; + font-size: 20px; +} + + +/*Resize the wrap to see the search bar change!*/ + +.wrap { + width: 30%; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} + + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto, sans-serif; + font-size: 150%; + font-weight: bold; + margin: 0 auto; + background-color: #ccc; + color: #444; + padding: 10px; + /*border: thin solid #2c2c2c;*/ +} + +h2.groupheader { + font-size: 110%; + font-weight: normal; + margin-top: 1.75em; + color: #AAA; + /*padding-top: 8px; + padding-bottom: 4px;*/ + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, +h2.glow, +h3.glow, +h4.glow, +h5.glow, +h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +ul.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; + column-count: 3; +} + +p.startli, +p.startdd { + margin-top: 2px; +} + +th p.starttd, +th p.intertd, +th p.endtd { + font-size: 100%; + font-weight: 700; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +p.interli {} + +p.interdd {} + +p.intertd {} + + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.navtab { + padding-right: 15px; + text-align: left; + line-height: 120%; +} + +div.navtab table { + border-spacing: 0; +} + +td.navtab { + padding-right: 6px; + padding-left: 6px; +} + +td.navtabHL { + padding: 6px; +} + +td.navtabHL a, +td.navtabHL a:visited { + color: #ddd; + background-color: rgb(119, 119, 172); + padding: 6px; +} + +a.navtab {} + +div.qindex { + text-align: center; + width: 100%; + line-height: 140%; + font-size: 130%; + color: #A0A0A0; +} + +dt.alphachar { + font-size: 180%; + font-weight: bold; +} + +.alphachar a { + color: black; +} + +.alphachar a:hover, +.alphachar a:visited { + text-decoration: none; +} + +.classindex dl { + padding: 25px; + column-count: 1 +} + +.classindex dd { + display: inline-block; + margin-left: 50px; + width: 90%; + line-height: 1.15em; +} + +.classindex dl.odd { + background-color: #0000fd; +} + +@media(min-width: 1120px) { + .classindex dl { + column-count: 2 + } +} + +@media(min-width: 1320px) { + .classindex dl { + column-count: 3 + } +} + + +/* @group Link Styling */ + +a { + color: #595B6D; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #676A7F; +} + +a:hover { + text-decoration: underline; +} + +.contents a.qindexHL:visited { + color: #FFFFFF; +} + +a.el { + font-weight: bold; +} + +a.elRef {} + +a.code, +a.code:visited, +a.line, +a.line:visited { + color: #676A7F; +} + +a.codeRef, +a.codeRef:visited, +a.lineRef, +a.lineRef:visited { + color: #676A7F; +} + + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +ul { + overflow: hidden; + /*Fixed: list item bullets overlap floating elements*/ +} + +#side-nav ul { + overflow: visible; + /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ +} + +#main-nav ul { + overflow: visible; + /* reset ul rule for the navigation bar drop down lists */ +} + +.fragment { + text-align: left; + direction: ltr; + overflow-x: auto; + /*Fixed: fragment lines overlap floating elements*/ + overflow-y: hidden; +} + +pre.fragment { + border: 1px solid #D0D1D9; + background-color: #FCFCFC; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 0 0 1px 0; + /*Fixed: last line underline overlap border*/ + margin: 4px 8px 4px 2px; + background-color: #FCFCFC; + border: 1px solid #D0D1D9; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; + /* Moz */ + white-space: -pre-wrap; + /* Opera 4-6 */ + white-space: -o-pre-wrap; + /* Opera 7 */ + white-space: pre-wrap; + /* CSS3 */ + word-wrap: break-word; + /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content: "\000A"; + white-space: pre; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} + +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +.lineno { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +div.ah, +span.ah { + background-color: black; + font-weight: bold; + color: #FFFFFF; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000), color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +td.indexkey { + background-color: #EFF0F2; + font-weight: bold; + border: 1px solid #D0D1D9; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EFF0F2; + border: 1px solid #D0D1D9; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #F1F1F4; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp {} + +img.formulaInl, +img.inline { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F8F8F9; + border-left: 2px solid #B0B1BE; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +blockquote.DocNodeRTL { + border-left: 0; + border-right: 2px solid #B0B1BE; + margin: 0 4px 0 24px; + padding: 0 16px 0 12px; +} + + +/* @end */ + +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; +} + +th.dirtab { + font-weight: bold; +} + +hr { + height: 0px; + border: none; +} + +hr.footer { + height: 1px; +} + + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 10px; +} + +.memberdecls td, +.fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, +.fieldtable tr.glow { + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, +.mdescRight, +.memItemLeft, +.memItemRight, +.memTemplItemLeft, +.memTemplItemRight, +.memTemplParams { + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, +.mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, +.memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight, +.memTemplItemRight { + width: 100%; +} + +.memTemplParams { + white-space: nowrap; + font-size: 80%; +} + + +/* @end */ + + +/* @group Member Details */ + + +/* Styles for detailed member documentation */ + +.memtitle { + padding: 0px; + font-weight: 300; + float: left; + display: none; +} + +.permalink { + font-size: 65%; + display: inline-block; + vertical-align: middle; +} + +.memtemplate { + font-size: 80%; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: 400; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, +dl.reflist dt { + padding: 16px 0px 16px 0px; + color: #000ba5; + font-weight: bold; + background-color: #e6e6e6; + /* opera specific markup */ +} + +.overload { + font-family: "courier new", courier, monospace; + font-size: 65%; +} + +.memdoc, +dl.reflist dd { + padding: 6px 10px 2px 10px; + width: 90%; + margin: auto; +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} + +.paramname em { + font-style: normal; +} + +.paramname code { + line-height: 14px; +} + +.params, +.retval, +.exception, +.tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, +.retval .paramname, +.tparams .paramname, +.exception .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype, +.tparams .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir, +.tparams .paramdir { + font-family: "courier new", courier, monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #8E90A3; + border-top: 1px solid #76788F; + border-left: 1px solid #76788F; + border-right: 1px solid #D0D1D9; + border-bottom: 1px solid #D0D1D9; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + +/* @end */ + + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #B0B1BE; + border-bottom: 1px solid #B0B1BE; + width: 100%; +} + +.directory table { + border-collapse: collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline: none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0, 0, 0, 0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F8F8F9; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #595B6D; +} + +.arrow { + color: #B0B1BE; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #8E90A3; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image: url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align: top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image: url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align: top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image: url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align: top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto, sans-serif; +} + + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #3E3F4C; +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse: collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, +table.doxtable th { + border: 1px solid #424351; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #515363; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #B9BBC6; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, +.fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, +.fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #B9BBC6; + border-bottom: 1px solid #B9BBC6; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #B9BBC6; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image: url('nav_f.png'); + background-repeat: repeat-x; + background-color: #E8E8EC; + font-size: 90%; + color: #363742; + padding-bottom: 4px; + padding-top: 5px; + text-align: left; + font-weight: 400; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #B9BBC6; +} + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul { + font-size: 11px; + background-image: url('tab_b.png'); + background-repeat: repeat-x; + background-position: 0 -5px; + height: 30px; + line-height: 30px; + color: #A1A3B3; + border: solid 1px #CECFD7; + overflow: hidden; + margin: 0px; + padding: 0px; +} + +.navpath li { + list-style-type: none; + float: left; + padding-left: 10px; + padding-right: 15px; + background-image: url('bc_s.png'); + background-repeat: no-repeat; + background-position: right; + color: #4F5161; +} + +.navpath li.navelem a { + height: 32px; + display: block; + text-decoration: none; + outline: none; + color: #252629; + font-family: 'Lucida Grande', Geneva, Helvetica, Arial, sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover { + color: #86899D; +} + +.navpath li.footer { + list-style-type: none; + float: right; + padding-left: 10px; + padding-right: 15px; + background-image: none; + background-repeat: no-repeat; + background-position: right; + color: #4F5161; + font-size: 8pt; +} + +div.summary { + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a { + white-space: nowrap; +} + +table.classindex { + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups { + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a { + white-space: nowrap; +} + +div.header { + margin: 0px; +} + +div.headertitle { + /*padding: 5px 5px 5px 10px;*/ +} + +.PageDocRTL-title div.headertitle { + text-align: right; + direction: rtl; +} + +dl { + padding: 0 0 0 0; +} + + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ + +dl.section { + margin-left: 0px; + padding-left: 0px; +} + +dl.section.DocNodeRTL { + margin-right: 0px; + padding-right: 0px; +} + +dl.note { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #D0C000; +} + +dl.note.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #D0C000; +} + +dl.warning, +dl.attention { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #FF0000; +} + +dl.warning.DocNodeRTL, +dl.attention.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #FF0000; +} + +dl.pre, +dl.post, +dl.invariant { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00D000; +} + +dl.pre.DocNodeRTL, +dl.post.DocNodeRTL, +dl.invariant.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00D000; +} + +dl.deprecated { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #505050; +} + +dl.deprecated.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #505050; +} + +dl.todo { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00C0E0; +} + +dl.todo.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00C0E0; +} + +dl.test { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #3030E0; +} + +dl.test.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #3030E0; +} + +dl.bug { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #C08050; +} + +dl.bug.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + +#projectlogo { + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img { + width: 90px; + height: 90px; + vertical-align: middle; + background-color: rgba(66, 66, 66, 0.301); + border-radius: 10%; +} + +#projectalign { + vertical-align: middle; + text-align: center; +} + +#projectname { + font: 300% Courier, Tahoma, Arial, sans-serif; + /*font-weight: bold;*/ + margin: 0px; + padding-left: 20px; + color: white; +} + +#projectbrief { + font: 120% Times, Tahoma, Arial, sans-serif; + margin: 0px; + padding: 0px; + color: white; +} + +#projectnumber { + font: 50% Tahoma, Arial, sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea { + margin: auto; + border-bottom: 1px solid #313131; + background: rgb(54, 54, 54); + background: -moz-linear-gradient(0deg, rgba(54, 54, 54, 1) 0%, rgba(81, 130, 255, 1) 100%); + background: -webkit-linear-gradient(0deg, rgba(54, 54, 54, 1) 0%, rgba(81, 130, 255, 1) 100%); + background: linear-gradient(0deg, rgba(54, 54, 54, 1) 0%, rgba(81, 130, 255, 1) 100%); + filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#363636", endColorstr="#5182ff", GradientType=1); + padding: 10px; +} + +.image { + text-align: center; +} + +.dotgraph { + text-align: center; +} + +.mscgraph { + text-align: center; +} + +.plantumlgraph { + text-align: center; +} + +.diagraph { + text-align: center; +} + +.caption { + font-weight: bold; +} + +div.zoom { + border: 1px solid #A6A8B6; +} + +dl.citelist { + margin-bottom: 50px; +} + +dl.citelist dt { + color: #4A4C5B; + float: left; + font-weight: bold; + margin-right: 10px; + padding: 5px; + text-align: right; + width: 52px; +} + +dl.citelist dd { + margin: 2px 0 2px 72px; + padding: 5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F6F7F8; + border: 1px solid #E0E0E5; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +.PageDocRTL-title div.toc { + float: left !important; + text-align: right; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana, DejaVu Sans, Geneva, sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +.PageDocRTL-title div.toc li { + background-position-x: right !important; + padding-left: 0 !important; + padding-right: 10px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial, FreeSans, sans-serif; + color: #676A7F; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +span.emoji { + /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html + * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort; + */ +} + +.PageDocRTL-title div.toc li.level1 { + margin-left: 0 !important; + margin-right: 0; +} + +.PageDocRTL-title div.toc li.level2 { + margin-left: 0 !important; + margin-right: 15px; +} + +.PageDocRTL-title div.toc li.level3 { + margin-left: 0 !important; + margin-right: 30px; +} + +.PageDocRTL-title div.toc li.level4 { + margin-left: 0 !important; + margin-right: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 16px; + margin-bottom: 12px; + margin-left: auto; + margin-right: auto; + background-color: rgb(151, 151, 170); + color: whitesmoke; + padding: 6px; +} + + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto, sans-serif; +} + +#powerTip:before, +#powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, +#powerTip.n:before, +#powerTip.s:after, +#powerTip.s:before, +#powerTip.w:after, +#powerTip.w:before, +#powerTip.e:after, +#powerTip.e:before, +#powerTip.ne:after, +#powerTip.ne:before, +#powerTip.se:after, +#powerTip.se:before, +#powerTip.nw:after, +#powerTip.nw:before, +#powerTip.sw:after, +#powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, +#powerTip.s:after, +#powerTip.w:after, +#powerTip.e:after, +#powerTip.nw:after, +#powerTip.ne:after, +#powerTip.sw:after, +#powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, +#powerTip.s:before, +#powerTip.w:before, +#powerTip.e:before, +#powerTip.nw:before, +#powerTip.ne:before, +#powerTip.sw:before, +#powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, +#powerTip.n:before, +#powerTip.ne:after, +#powerTip.ne:before, +#powerTip.nw:after, +#powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, +#powerTip.ne:after, +#powerTip.nw:after { + border-top-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.n:after, +#powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, +#powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, +#powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, +#powerTip.s:before, +#powerTip.se:after, +#powerTip.se:before, +#powerTip.sw:after, +#powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, +#powerTip.se:after, +#powerTip.sw:after { + border-bottom-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, +#powerTip.se:before, +#powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, +#powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, +#powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, +#powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, +#powerTip.e:before { + left: 100%; +} + +#powerTip.e:after { + border-left-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} + +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, +#powerTip.w:before { + right: 100%; +} + +#powerTip.w:after { + border-right-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} + +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print { + #top { + display: none; + } + #side-nav { + display: none; + } + #nav-path { + display: none; + } + body { + overflow: visible; + } + h1, + h2, + h3, + h4, + h5, + h6 { + page-break-after: avoid; + } + .summary { + display: none; + } + .memitem { + page-break-inside: avoid; + } + #doc-content { + margin-left: 0 !important; + height: auto !important; + width: auto !important; + overflow: inherit; + display: inline; + } +} + + +/* @group Markdown */ + +table.markdownTable { + border-collapse: collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.markdownTable td, +table.markdownTable th { + border: 1px solid #424351; + padding: 3px 7px 2px; +} + +table.markdownTable tr {} + +th.markdownTableHeadLeft, +th.markdownTableHeadRight, +th.markdownTableHeadCenter, +th.markdownTableHeadNone { + background-color: #515363; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +th.markdownTableHeadLeft, +td.markdownTableBodyLeft { + text-align: left +} + +th.markdownTableHeadRight, +td.markdownTableBodyRight { + text-align: right +} + +th.markdownTableHeadCenter, +td.markdownTableBodyCenter { + text-align: center +} + +.DocNodeRTL { + text-align: right; + direction: rtl; +} + +.DocNodeLTR { + text-align: left; + direction: ltr; +} + +table.DocNodeRTL { + width: auto; + margin-right: 0; + margin-left: auto; +} + +table.DocNodeLTR { + width: auto; + margin-right: auto; + margin-left: 0; +} + +tt, +code, +kbd, +samp { + display: inline-block; + direction: ltr; +} + + +/* @end */ + +u { + text-decoration: underline; +} diff --git a/dir_d44c64559bbebec7f509842c48db8b23.html b/dir_d44c64559bbebec7f509842c48db8b23.html new file mode 100644 index 0000000..b4970ec --- /dev/null +++ b/dir_d44c64559bbebec7f509842c48db8b23.html @@ -0,0 +1,81 @@ + + + + + + + + + VKVG: /mnt/devel/vkvg-master/include Directory Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+
+
include Directory Reference
+
+
+ + + + + + + +

+Files

file  vkvg-svg.h [code]
 
file  vkvg.h [code]
 The header of the VKVG library.
 
+
+ + + + + diff --git a/doc.png b/doc.png new file mode 100644 index 0000000..bbcf197 Binary files /dev/null and b/doc.png differ diff --git a/doxygen.svg b/doxygen.svg new file mode 100644 index 0000000..2e8c40f --- /dev/null +++ b/doxygen.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dynsections.js b/dynsections.js new file mode 100644 index 0000000..88f2c27 --- /dev/null +++ b/dynsections.js @@ -0,0 +1,128 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + + + + VKVG: File List + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all files with brief descriptions:
+
[detail level 12]
+ + + +
  include
 vkvg-svg.h
 vkvg.hThe header of the VKVG library
+
+
+ + + + + diff --git a/folderclosed.png b/folderclosed.png new file mode 100644 index 0000000..2512941 Binary files /dev/null and b/folderclosed.png differ diff --git a/folderopen.png b/folderopen.png new file mode 100644 index 0000000..5dbd9aa Binary files /dev/null and b/folderopen.png differ diff --git a/functions.html b/functions.html new file mode 100644 index 0000000..f10093b --- /dev/null +++ b/functions.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: Data Fields + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+
+ + + + + diff --git a/functions_vars.html b/functions_vars.html new file mode 100644 index 0000000..eb79155 --- /dev/null +++ b/functions_vars.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: Data Fields - Variables + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+ + + + + diff --git a/globals.html b/globals.html new file mode 100644 index 0000000..85548fe --- /dev/null +++ b/globals.html @@ -0,0 +1,779 @@ + + + + + + + + + VKVG: Globals + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
+ +

- v -

    +
  • vkvg_arc() +: vkvg.h +
  • +
  • vkvg_arc_negative() +: vkvg.h +
  • +
  • vkvg_clear() +: vkvg.h +
  • +
  • vkvg_clip() +: vkvg.h +
  • +
  • vkvg_clip_preserve() +: vkvg.h +
  • +
  • vkvg_close_path() +: vkvg.h +
  • +
  • vkvg_create() +: vkvg.h +
  • +
  • vkvg_curve_to() +: vkvg.h +
  • +
  • vkvg_destroy() +: vkvg.h +
  • +
  • vkvg_device_create() +: vkvg.h +
  • +
  • vkvg_device_create_from_vk() +: vkvg.h +
  • +
  • vkvg_device_create_from_vk_multisample() +: vkvg.h +
  • +
  • vkvg_device_destroy() +: vkvg.h +
  • +
  • vkvg_device_get_dpy() +: vkvg.h +
  • +
  • vkvg_device_get_reference_count() +: vkvg.h +
  • +
  • vkvg_device_reference() +: vkvg.h +
  • +
  • vkvg_device_set_dpy() +: vkvg.h +
  • +
  • vkvg_device_set_thread_aware() +: vkvg.h +
  • +
  • vkvg_device_status() +: vkvg.h +
  • +
  • vkvg_direction_t +: vkvg.h +
  • +
  • vkvg_ellipse() +: vkvg.h +
  • +
  • vkvg_elliptic_arc_to() +: vkvg.h +
  • +
  • VKVG_EXTEND_NONE +: vkvg.h +
  • +
  • VKVG_EXTEND_PAD +: vkvg.h +
  • +
  • VKVG_EXTEND_REFLECT +: vkvg.h +
  • +
  • VKVG_EXTEND_REPEAT +: vkvg.h +
  • +
  • vkvg_extend_t +: vkvg.h +
  • +
  • vkvg_fill() +: vkvg.h +
  • +
  • vkvg_fill_preserve() +: vkvg.h +
  • +
  • VKVG_FILL_RULE_EVEN_ODD +: vkvg.h +
  • +
  • VKVG_FILL_RULE_NON_ZERO +: vkvg.h +
  • +
  • vkvg_fill_rule_t +: vkvg.h +
  • +
  • VKVG_FILTER_BEST +: vkvg.h +
  • +
  • VKVG_FILTER_BILINEAR +: vkvg.h +
  • +
  • VKVG_FILTER_FAST +: vkvg.h +
  • +
  • VKVG_FILTER_GAUSSIAN +: vkvg.h +
  • +
  • VKVG_FILTER_GOOD +: vkvg.h +
  • +
  • VKVG_FILTER_NEAREST +: vkvg.h +
  • +
  • vkvg_filter_t +: vkvg.h +
  • +
  • vkvg_flush() +: vkvg.h +
  • +
  • vkvg_font_extents() +: vkvg.h +
  • +
  • VKVG_FORMAT_A1 +: vkvg.h +
  • +
  • VKVG_FORMAT_A8 +: vkvg.h +
  • +
  • VKVG_FORMAT_ARGB32 +: vkvg.h +
  • +
  • VKVG_FORMAT_RGB24 +: vkvg.h +
  • +
  • vkvg_format_t +: vkvg.h +
  • +
  • vkvg_get_current_point() +: vkvg.h +
  • +
  • vkvg_get_dash() +: vkvg.h +
  • +
  • vkvg_get_device_requirements() +: vkvg.h +
  • +
  • vkvg_get_fill_rule() +: vkvg.h +
  • +
  • vkvg_get_line_cap() +: vkvg.h +
  • +
  • vkvg_get_line_join() +: vkvg.h +
  • +
  • vkvg_get_line_width() +: vkvg.h +
  • +
  • vkvg_get_matrix() +: vkvg.h +
  • +
  • vkvg_get_miter_limit() +: vkvg.h +
  • +
  • vkvg_get_opacity() +: vkvg.h +
  • +
  • vkvg_get_operator() +: vkvg.h +
  • +
  • vkvg_get_reference_count() +: vkvg.h +
  • +
  • vkvg_get_required_device_extensions() +: vkvg.h +
  • +
  • vkvg_get_required_instance_extensions() +: vkvg.h +
  • +
  • vkvg_get_source() +: vkvg.h +
  • +
  • vkvg_get_target() +: vkvg.h +
  • +
  • vkvg_has_current_point() +: vkvg.h +
  • +
  • VKVG_HORIZONTAL +: vkvg.h +
  • +
  • vkvg_identity_matrix() +: vkvg.h +
  • +
  • VKVG_IDENTITY_MATRIX +: vkvg.h +
  • +
  • VKVG_LINE_CAP_BUTT +: vkvg.h +
  • +
  • VKVG_LINE_CAP_ROUND +: vkvg.h +
  • +
  • VKVG_LINE_CAP_SQUARE +: vkvg.h +
  • +
  • vkvg_line_cap_t +: vkvg.h +
  • +
  • VKVG_LINE_JOIN_BEVEL +: vkvg.h +
  • +
  • VKVG_LINE_JOIN_MITER +: vkvg.h +
  • +
  • VKVG_LINE_JOIN_ROUND +: vkvg.h +
  • +
  • vkvg_line_join_t +: vkvg.h +
  • +
  • vkvg_line_to() +: vkvg.h +
  • +
  • vkvg_load_font_from_memory() +: vkvg.h +
  • +
  • vkvg_load_font_from_path() +: vkvg.h +
  • +
  • VKVG_LOG_DBG_ARRAYS +: vkvg.h +
  • +
  • VKVG_LOG_DEBUG +: vkvg.h +
  • +
  • VKVG_LOG_ERR +: vkvg.h +
  • +
  • VKVG_LOG_FULL +: vkvg.h +
  • +
  • VKVG_LOG_INFO +: vkvg.h +
  • +
  • VKVG_LOG_INFO_CMD +: vkvg.h +
  • +
  • VKVG_LOG_INFO_IBO +: vkvg.h +
  • +
  • VKVG_LOG_INFO_PATH +: vkvg.h +
  • +
  • VKVG_LOG_INFO_PTS +: vkvg.h +
  • +
  • VKVG_LOG_INFO_VAO +: vkvg.h +
  • +
  • VKVG_LOG_INFO_VBO +: vkvg.h +
  • +
  • VKVG_LOG_STROKE +: vkvg.h +
  • +
  • vkvg_matrix_get_scale() +: vkvg.h +
  • +
  • vkvg_matrix_init() +: vkvg.h +
  • +
  • vkvg_matrix_init_identity() +: vkvg.h +
  • +
  • vkvg_matrix_init_rotate() +: vkvg.h +
  • +
  • vkvg_matrix_init_scale() +: vkvg.h +
  • +
  • vkvg_matrix_init_translate() +: vkvg.h +
  • +
  • vkvg_matrix_invert() +: vkvg.h +
  • +
  • vkvg_matrix_multiply() +: vkvg.h +
  • +
  • vkvg_matrix_rotate() +: vkvg.h +
  • +
  • vkvg_matrix_scale() +: vkvg.h +
  • +
  • vkvg_matrix_transform_distance() +: vkvg.h +
  • +
  • vkvg_matrix_transform_point() +: vkvg.h +
  • +
  • vkvg_matrix_translate() +: vkvg.h +
  • +
  • vkvg_move_to() +: vkvg.h +
  • +
  • vkvg_multisample_surface_resolve() +: vkvg.h +
  • +
  • vkvg_new_path() +: vkvg.h +
  • +
  • vkvg_new_sub_path() +: vkvg.h +
  • +
  • VKVG_OPERATOR_CLEAR +: vkvg.h +
  • +
  • VKVG_OPERATOR_DIFFERENCE +: vkvg.h +
  • +
  • VKVG_OPERATOR_MAX +: vkvg.h +
  • +
  • VKVG_OPERATOR_OVER +: vkvg.h +
  • +
  • VKVG_OPERATOR_SOURCE +: vkvg.h +
  • +
  • vkvg_operator_t +: vkvg.h +
  • +
  • vkvg_paint() +: vkvg.h +
  • +
  • vkvg_path_extents() +: vkvg.h +
  • +
  • vkvg_pattern_add_color_stop() +: vkvg.h +
  • +
  • vkvg_pattern_create_for_surface() +: vkvg.h +
  • +
  • vkvg_pattern_create_linear() +: vkvg.h +
  • +
  • vkvg_pattern_create_radial() +: vkvg.h +
  • +
  • vkvg_pattern_destroy() +: vkvg.h +
  • +
  • vkvg_pattern_edit_linear() +: vkvg.h +
  • +
  • vkvg_pattern_edit_radial() +: vkvg.h +
  • +
  • vkvg_pattern_get_color_stop_count() +: vkvg.h +
  • +
  • vkvg_pattern_get_color_stop_rgba() +: vkvg.h +
  • +
  • vkvg_pattern_get_extend() +: vkvg.h +
  • +
  • vkvg_pattern_get_filter() +: vkvg.h +
  • +
  • vkvg_pattern_get_linear_points() +: vkvg.h +
  • +
  • vkvg_pattern_get_matrix() +: vkvg.h +
  • +
  • vkvg_pattern_get_reference_count() +: vkvg.h +
  • +
  • vkvg_pattern_get_type() +: vkvg.h +
  • +
  • vkvg_pattern_reference() +: vkvg.h +
  • +
  • vkvg_pattern_set_extend() +: vkvg.h +
  • +
  • vkvg_pattern_set_filter() +: vkvg.h +
  • +
  • vkvg_pattern_set_matrix() +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_LINEAR +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_MESH +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_RADIAL +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_RASTER_SOURCE +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_SOLID +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_SURFACE +: vkvg.h +
  • +
  • vkvg_pattern_type_t +: vkvg.h +
  • +
  • vkvg_public +: vkvg.h +
  • +
  • vkvg_quadratic_to() +: vkvg.h +
  • +
  • vkvg_rectangle() +: vkvg.h +
  • +
  • vkvg_reference() +: vkvg.h +
  • +
  • vkvg_rel_curve_to() +: vkvg.h +
  • +
  • vkvg_rel_elliptic_arc_to() +: vkvg.h +
  • +
  • vkvg_rel_line_to() +: vkvg.h +
  • +
  • vkvg_rel_move_to() +: vkvg.h +
  • +
  • vkvg_rel_quadratic_to() +: vkvg.h +
  • +
  • vkvg_reset_clip() +: vkvg.h +
  • +
  • vkvg_restore() +: vkvg.h +
  • +
  • vkvg_rotate() +: vkvg.h +
  • +
  • vkvg_rounded_rectangle() +: vkvg.h +
  • +
  • vkvg_rounded_rectangle2() +: vkvg.h +
  • +
  • vkvg_save() +: vkvg.h +
  • +
  • vkvg_scale() +: vkvg.h +
  • +
  • vkvg_select_font_face() +: vkvg.h +
  • +
  • vkvg_set_dash() +: vkvg.h +
  • +
  • vkvg_set_fill_rule() +: vkvg.h +
  • +
  • vkvg_set_font_size() +: vkvg.h +
  • +
  • vkvg_set_line_cap() +: vkvg.h +
  • +
  • vkvg_set_line_join() +: vkvg.h +
  • +
  • vkvg_set_line_width() +: vkvg.h +
  • +
  • vkvg_set_matrix() +: vkvg.h +
  • +
  • vkvg_set_miter_limit() +: vkvg.h +
  • +
  • vkvg_set_opacity() +: vkvg.h +
  • +
  • vkvg_set_operator() +: vkvg.h +
  • +
  • vkvg_set_source() +: vkvg.h +
  • +
  • vkvg_set_source_color() +: vkvg.h +
  • +
  • vkvg_set_source_color_name() +: vkvg.h +
  • +
  • vkvg_set_source_rgb() +: vkvg.h +
  • +
  • vkvg_set_source_rgba() +: vkvg.h +
  • +
  • vkvg_set_source_surface() +: vkvg.h +
  • +
  • vkvg_show_text() +: vkvg.h +
  • +
  • vkvg_show_text_run() +: vkvg.h +
  • +
  • vkvg_status() +: vkvg.h +
  • +
  • VKVG_STATUS_DEVICE_ERROR +: vkvg.h +
  • +
  • VKVG_STATUS_FILE_NOT_FOUND +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_DASH +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_FONT +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_FORMAT +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_IMAGE +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_INDEX +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_MATRIX +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_RECT +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_RESTORE +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_STATUS +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_SURFACE +: vkvg.h +
  • +
  • VKVG_STATUS_NO_CURRENT_POINT +: vkvg.h +
  • +
  • VKVG_STATUS_NO_MEMORY +: vkvg.h +
  • +
  • VKVG_STATUS_NULL_POINTER +: vkvg.h +
  • +
  • VKVG_STATUS_PATTERN_INVALID_GRADIENT +: vkvg.h +
  • +
  • VKVG_STATUS_PATTERN_TYPE_MISMATCH +: vkvg.h +
  • +
  • VKVG_STATUS_SUCCESS +: vkvg.h +
  • +
  • vkvg_status_t +: vkvg.h +
  • +
  • VKVG_STATUS_TIMEOUT +: vkvg.h +
  • +
  • vkvg_status_to_string() +: vkvg.h +
  • +
  • VKVG_STATUS_WRITE_ERROR +: vkvg.h +
  • +
  • vkvg_stroke() +: vkvg.h +
  • +
  • vkvg_stroke_preserve() +: vkvg.h +
  • +
  • vkvg_surface_clear() +: vkvg.h +
  • +
  • vkvg_surface_create() +: vkvg.h +
  • +
  • vkvg_surface_create_for_VkhImage() +: vkvg.h +
  • +
  • vkvg_surface_create_from_image() +: vkvg.h +
  • +
  • vkvg_surface_create_from_svg() +: vkvg-svg.h +
  • +
  • vkvg_surface_create_from_svg_fragment() +: vkvg-svg.h +
  • +
  • vkvg_surface_destroy() +: vkvg.h +
  • +
  • vkvg_surface_get_height() +: vkvg.h +
  • +
  • vkvg_surface_get_reference_count() +: vkvg.h +
  • +
  • vkvg_surface_get_vk_format() +: vkvg.h +
  • +
  • vkvg_surface_get_vk_image() +: vkvg.h +
  • +
  • vkvg_surface_get_width() +: vkvg.h +
  • +
  • vkvg_surface_reference() +: vkvg.h +
  • +
  • vkvg_surface_status() +: vkvg.h +
  • +
  • vkvg_surface_write_to_memory() +: vkvg.h +
  • +
  • vkvg_surface_write_to_png() +: vkvg.h +
  • +
  • vkvg_svg_destroy() +: vkvg-svg.h +
  • +
  • vkvg_svg_get_dimensions() +: vkvg-svg.h +
  • +
  • vkvg_svg_load() +: vkvg-svg.h +
  • +
  • vkvg_svg_load_fragment() +: vkvg-svg.h +
  • +
  • vkvg_svg_render() +: vkvg-svg.h +
  • +
  • vkvg_text_extents() +: vkvg.h +
  • +
  • vkvg_text_run_create() +: vkvg.h +
  • +
  • vkvg_text_run_create_with_length() +: vkvg.h +
  • +
  • vkvg_text_run_destroy() +: vkvg.h +
  • +
  • vkvg_text_run_get_extents() +: vkvg.h +
  • +
  • vkvg_text_run_get_glyph_count() +: vkvg.h +
  • +
  • vkvg_text_run_get_glyph_position() +: vkvg.h +
  • +
  • vkvg_transform() +: vkvg.h +
  • +
  • vkvg_translate() +: vkvg.h +
  • +
  • VKVG_VERTICAL +: vkvg.h +
  • +
  • VkvgContext +: vkvg.h +
  • +
  • VkvgDevice +: vkvg.h +
  • +
  • VkvgPattern +: vkvg.h +
  • +
  • VkvgSurface +: vkvg.h +
  • +
  • VkvgSvg +: vkvg-svg.h +
  • +
  • VkvgText +: vkvg.h +
  • +
+
+ + + + + diff --git a/globals_defs.html b/globals_defs.html new file mode 100644 index 0000000..a4a1500 --- /dev/null +++ b/globals_defs.html @@ -0,0 +1,108 @@ + + + + + + + + + VKVG: Globals + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+ + + + + diff --git a/globals_enum.html b/globals_enum.html new file mode 100644 index 0000000..9f7ef97 --- /dev/null +++ b/globals_enum.html @@ -0,0 +1,96 @@ + + + + + + + + + VKVG: Globals + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+ + + + + diff --git a/globals_eval.html b/globals_eval.html new file mode 100644 index 0000000..75b4fcc --- /dev/null +++ b/globals_eval.html @@ -0,0 +1,233 @@ + + + + + + + + + VKVG: Globals + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- v -

    +
  • VKVG_EXTEND_NONE +: vkvg.h +
  • +
  • VKVG_EXTEND_PAD +: vkvg.h +
  • +
  • VKVG_EXTEND_REFLECT +: vkvg.h +
  • +
  • VKVG_EXTEND_REPEAT +: vkvg.h +
  • +
  • VKVG_FILL_RULE_EVEN_ODD +: vkvg.h +
  • +
  • VKVG_FILL_RULE_NON_ZERO +: vkvg.h +
  • +
  • VKVG_FILTER_BEST +: vkvg.h +
  • +
  • VKVG_FILTER_BILINEAR +: vkvg.h +
  • +
  • VKVG_FILTER_FAST +: vkvg.h +
  • +
  • VKVG_FILTER_GAUSSIAN +: vkvg.h +
  • +
  • VKVG_FILTER_GOOD +: vkvg.h +
  • +
  • VKVG_FILTER_NEAREST +: vkvg.h +
  • +
  • VKVG_FORMAT_A1 +: vkvg.h +
  • +
  • VKVG_FORMAT_A8 +: vkvg.h +
  • +
  • VKVG_FORMAT_ARGB32 +: vkvg.h +
  • +
  • VKVG_FORMAT_RGB24 +: vkvg.h +
  • +
  • VKVG_HORIZONTAL +: vkvg.h +
  • +
  • VKVG_LINE_CAP_BUTT +: vkvg.h +
  • +
  • VKVG_LINE_CAP_ROUND +: vkvg.h +
  • +
  • VKVG_LINE_CAP_SQUARE +: vkvg.h +
  • +
  • VKVG_LINE_JOIN_BEVEL +: vkvg.h +
  • +
  • VKVG_LINE_JOIN_MITER +: vkvg.h +
  • +
  • VKVG_LINE_JOIN_ROUND +: vkvg.h +
  • +
  • VKVG_OPERATOR_CLEAR +: vkvg.h +
  • +
  • VKVG_OPERATOR_DIFFERENCE +: vkvg.h +
  • +
  • VKVG_OPERATOR_MAX +: vkvg.h +
  • +
  • VKVG_OPERATOR_OVER +: vkvg.h +
  • +
  • VKVG_OPERATOR_SOURCE +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_LINEAR +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_MESH +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_RADIAL +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_RASTER_SOURCE +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_SOLID +: vkvg.h +
  • +
  • VKVG_PATTERN_TYPE_SURFACE +: vkvg.h +
  • +
  • VKVG_STATUS_DEVICE_ERROR +: vkvg.h +
  • +
  • VKVG_STATUS_FILE_NOT_FOUND +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_DASH +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_FONT +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_FORMAT +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_IMAGE +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_INDEX +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_MATRIX +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_RECT +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_RESTORE +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_STATUS +: vkvg.h +
  • +
  • VKVG_STATUS_INVALID_SURFACE +: vkvg.h +
  • +
  • VKVG_STATUS_NO_CURRENT_POINT +: vkvg.h +
  • +
  • VKVG_STATUS_NO_MEMORY +: vkvg.h +
  • +
  • VKVG_STATUS_NULL_POINTER +: vkvg.h +
  • +
  • VKVG_STATUS_PATTERN_INVALID_GRADIENT +: vkvg.h +
  • +
  • VKVG_STATUS_PATTERN_TYPE_MISMATCH +: vkvg.h +
  • +
  • VKVG_STATUS_SUCCESS +: vkvg.h +
  • +
  • VKVG_STATUS_TIMEOUT +: vkvg.h +
  • +
  • VKVG_STATUS_WRITE_ERROR +: vkvg.h +
  • +
  • VKVG_VERTICAL +: vkvg.h +
  • +
+
+ + + + + diff --git a/globals_func.html b/globals_func.html new file mode 100644 index 0000000..49608e7 --- /dev/null +++ b/globals_func.html @@ -0,0 +1,524 @@ + + + + + + + + + VKVG: Globals + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- v -

    +
  • vkvg_arc() +: vkvg.h +
  • +
  • vkvg_arc_negative() +: vkvg.h +
  • +
  • vkvg_clear() +: vkvg.h +
  • +
  • vkvg_clip() +: vkvg.h +
  • +
  • vkvg_clip_preserve() +: vkvg.h +
  • +
  • vkvg_close_path() +: vkvg.h +
  • +
  • vkvg_create() +: vkvg.h +
  • +
  • vkvg_curve_to() +: vkvg.h +
  • +
  • vkvg_destroy() +: vkvg.h +
  • +
  • vkvg_device_create() +: vkvg.h +
  • +
  • vkvg_device_create_from_vk() +: vkvg.h +
  • +
  • vkvg_device_create_from_vk_multisample() +: vkvg.h +
  • +
  • vkvg_device_destroy() +: vkvg.h +
  • +
  • vkvg_device_get_dpy() +: vkvg.h +
  • +
  • vkvg_device_get_reference_count() +: vkvg.h +
  • +
  • vkvg_device_reference() +: vkvg.h +
  • +
  • vkvg_device_set_dpy() +: vkvg.h +
  • +
  • vkvg_device_set_thread_aware() +: vkvg.h +
  • +
  • vkvg_device_status() +: vkvg.h +
  • +
  • vkvg_ellipse() +: vkvg.h +
  • +
  • vkvg_elliptic_arc_to() +: vkvg.h +
  • +
  • vkvg_fill() +: vkvg.h +
  • +
  • vkvg_fill_preserve() +: vkvg.h +
  • +
  • vkvg_flush() +: vkvg.h +
  • +
  • vkvg_font_extents() +: vkvg.h +
  • +
  • vkvg_get_current_point() +: vkvg.h +
  • +
  • vkvg_get_dash() +: vkvg.h +
  • +
  • vkvg_get_device_requirements() +: vkvg.h +
  • +
  • vkvg_get_fill_rule() +: vkvg.h +
  • +
  • vkvg_get_line_cap() +: vkvg.h +
  • +
  • vkvg_get_line_join() +: vkvg.h +
  • +
  • vkvg_get_line_width() +: vkvg.h +
  • +
  • vkvg_get_matrix() +: vkvg.h +
  • +
  • vkvg_get_miter_limit() +: vkvg.h +
  • +
  • vkvg_get_opacity() +: vkvg.h +
  • +
  • vkvg_get_operator() +: vkvg.h +
  • +
  • vkvg_get_reference_count() +: vkvg.h +
  • +
  • vkvg_get_required_device_extensions() +: vkvg.h +
  • +
  • vkvg_get_required_instance_extensions() +: vkvg.h +
  • +
  • vkvg_get_source() +: vkvg.h +
  • +
  • vkvg_get_target() +: vkvg.h +
  • +
  • vkvg_has_current_point() +: vkvg.h +
  • +
  • vkvg_identity_matrix() +: vkvg.h +
  • +
  • vkvg_line_to() +: vkvg.h +
  • +
  • vkvg_load_font_from_memory() +: vkvg.h +
  • +
  • vkvg_load_font_from_path() +: vkvg.h +
  • +
  • vkvg_matrix_get_scale() +: vkvg.h +
  • +
  • vkvg_matrix_init() +: vkvg.h +
  • +
  • vkvg_matrix_init_identity() +: vkvg.h +
  • +
  • vkvg_matrix_init_rotate() +: vkvg.h +
  • +
  • vkvg_matrix_init_scale() +: vkvg.h +
  • +
  • vkvg_matrix_init_translate() +: vkvg.h +
  • +
  • vkvg_matrix_invert() +: vkvg.h +
  • +
  • vkvg_matrix_multiply() +: vkvg.h +
  • +
  • vkvg_matrix_rotate() +: vkvg.h +
  • +
  • vkvg_matrix_scale() +: vkvg.h +
  • +
  • vkvg_matrix_transform_distance() +: vkvg.h +
  • +
  • vkvg_matrix_transform_point() +: vkvg.h +
  • +
  • vkvg_matrix_translate() +: vkvg.h +
  • +
  • vkvg_move_to() +: vkvg.h +
  • +
  • vkvg_multisample_surface_resolve() +: vkvg.h +
  • +
  • vkvg_new_path() +: vkvg.h +
  • +
  • vkvg_new_sub_path() +: vkvg.h +
  • +
  • vkvg_paint() +: vkvg.h +
  • +
  • vkvg_path_extents() +: vkvg.h +
  • +
  • vkvg_pattern_add_color_stop() +: vkvg.h +
  • +
  • vkvg_pattern_create_for_surface() +: vkvg.h +
  • +
  • vkvg_pattern_create_linear() +: vkvg.h +
  • +
  • vkvg_pattern_create_radial() +: vkvg.h +
  • +
  • vkvg_pattern_destroy() +: vkvg.h +
  • +
  • vkvg_pattern_edit_linear() +: vkvg.h +
  • +
  • vkvg_pattern_edit_radial() +: vkvg.h +
  • +
  • vkvg_pattern_get_color_stop_count() +: vkvg.h +
  • +
  • vkvg_pattern_get_color_stop_rgba() +: vkvg.h +
  • +
  • vkvg_pattern_get_extend() +: vkvg.h +
  • +
  • vkvg_pattern_get_filter() +: vkvg.h +
  • +
  • vkvg_pattern_get_linear_points() +: vkvg.h +
  • +
  • vkvg_pattern_get_matrix() +: vkvg.h +
  • +
  • vkvg_pattern_get_reference_count() +: vkvg.h +
  • +
  • vkvg_pattern_get_type() +: vkvg.h +
  • +
  • vkvg_pattern_reference() +: vkvg.h +
  • +
  • vkvg_pattern_set_extend() +: vkvg.h +
  • +
  • vkvg_pattern_set_filter() +: vkvg.h +
  • +
  • vkvg_pattern_set_matrix() +: vkvg.h +
  • +
  • vkvg_quadratic_to() +: vkvg.h +
  • +
  • vkvg_rectangle() +: vkvg.h +
  • +
  • vkvg_reference() +: vkvg.h +
  • +
  • vkvg_rel_curve_to() +: vkvg.h +
  • +
  • vkvg_rel_elliptic_arc_to() +: vkvg.h +
  • +
  • vkvg_rel_line_to() +: vkvg.h +
  • +
  • vkvg_rel_move_to() +: vkvg.h +
  • +
  • vkvg_rel_quadratic_to() +: vkvg.h +
  • +
  • vkvg_reset_clip() +: vkvg.h +
  • +
  • vkvg_restore() +: vkvg.h +
  • +
  • vkvg_rotate() +: vkvg.h +
  • +
  • vkvg_rounded_rectangle() +: vkvg.h +
  • +
  • vkvg_rounded_rectangle2() +: vkvg.h +
  • +
  • vkvg_save() +: vkvg.h +
  • +
  • vkvg_scale() +: vkvg.h +
  • +
  • vkvg_select_font_face() +: vkvg.h +
  • +
  • vkvg_set_dash() +: vkvg.h +
  • +
  • vkvg_set_fill_rule() +: vkvg.h +
  • +
  • vkvg_set_font_size() +: vkvg.h +
  • +
  • vkvg_set_line_cap() +: vkvg.h +
  • +
  • vkvg_set_line_join() +: vkvg.h +
  • +
  • vkvg_set_line_width() +: vkvg.h +
  • +
  • vkvg_set_matrix() +: vkvg.h +
  • +
  • vkvg_set_miter_limit() +: vkvg.h +
  • +
  • vkvg_set_opacity() +: vkvg.h +
  • +
  • vkvg_set_operator() +: vkvg.h +
  • +
  • vkvg_set_source() +: vkvg.h +
  • +
  • vkvg_set_source_color() +: vkvg.h +
  • +
  • vkvg_set_source_color_name() +: vkvg.h +
  • +
  • vkvg_set_source_rgb() +: vkvg.h +
  • +
  • vkvg_set_source_rgba() +: vkvg.h +
  • +
  • vkvg_set_source_surface() +: vkvg.h +
  • +
  • vkvg_show_text() +: vkvg.h +
  • +
  • vkvg_show_text_run() +: vkvg.h +
  • +
  • vkvg_status() +: vkvg.h +
  • +
  • vkvg_status_to_string() +: vkvg.h +
  • +
  • vkvg_stroke() +: vkvg.h +
  • +
  • vkvg_stroke_preserve() +: vkvg.h +
  • +
  • vkvg_surface_clear() +: vkvg.h +
  • +
  • vkvg_surface_create() +: vkvg.h +
  • +
  • vkvg_surface_create_for_VkhImage() +: vkvg.h +
  • +
  • vkvg_surface_create_from_image() +: vkvg.h +
  • +
  • vkvg_surface_create_from_svg() +: vkvg-svg.h +
  • +
  • vkvg_surface_create_from_svg_fragment() +: vkvg-svg.h +
  • +
  • vkvg_surface_destroy() +: vkvg.h +
  • +
  • vkvg_surface_get_height() +: vkvg.h +
  • +
  • vkvg_surface_get_reference_count() +: vkvg.h +
  • +
  • vkvg_surface_get_vk_format() +: vkvg.h +
  • +
  • vkvg_surface_get_vk_image() +: vkvg.h +
  • +
  • vkvg_surface_get_width() +: vkvg.h +
  • +
  • vkvg_surface_reference() +: vkvg.h +
  • +
  • vkvg_surface_status() +: vkvg.h +
  • +
  • vkvg_surface_write_to_memory() +: vkvg.h +
  • +
  • vkvg_surface_write_to_png() +: vkvg.h +
  • +
  • vkvg_svg_destroy() +: vkvg-svg.h +
  • +
  • vkvg_svg_get_dimensions() +: vkvg-svg.h +
  • +
  • vkvg_svg_load() +: vkvg-svg.h +
  • +
  • vkvg_svg_load_fragment() +: vkvg-svg.h +
  • +
  • vkvg_svg_render() +: vkvg-svg.h +
  • +
  • vkvg_text_extents() +: vkvg.h +
  • +
  • vkvg_text_run_create() +: vkvg.h +
  • +
  • vkvg_text_run_create_with_length() +: vkvg.h +
  • +
  • vkvg_text_run_destroy() +: vkvg.h +
  • +
  • vkvg_text_run_get_extents() +: vkvg.h +
  • +
  • vkvg_text_run_get_glyph_count() +: vkvg.h +
  • +
  • vkvg_text_run_get_glyph_position() +: vkvg.h +
  • +
  • vkvg_transform() +: vkvg.h +
  • +
  • vkvg_translate() +: vkvg.h +
  • +
+
+ + + + + diff --git a/globals_type.html b/globals_type.html new file mode 100644 index 0000000..cb3daea --- /dev/null +++ b/globals_type.html @@ -0,0 +1,84 @@ + + + + + + + + + VKVG: Globals + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+ + + + + diff --git a/graph_legend.html b/graph_legend.html new file mode 100644 index 0000000..4038669 --- /dev/null +++ b/graph_legend.html @@ -0,0 +1,128 @@ + + + + + + + + + VKVG: Graph Legend + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Graph Legend
+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

/*! Invisible class because of truncation */
+
class Invisible { };
+
+
/*! Truncated class, inheritance relation is hidden */
+
class Truncated : public Invisible { };
+
+
/* Class not documented with doxygen comments */
+
class Undocumented { };
+
+
/*! Class that is inherited using public inheritance */
+
class PublicBase : public Truncated { };
+
+
/*! A template class */
+
template<class T> class Templ { };
+
+
/*! Class that is inherited using protected inheritance */
+
class ProtectedBase { };
+
+
/*! Class that is inherited using private inheritance */
+
class PrivateBase { };
+
+
/*! Class that is used by the Inherited class */
+
class Used { };
+
+
/*! Super class that inherits a number of other classes */
+
class Inherited : public PublicBase,
+
protected ProtectedBase,
+
private PrivateBase,
+
public Undocumented,
+
public Templ<int>
+
{
+
private:
+
Used *m_usedClass;
+
};
+

This will result in the following graph:

+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a gray border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance.
  • +
+
+ + + + + diff --git a/graph_legend.md5 b/graph_legend.md5 new file mode 100644 index 0000000..8fcdccd --- /dev/null +++ b/graph_legend.md5 @@ -0,0 +1 @@ +f51bf6e9a10430aafef59831b08dcbfe \ No newline at end of file diff --git a/graph_legend.png b/graph_legend.png new file mode 100644 index 0000000..c3cac43 Binary files /dev/null and b/graph_legend.png differ diff --git a/group__context.html b/group__context.html new file mode 100644 index 0000000..b1470f4 --- /dev/null +++ b/group__context.html @@ -0,0 +1,308 @@ + + + + + + + + + VKVG: Context + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Context
+
+
+

Description

+

Functions and types related to VKVG contexts.

+

This is the reference documentation for VKVG contexts used to draw on Surface.

+ + + + + +

+Typedefs

typedef struct _vkvg_context_t * VkvgContext
 The Vkvg drawing Context. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public VkvgContext vkvg_create (VkvgSurface surf)
 Create a new vkvg context used for drawing on surfaces. More...
 
vkvg_public void vkvg_destroy (VkvgContext ctx)
 Decrement the reference count on the context by one. Destroy it if count reach 0. More...
 
vkvg_public vkvg_status_t vkvg_status (VkvgContext ctx)
 Get context status. More...
 
vkvg_public const char * vkvg_status_to_string (vkvg_status_t status)
 
vkvg_public VkvgContext vkvg_reference (VkvgContext ctx)
 Increment by one the reference count on this context. More...
 
vkvg_public uint32_t vkvg_get_reference_count (VkvgContext ctx)
 Get the current reference count of this context. More...
 
vkvg_public void vkvg_flush (VkvgContext ctx)
 Perform all the pending drawing operations on a context. More...
 
vkvg_public void vkvg_new_path (VkvgContext ctx)
 Start a new empty path. More...
 
vkvg_public void vkvg_close_path (VkvgContext ctx)
 Close the current path. More...
 
vkvg_public void vkvg_new_sub_path (VkvgContext ctx)
 Start new sub path, no current point is defined. More...
 
vkvg_public void vkvg_path_extents (VkvgContext ctx, float *x1, float *y1, float *x2, float *y2)
 vkvg_path_extents More...
 
vkvg_public void vkvg_get_current_point (VkvgContext ctx, float *x, float *y)
 Get the current point of the context, return 0,0 if no point is defined. More...
 
vkvg_public void vkvg_line_to (VkvgContext ctx, float x, float y)
 Add a line to the current path from the current point to the coordinate given in arguments. More...
 
vkvg_public void vkvg_rel_line_to (VkvgContext ctx, float dx, float dy)
 Add a line to the current path from the current point to the coordinate relative to it. More...
 
vkvg_public void vkvg_move_to (VkvgContext ctx, float x, float y)
 Move the context pen to the position given in argument. More...
 
vkvg_public void vkvg_rel_move_to (VkvgContext ctx, float x, float y)
 Move the context pen relative to the current point. More...
 
vkvg_public void vkvg_arc (VkvgContext ctx, float xc, float yc, float radius, float a1, float a2)
 Adds a circular arc of the given radius to the current path. More...
 
vkvg_public void vkvg_arc_negative (VkvgContext ctx, float xc, float yc, float radius, float a1, float a2)
 Add a circular arc in counter clockwise order to the current path. More...
 
vkvg_public void vkvg_curve_to (VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3)
 Adds a cubic Bézier spline to the current path. More...
 
vkvg_public void vkvg_rel_curve_to (VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3)
 Adds a cubic Bézier spline to the current path relative to the current point. More...
 
vkvg_public void vkvg_quadratic_to (VkvgContext ctx, float x1, float y1, float x2, float y2)
 Add a quadratic Bezizer curve to the current path. More...
 
vkvg_public void vkvg_rel_quadratic_to (VkvgContext ctx, float x1, float y1, float x2, float y2)
 Add a quadratic Bezizer curve to the current path relative to the current point. More...
 
vkvg_public vkvg_status_t vkvg_rectangle (VkvgContext ctx, float x, float y, float w, float h)
 Add an axis aligned rectangle subpath to the current path. More...
 
vkvg_public vkvg_status_t vkvg_rounded_rectangle (VkvgContext ctx, float x, float y, float w, float h, float radius)
 Add an axis aligned rectangle with rounded corners to the current path. More...
 
vkvg_public void vkvg_rounded_rectangle2 (VkvgContext ctx, float x, float y, float w, float h, float rx, float ry)
 Add an axis aligned rectangle with rounded corners defined in both axis to the current path. More...
 
vkvg_public void vkvg_ellipse (VkvgContext ctx, float radiusX, float radiusY, float x, float y, float rotationAngle)
 
vkvg_public void vkvg_elliptic_arc_to (VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi)
 
vkvg_public void vkvg_rel_elliptic_arc_to (VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi)
 
vkvg_public void vkvg_stroke (VkvgContext ctx)
 Stroke command. More...
 
vkvg_public void vkvg_stroke_preserve (VkvgContext ctx)
 Stroke command that preserve current path. More...
 
vkvg_public void vkvg_fill (VkvgContext ctx)
 Fill command. More...
 
vkvg_public void vkvg_fill_preserve (VkvgContext ctx)
 Fill command that preserve current path. More...
 
vkvg_public void vkvg_paint (VkvgContext ctx)
 Paint command. More...
 
vkvg_public void vkvg_clear (VkvgContext ctx)
 Clear surface. More...
 
vkvg_public void vkvg_reset_clip (VkvgContext ctx)
 Reset the current clip region. More...
 
vkvg_public void vkvg_clip (VkvgContext ctx)
 Establishes a new clip region. More...
 
vkvg_public void vkvg_clip_preserve (VkvgContext ctx)
 Establishes a new clip region preserving the current path. More...
 
vkvg_public void vkvg_set_opacity (VkvgContext ctx, float opacity)
 
vkvg_public float vkvg_get_opacity (VkvgContext ctx)
 
vkvg_public void vkvg_set_source_color (VkvgContext ctx, uint32_t c)
 Set current source for drawing to the solid color defined by the supplied 32bit integer. More...
 
vkvg_public void vkvg_set_source_rgba (VkvgContext ctx, float r, float g, float b, float a)
 set color with alpha. More...
 
vkvg_public void vkvg_set_source_rgb (VkvgContext ctx, float r, float g, float b)
 set color as new source. More...
 
vkvg_public void vkvg_set_line_width (VkvgContext ctx, float width)
 set line width for the next draw command. More...
 
vkvg_public void vkvg_set_miter_limit (VkvgContext ctx, float limit)
 set line join miter size limit. More...
 
vkvg_public float vkvg_get_miter_limit (VkvgContext ctx)
 Gets the current miter limit, as set by vkvg_set_miter_limit(). More...
 
vkvg_public void vkvg_set_line_cap (VkvgContext ctx, vkvg_line_cap_t cap)
 set line terminations for the next draw command. More...
 
vkvg_public void vkvg_set_line_join (VkvgContext ctx, vkvg_line_join_t join)
 set line joins for the next draw command. More...
 
vkvg_public void vkvg_set_source_surface (VkvgContext ctx, VkvgSurface surf, float x, float y)
 use supplied surface as current pattern. More...
 
vkvg_public void vkvg_set_source (VkvgContext ctx, VkvgPattern pat)
 set supplied pattern as current source. More...
 
vkvg_public void vkvg_set_operator (VkvgContext ctx, vkvg_operator_t op)
 
vkvg_public void vkvg_set_fill_rule (VkvgContext ctx, vkvg_fill_rule_t fr)
 
vkvg_public void vkvg_set_dash (VkvgContext ctx, const float *dashes, uint32_t num_dashes, float offset)
 set the dash configuration for strokes More...
 
vkvg_public void vkvg_get_dash (VkvgContext ctx, const float *dashes, uint32_t *num_dashes, float *offset)
 get current dash settings. More...
 
vkvg_public float vkvg_get_line_width (VkvgContext ctx)
 get current line width More...
 
vkvg_public vkvg_line_cap_t vkvg_get_line_cap (VkvgContext ctx)
 
vkvg_public vkvg_line_join_t vkvg_get_line_join (VkvgContext ctx)
 
vkvg_public vkvg_operator_t vkvg_get_operator (VkvgContext ctx)
 
vkvg_public vkvg_fill_rule_t vkvg_get_fill_rule (VkvgContext ctx)
 
vkvg_public VkvgPattern vkvg_get_source (VkvgContext ctx)
 
vkvg_public VkvgSurface vkvg_get_target (VkvgContext ctx)
 
vkvg_public bool vkvg_has_current_point (VkvgContext ctx)
 Returns whether a current point is defined on the current path. See vkvg_get_current_point() for details on the current point. More...
 
vkvg_public void vkvg_save (VkvgContext ctx)
 
vkvg_public void vkvg_restore (VkvgContext ctx)
 
vkvg_public void vkvg_translate (VkvgContext ctx, float dx, float dy)
 
vkvg_public void vkvg_scale (VkvgContext ctx, float sx, float sy)
 
vkvg_public void vkvg_rotate (VkvgContext ctx, float radians)
 
vkvg_public void vkvg_transform (VkvgContext ctx, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_set_matrix (VkvgContext ctx, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_get_matrix (VkvgContext ctx, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_identity_matrix (VkvgContext ctx)
 Reset the current transformation matrix of the provided context to the identity matrix. More...
 
vkvg_public void vkvg_select_font_face (VkvgContext ctx, const char *name)
 Try find font with the specified name using the FontConfig library. More...
 
vkvg_public void vkvg_load_font_from_path (VkvgContext ctx, const char *path, const char *name)
 Select a new font by providing its file path. More...
 
vkvg_public void vkvg_load_font_from_memory (VkvgContext ctx, unsigned char *fontBuffer, long fontBufferByteSize, const char *name)
 Select a new font by providing a pointer on the font file loaded in memory and its size in byte. More...
 
vkvg_public void vkvg_set_font_size (VkvgContext ctx, uint32_t size)
 
vkvg_public void vkvg_show_text (VkvgContext ctx, const char *text)
 
vkvg_public void vkvg_text_extents (VkvgContext ctx, const char *text, vkvg_text_extents_t *extents)
 
vkvg_public void vkvg_font_extents (VkvgContext ctx, vkvg_font_extents_t *extents)
 
vkvg_public VkvgText vkvg_text_run_create (VkvgContext ctx, const char *text)
 Create a new text run. More...
 
vkvg_public VkvgText vkvg_text_run_create_with_length (VkvgContext ctx, const char *text, uint32_t length)
 Create a new text run for a non null terminated string. More...
 
vkvg_public void vkvg_text_run_destroy (VkvgText textRun)
 Release ressources holded by the text run. More...
 
vkvg_public void vkvg_show_text_run (VkvgContext ctx, VkvgText textRun)
 
vkvg_public void vkvg_text_run_get_extents (VkvgText textRun, vkvg_text_extents_t *extents)
 
vkvg_public uint32_t vkvg_text_run_get_glyph_count (VkvgText textRun)
 Get glyph count of text run. More...
 
vkvg_public void vkvg_text_run_get_glyph_position (VkvgText textRun, uint32_t index, vkvg_glyph_info_t *pGlyphInfo)
 retrieve glyph positions. More...
 
+
+ + + + + diff --git a/group__context_ga01525d0d537d2e03d541ad57325f14d2.html b/group__context_ga01525d0d537d2e03d541ad57325f14d2.html new file mode 100644 index 0000000..3ebe0a7 --- /dev/null +++ b/group__context_ga01525d0d537d2e03d541ad57325f14d2.html @@ -0,0 +1,186 @@ + + + + + + + + + VKVG: vkvg_text_run_get_glyph_count + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_run_get_glyph_count()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_text_run_get_glyph_count (VkvgText textRun)
+
+ +

Get glyph count of text run.

+
Returns
glyph count
+ +
+
+
+
+ + + + + diff --git a/group__context_ga0a1ff002bf87d056d6749966fdabd3a6.html b/group__context_ga0a1ff002bf87d056d6749966fdabd3a6.html new file mode 100644 index 0000000..cc6f112 --- /dev/null +++ b/group__context_ga0a1ff002bf87d056d6749966fdabd3a6.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_font_extents + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_font_extents()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_font_extents (VkvgContext ctx,
vkvg_font_extents_textents 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
extents
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga0bb6ecd1c3f10f1a6bae09a808986a7c.html b/group__context_ga0bb6ecd1c3f10f1a6bae09a808986a7c.html new file mode 100644 index 0000000..f06ad20 --- /dev/null +++ b/group__context_ga0bb6ecd1c3f10f1a6bae09a808986a7c.html @@ -0,0 +1,183 @@ + + + + + + + + + VKVG: vkvg_get_opacity + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_opacity()

+ +
+
+ + + + + + + + +
vkvg_public float vkvg_get_opacity (VkvgContext ctx)
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga0e1611518cd6aa91d3527fefcfdf2957.html b/group__context_ga0e1611518cd6aa91d3527fefcfdf2957.html new file mode 100644 index 0000000..1c5ea40 --- /dev/null +++ b/group__context_ga0e1611518cd6aa91d3527fefcfdf2957.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_close_path + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_close_path()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_close_path (VkvgContext ctx)
+
+ +

Close the current path.

+

Close the last path emited for this context if its point count is greater than 2. This function has no effect if the current path is empty or if its point count is less than 2. This function is automatically call when you try to perform a filling operation on an unclosed path.

Parameters
+ + +
ctxThe vkvg context pointer.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga1027bada0ac47c81c3b0746158c3c5bc.html b/group__context_ga1027bada0ac47c81c3b0746158c3c5bc.html new file mode 100644 index 0000000..171cfdf --- /dev/null +++ b/group__context_ga1027bada0ac47c81c3b0746158c3c5bc.html @@ -0,0 +1,184 @@ + + + + + + + + + VKVG: VkvgContext + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VkvgContext

+ +
+
+ + + + +
typedef struct _vkvg_context_t* VkvgContext
+
+ +

The Vkvg drawing Context.

+

A VkvgContext is the central object for drawing operations. #vkvg_context_t structure internals this pointer point to are hidden to the client application.

+ +

Definition at line 298 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/group__context_ga13183bfc6468e0106b487a397ea1d870.html b/group__context_ga13183bfc6468e0106b487a397ea1d870.html new file mode 100644 index 0000000..29f10d6 --- /dev/null +++ b/group__context_ga13183bfc6468e0106b487a397ea1d870.html @@ -0,0 +1,194 @@ + + + + + + + + + VKVG: vkvg_clip + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_clip()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_clip (VkvgContext ctx)
+
+ +

Establishes a new clip region.

+

Establishes a new clip region by intersecting the current clip region with the current path as it would be filled by vkvg_fill() and according to the current fill rule (vkvg_set_fill_rule()).

+

The current clip region affects all drawing operations by effectively masking out any changes to the surface that are outside the current clip region.

+

After vkvg_clip(), the current path will be cleared from the context.

+

Calling vkvg_clip() can only make the clip region smaller, never larger. But the current clip is part of the graphics state, so a temporary restriction of the clip region can be achieved by calling vkvg_clip() within a /@ref vkvg_restore() pair. The only other means of increasing the size of the clip region is vkvg_reset_clip().

Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga13635442e4c14287367823598f2535cb.html b/group__context_ga13635442e4c14287367823598f2535cb.html new file mode 100644 index 0000000..3c0555a --- /dev/null +++ b/group__context_ga13635442e4c14287367823598f2535cb.html @@ -0,0 +1,238 @@ + + + + + + + + + VKVG: vkvg_rounded_rectangle2 + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rounded_rectangle2()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rounded_rectangle2 (VkvgContext ctx,
float x,
float y,
float w,
float h,
float rx,
float ry 
)
+
+ +

Add an axis aligned rectangle with rounded corners defined in both axis to the current path.

+

Adds a closed sub-path rectangle of the given size to the current path at position (x, y).

Parameters
+ + + + + + + + +
ctxThe vkvg context pointer.
xThe x coordinate of the top left corner of the rectangle to emit.
yThe y coordinate of the top left corner of the rectangle to emit.
wThe width in pixel of the rectangle to draw.
hThe height in pixel of the rectangle to draw.
rxThe horizontal radius of the corners.
ryThe vertical radius of the corners.
+
+
+
Returns
VKVG_STATUS_SUCCESS or VKVG_STATUS_INVALID_RECT if width or height is equal to 0.
+ +
+
+
+
+ + + + + diff --git a/group__context_ga154cef8a49f052068c9f0d6f897aa3d6.html b/group__context_ga154cef8a49f052068c9f0d6f897aa3d6.html new file mode 100644 index 0000000..9bc2018 --- /dev/null +++ b/group__context_ga154cef8a49f052068c9f0d6f897aa3d6.html @@ -0,0 +1,238 @@ + + + + + + + + + VKVG: vkvg_rel_curve_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rel_curve_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rel_curve_to (VkvgContext ctx,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3 
)
+
+ +

Adds a cubic Bézier spline to the current path relative to the current point.

+

Adds a cubic Bézier spline to the path from the current point to position (x3, y3) in relative coordinate to the current point, using (x1, y1) and (x2, y2) as the control points relative to the current point. After this call the current point will be (x3, y3).

+

If there is no current point before the call to vkvg_rel_curve_to() => error:VKVG_STATUS_NO_CURRENT_POINT.

Parameters
+ + + + + + + + +
ctxThe vkvg context pointer.
x1The X coordinate of the first control point.
y1The Y coordinate of the first control point.
x2The X coordinate of the second control point.
y2The Y coordinate of the second control point.
x3The X coordinate of the end of the curve.
y3The Y coordinate of the end of the curve.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga17c5a80eb803be493370b95add18e0e0.html b/group__context_ga17c5a80eb803be493370b95add18e0e0.html new file mode 100644 index 0000000..5a5d3f1 --- /dev/null +++ b/group__context_ga17c5a80eb803be493370b95add18e0e0.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_set_matrix + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_matrix()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_matrix (VkvgContext ctx,
const vkvg_matrix_tmatrix 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
matrix
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga19370dc950aa5f87d13feb2824faf441.html b/group__context_ga19370dc950aa5f87d13feb2824faf441.html new file mode 100644 index 0000000..07947da --- /dev/null +++ b/group__context_ga19370dc950aa5f87d13feb2824faf441.html @@ -0,0 +1,205 @@ + + + + + + + + + VKVG: vkvg_set_miter_limit + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_miter_limit()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_miter_limit (VkvgContext ctx,
float limit 
)
+
+ +

set line join miter size limit.

+

If the current line join style is set to VKVG_LINE_JOIN_MITER (see vkvg_set_line_join()), the miter limit is used to determine whether the lines should be joined with a bevel instead of a miter. Vkvg divides the length of the miter by the line width. If the result is greater than the miter limit, the style is converted to a bevel.

+

The default miter limit value is 10.0, which will convert joins with interior angles less than 11 degrees to bevels instead of miters. For reference, a miter limit of 2.0 makes the miter cutoff at 60 degrees, and a miter limit of 1.414 makes the cutoff at 90 degrees.

+

A miter limit for a desired angle can be computed as: miter limit = 1/sin(angle/2)

+
Parameters
+ + + +
ctxa valid vkvg Context
limitnew current miter limit value for the context.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga25e4334755ba6bef6a74bc263554c07e.html b/group__context_ga25e4334755ba6bef6a74bc263554c07e.html new file mode 100644 index 0000000..c239741 --- /dev/null +++ b/group__context_ga25e4334755ba6bef6a74bc263554c07e.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_get_line_width + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_line_width()

+ +
+
+ + + + + + + + +
vkvg_public float vkvg_get_line_width (VkvgContext ctx)
+
+ +

get current line width

+

This function return the current line width to use by vkvg_stroke() as set by vkvg_set_line_width().

Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
current line width.
+ +
+
+
+
+ + + + + diff --git a/group__context_ga261c6105cc8574a05a971b562cfbbfdf.html b/group__context_ga261c6105cc8574a05a971b562cfbbfdf.html new file mode 100644 index 0000000..0eec461 --- /dev/null +++ b/group__context_ga261c6105cc8574a05a971b562cfbbfdf.html @@ -0,0 +1,202 @@ + + + + + + + + + VKVG: vkvg_set_line_join + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_line_join()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_line_join (VkvgContext ctx,
vkvg_line_join_t join 
)
+
+ +

set line joins for the next draw command.

+

Configure the line join to output for further path stroke commands.

Parameters
+ + + +
ctxa valid vkvg Context
joinnew line join as defined in #vkvg_line_joint_t.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga2af37f98b630134843446c5d8109741f.html b/group__context_ga2af37f98b630134843446c5d8109741f.html new file mode 100644 index 0000000..6fad7bf --- /dev/null +++ b/group__context_ga2af37f98b630134843446c5d8109741f.html @@ -0,0 +1,202 @@ + + + + + + + + + VKVG: vkvg_set_line_cap + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_line_cap()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_line_cap (VkvgContext ctx,
vkvg_line_cap_t cap 
)
+
+ +

set line terminations for the next draw command.

+

Configure the line terminations to output for further path stroke commands.

Parameters
+ + + +
ctxa valid vkvg Context
capnew line termination, may be one of the value of vkvg_line_cap_t.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga2e3f3777b3ba1a6de1d54eb7c23737d9.html b/group__context_ga2e3f3777b3ba1a6de1d54eb7c23737d9.html new file mode 100644 index 0000000..94d089a --- /dev/null +++ b/group__context_ga2e3f3777b3ba1a6de1d54eb7c23737d9.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_show_text + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_show_text()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_show_text (VkvgContext ctx,
const char * text 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
text
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga2e5ac52635eb2745b9f28373689df0d9.html b/group__context_ga2e5ac52635eb2745b9f28373689df0d9.html new file mode 100644 index 0000000..5fdaf65 --- /dev/null +++ b/group__context_ga2e5ac52635eb2745b9f28373689df0d9.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_show_text_run + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_show_text_run()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_show_text_run (VkvgContext ctx,
VkvgText textRun 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
textRun
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga32ccec401affe05abbbcc914cd3139e6.html b/group__context_ga32ccec401affe05abbbcc914cd3139e6.html new file mode 100644 index 0000000..daf4dc7 --- /dev/null +++ b/group__context_ga32ccec401affe05abbbcc914cd3139e6.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_set_fill_rule + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_fill_rule()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_fill_rule (VkvgContext ctx,
vkvg_fill_rule_t fr 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
fr
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga3590f94fe38df4f98f196d738827891c.html b/group__context_ga3590f94fe38df4f98f196d738827891c.html new file mode 100644 index 0000000..8e4a37b --- /dev/null +++ b/group__context_ga3590f94fe38df4f98f196d738827891c.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_stroke + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_stroke()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_stroke (VkvgContext ctx)
+
+ +

Stroke command.

+

Perform a stroke of the current path and reset it.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga36fe35b2d255b66d379b70567d49eed2.html b/group__context_ga36fe35b2d255b66d379b70567d49eed2.html new file mode 100644 index 0000000..2899fb1 --- /dev/null +++ b/group__context_ga36fe35b2d255b66d379b70567d49eed2.html @@ -0,0 +1,186 @@ + + + + + + + + + VKVG: vkvg_status_to_string + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_status_to_string()

+ +
+
+ + + + + + + + +
vkvg_public const char* vkvg_status_to_string (vkvg_status_t status)
+
+

vkvg_status_to_string: @status: a vkvg status

+

Provides a human-readable description of a vkvg_status_t.

+

Returns: a string representation of the status

+ +
+
+
+
+ + + + + diff --git a/group__context_ga38d3fd1954fdcddd9013117f60d21707.html b/group__context_ga38d3fd1954fdcddd9013117f60d21707.html new file mode 100644 index 0000000..3428c4d --- /dev/null +++ b/group__context_ga38d3fd1954fdcddd9013117f60d21707.html @@ -0,0 +1,216 @@ + + + + + + + + + VKVG: vkvg_set_dash + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_dash()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_dash (VkvgContext ctx,
const float * dashes,
uint32_t num_dashes,
float offset 
)
+
+ +

set the dash configuration for strokes

+

Sets the dash pattern to be used by the next vkvg_stroke(). A dash pattern is specified by dashes, an array of positive values. Each value provides the length of alternate "on" and "off" portions of the stroke. The offset specifies an offset into the pattern at which the stroke begins.

Parameters
+ + + + + +
ctxa valid vkvg Context
dashesa pointer on an array of float values defining alternate lengths of on and off stroke portions.
num_dashesthe length of the dash array.
offsetan offset into the dash pattern at which the stroke should start.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga3f64f9251bd63c229205115a214acfc1.html b/group__context_ga3f64f9251bd63c229205115a214acfc1.html new file mode 100644 index 0000000..69660ee --- /dev/null +++ b/group__context_ga3f64f9251bd63c229205115a214acfc1.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_stroke_preserve + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_stroke_preserve()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_stroke_preserve (VkvgContext ctx)
+
+ +

Stroke command that preserve current path.

+

Perform a stroke of the current path and preserve it after the operation.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga41a306bcd66be7fc2f00b66a5ea92208.html b/group__context_ga41a306bcd66be7fc2f00b66a5ea92208.html new file mode 100644 index 0000000..9cae51a --- /dev/null +++ b/group__context_ga41a306bcd66be7fc2f00b66a5ea92208.html @@ -0,0 +1,190 @@ + + + + + + + + + VKVG: vkvg_get_line_join + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_line_join()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_line_join_t vkvg_get_line_join (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
vkvg_line_join_t
+ +
+
+
+
+ + + + + diff --git a/group__context_ga41d32b2e72c0eccf4a2bc695598c50ba.html b/group__context_ga41d32b2e72c0eccf4a2bc695598c50ba.html new file mode 100644 index 0000000..ceee55a --- /dev/null +++ b/group__context_ga41d32b2e72c0eccf4a2bc695598c50ba.html @@ -0,0 +1,209 @@ + + + + + + + + + VKVG: vkvg_move_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_move_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_move_to (VkvgContext ctx,
float x,
float y 
)
+
+ +

Move the context pen to the position given in argument.

+

This command set the current pen position of the context to the coordinate given by the x and y arguments. If the current path is not empty, this command will start a new subpath and set the current pen position to the coordinates given in arguments.

Parameters
+ + + + +
ctxThe vkvg context pointer.
xnew x position of the pen
ynew y position of the pen
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga42752652b304544765ffbc9f1355f04a.html b/group__context_ga42752652b304544765ffbc9f1355f04a.html new file mode 100644 index 0000000..89d60b1 --- /dev/null +++ b/group__context_ga42752652b304544765ffbc9f1355f04a.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_clip_preserve + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_clip_preserve()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_clip_preserve (VkvgContext ctx)
+
+ +

Establishes a new clip region preserving the current path.

+

This method has the same effect as vkvg_clip() except that the current path is not cleared after the operation.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga46da71eebe6f6dbb5056dc1429ced863.html b/group__context_ga46da71eebe6f6dbb5056dc1429ced863.html new file mode 100644 index 0000000..de5ba2c --- /dev/null +++ b/group__context_ga46da71eebe6f6dbb5056dc1429ced863.html @@ -0,0 +1,202 @@ + + + + + + + + + VKVG: vkvg_set_source_color + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_source_color()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_source_color (VkvgContext ctx,
uint32_t c 
)
+
+ +

Set current source for drawing to the solid color defined by the supplied 32bit integer.

+
Parameters
+ + + +
ctxa valid vkvg Context
rgbacolor coded in 32bit integer.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga490b9db147cf800e5e98eefe3753b8ec.html b/group__context_ga490b9db147cf800e5e98eefe3753b8ec.html new file mode 100644 index 0000000..83aee53 --- /dev/null +++ b/group__context_ga490b9db147cf800e5e98eefe3753b8ec.html @@ -0,0 +1,189 @@ + + + + + + + + + VKVG: vkvg_restore + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_restore()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_restore (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga4d37ec2bc539cbb2f088152c1785724a.html b/group__context_ga4d37ec2bc539cbb2f088152c1785724a.html new file mode 100644 index 0000000..e8d0429 --- /dev/null +++ b/group__context_ga4d37ec2bc539cbb2f088152c1785724a.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_get_miter_limit + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_miter_limit()

+ +
+
+ + + + + + + + +
vkvg_public float vkvg_get_miter_limit (VkvgContext ctx)
+
+ +

Gets the current miter limit, as set by vkvg_set_miter_limit().

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
the current miter limit for the context.
+ +
+
+
+
+ + + + + diff --git a/group__context_ga54e4a562ce79bfe7b27bccb354211526.html b/group__context_ga54e4a562ce79bfe7b27bccb354211526.html new file mode 100644 index 0000000..b17029b --- /dev/null +++ b/group__context_ga54e4a562ce79bfe7b27bccb354211526.html @@ -0,0 +1,209 @@ + + + + + + + + + VKVG: vkvg_get_current_point + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_current_point()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_get_current_point (VkvgContext ctx,
float * x,
float * y 
)
+
+ +

Get the current point of the context, return 0,0 if no point is defined.

+
Parameters
+ + + + +
ctx
x
y
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga5681b5178166d4f96d9f803000866200.html b/group__context_ga5681b5178166d4f96d9f803000866200.html new file mode 100644 index 0000000..f01375b --- /dev/null +++ b/group__context_ga5681b5178166d4f96d9f803000866200.html @@ -0,0 +1,183 @@ + + + + + + + + + VKVG: vkvg_get_target + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_target()

+ +
+
+ + + + + + + + +
vkvg_public VkvgSurface vkvg_get_target (VkvgContext ctx)
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga59ac2b80c1610a785e65ad44fde2b1d0.html b/group__context_ga59ac2b80c1610a785e65ad44fde2b1d0.html new file mode 100644 index 0000000..b393153 --- /dev/null +++ b/group__context_ga59ac2b80c1610a785e65ad44fde2b1d0.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_reference()

+ +
+
+ + + + + + + + +
vkvg_public VkvgContext vkvg_reference (VkvgContext ctx)
+
+ +

Increment by one the reference count on this context.

+
Parameters
+ + +
ctxThe context to increment the reference count for.
+
+
+
Returns
+ +
+
+
+
+ + + + + diff --git a/group__context_ga5accbb746089e87bcf2affb3b8d013ff.html b/group__context_ga5accbb746089e87bcf2affb3b8d013ff.html new file mode 100644 index 0000000..eb8b862 --- /dev/null +++ b/group__context_ga5accbb746089e87bcf2affb3b8d013ff.html @@ -0,0 +1,190 @@ + + + + + + + + + VKVG: vkvg_get_fill_rule + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_fill_rule()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_fill_rule_t vkvg_get_fill_rule (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
vkvg_fill_rule_t
+ +
+
+
+
+ + + + + diff --git a/group__context_ga5d60e9db2309e786ac30218efab804cb.html b/group__context_ga5d60e9db2309e786ac30218efab804cb.html new file mode 100644 index 0000000..e9e118f --- /dev/null +++ b/group__context_ga5d60e9db2309e786ac30218efab804cb.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_new_path + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_new_path()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_new_path (VkvgContext ctx)
+
+ +

Start a new empty path.

+

Calling vkvg_new_path is equivalent to a clear of the current path stored in the context without drawing anything on the target surface. The current position is reseted to (0,0).

Parameters
+ + +
ctxThe vkvg context pointer.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga5d8b1a43c078011541b8ad40a2af00bb.html b/group__context_ga5d8b1a43c078011541b8ad40a2af00bb.html new file mode 100644 index 0000000..ff619a3 --- /dev/null +++ b/group__context_ga5d8b1a43c078011541b8ad40a2af00bb.html @@ -0,0 +1,207 @@ + + + + + + + + + VKVG: vkvg_scale + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_scale()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_scale (VkvgContext ctx,
float sx,
float sy 
)
+
+
Parameters
+ + + + +
ctxa valid vkvg Context
sx
sy
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga61e679b9e01cdf105c7756bf9854697b.html b/group__context_ga61e679b9e01cdf105c7756bf9854697b.html new file mode 100644 index 0000000..055e3ea --- /dev/null +++ b/group__context_ga61e679b9e01cdf105c7756bf9854697b.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_identity_matrix + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_identity_matrix()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_identity_matrix (VkvgContext ctx)
+
+ +

Reset the current transformation matrix of the provided context to the identity matrix.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga6fd276cc6718c78aa889d289004707f2.html b/group__context_ga6fd276cc6718c78aa889d289004707f2.html new file mode 100644 index 0000000..00aff5f --- /dev/null +++ b/group__context_ga6fd276cc6718c78aa889d289004707f2.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_new_sub_path + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_new_sub_path()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_new_sub_path (VkvgContext ctx)
+
+ +

Start new sub path, no current point is defined.

+

If the current path is empty, this function has no effect.

Parameters
+ + +
ctxThe vkvg context pointer.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga70c154560a0c15922815cfe7d6530312.html b/group__context_ga70c154560a0c15922815cfe7d6530312.html new file mode 100644 index 0000000..15cf824 --- /dev/null +++ b/group__context_ga70c154560a0c15922815cfe7d6530312.html @@ -0,0 +1,224 @@ + + + + + + + + + VKVG: vkvg_rectangle + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rectangle()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_rectangle (VkvgContext ctx,
float x,
float y,
float w,
float h 
)
+
+ +

Add an axis aligned rectangle subpath to the current path.

+

Adds a closed sub-path rectangle of the given size to the current path at position (x, y).

Parameters
+ + + + + + +
ctxThe vkvg context pointer.
xThe x coordinate of the top left corner of the rectangle to emit.
yThe y coordinate of the top left corner of the rectangle to emit.
wThe width in pixel of the rectangle to draw.
hThe height in pixel of the rectangle to draw.
+
+
+
Returns
VKVG_STATUS_SUCCESS or VKVG_STATUS_INVALID_RECT if width or height is equal to 0.
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7316a9d4a70cbc592923c8d3410df077.html b/group__context_ga7316a9d4a70cbc592923c8d3410df077.html new file mode 100644 index 0000000..66bd23b --- /dev/null +++ b/group__context_ga7316a9d4a70cbc592923c8d3410df077.html @@ -0,0 +1,216 @@ + + + + + + + + + VKVG: vkvg_set_source_surface + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_source_surface()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_source_surface (VkvgContext ctx,
VkvgSurface surf,
float x,
float y 
)
+
+ +

use supplied surface as current pattern.

+

set VkvgSurface as the current context source.

Parameters
+ + + + + +
ctxa valid vkvg Context
surfthe vkvg surface to use as source.
xan x offset to apply for drawing operations using this surface.
yan y offset to apply for drawing operations using this surface.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga73db2af35f3339bc926854a492560964.html b/group__context_ga73db2af35f3339bc926854a492560964.html new file mode 100644 index 0000000..25a2bec --- /dev/null +++ b/group__context_ga73db2af35f3339bc926854a492560964.html @@ -0,0 +1,202 @@ + + + + + + + + + VKVG: vkvg_set_source + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_source()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_source (VkvgContext ctx,
VkvgPattern pat 
)
+
+ +

set supplied pattern as current source.

+

set VkvgPattern as the new source for the targeted context.

Parameters
+ + + +
ctxa valid vkvg Context
patthe new pattern to use as source for further drawing operations.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga74f4c24e04116105ddc91b31a174ed34.html b/group__context_ga74f4c24e04116105ddc91b31a174ed34.html new file mode 100644 index 0000000..1e5dc52 --- /dev/null +++ b/group__context_ga74f4c24e04116105ddc91b31a174ed34.html @@ -0,0 +1,229 @@ + + + + + + + + + VKVG: vkvg_elliptic_arc_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_elliptic_arc_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_elliptic_arc_to (VkvgContext ctx,
float x2,
float y2,
bool largeArc,
bool counterClockWise,
float rx,
float ry,
float phi 
)
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga78687897d394221132d57809244a2bde.html b/group__context_ga78687897d394221132d57809244a2bde.html new file mode 100644 index 0000000..7f0105c --- /dev/null +++ b/group__context_ga78687897d394221132d57809244a2bde.html @@ -0,0 +1,193 @@ + + + + + + + + + VKVG: vkvg_set_opacity + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_opacity()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_opacity (VkvgContext ctx,
float opacity 
)
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga79802b5c678d1ab84a4f5ef560e77e29.html b/group__context_ga79802b5c678d1ab84a4f5ef560e77e29.html new file mode 100644 index 0000000..f068c25 --- /dev/null +++ b/group__context_ga79802b5c678d1ab84a4f5ef560e77e29.html @@ -0,0 +1,207 @@ + + + + + + + + + VKVG: vkvg_text_extents + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_extents()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_text_extents (VkvgContext ctx,
const char * text,
vkvg_text_extents_textents 
)
+
+
Parameters
+ + + + +
ctxa valid vkvg Context
text
extents
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga79ca5efa6ffc3025bda30a1d0ed3e2ce.html b/group__context_ga79ca5efa6ffc3025bda30a1d0ed3e2ce.html new file mode 100644 index 0000000..66bb43b --- /dev/null +++ b/group__context_ga79ca5efa6ffc3025bda30a1d0ed3e2ce.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_get_matrix + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_matrix()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_get_matrix (VkvgContext ctx,
const vkvg_matrix_tmatrix 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
matrix
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7b84dd59cc0b3d116948a89ff7ad53f8.html b/group__context_ga7b84dd59cc0b3d116948a89ff7ad53f8.html new file mode 100644 index 0000000..fc311a3 --- /dev/null +++ b/group__context_ga7b84dd59cc0b3d116948a89ff7ad53f8.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_fill + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_fill()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_fill (VkvgContext ctx)
+
+ +

Fill command.

+

Perform the filling of the current path. If no path is defined, this command has no effect. The current path is reseted after this operation.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7c420f18b584d664ba272351503b552a.html b/group__context_ga7c420f18b584d664ba272351503b552a.html new file mode 100644 index 0000000..aa8febd --- /dev/null +++ b/group__context_ga7c420f18b584d664ba272351503b552a.html @@ -0,0 +1,209 @@ + + + + + + + + + VKVG: vkvg_rel_line_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rel_line_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rel_line_to (VkvgContext ctx,
float dx,
float dy 
)
+
+ +

Add a line to the current path from the current point to the coordinate relative to it.

+

Given a current point of (x, y), after this call the current point will be (x + dx, y + dy). If no current point is defined, this function call is equivalent to a single #move_to command to the absolute position given by the x and y arguments.

Parameters
+ + + + +
ctxThe vkvg context pointer.
dxdelta x
dydelta y
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7e937e021bf96bd38de3e478bf80c3e7.html b/group__context_ga7e937e021bf96bd38de3e478bf80c3e7.html new file mode 100644 index 0000000..b4094ba --- /dev/null +++ b/group__context_ga7e937e021bf96bd38de3e478bf80c3e7.html @@ -0,0 +1,231 @@ + + + + + + + + + VKVG: vkvg_arc_negative + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_arc_negative()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_arc_negative (VkvgContext ctx,
float xc,
float yc,
float radius,
float a1,
float a2 
)
+
+ +

Add a circular arc in counter clockwise order to the current path.

+

Adds a circular arc in counter clockwise order of the given radius to the current path following angles of a trigonometric circle. After this call the current point will be the last computed point of the arc. The arc is centered at (xc , yc ), begins at angle a1 and proceeds in the direction of decreasing angles to end at angle a2. If a2 is greater than a1, it will be progressively decreased by 2*PI until it is less than a1.

+

See vkvg_arc for more details. This function differs only in the direction of the arc between the two angles.

Parameters
+ + + + + + + +
ctxThe vkvg context pointer.
xccenter x coordinate
xycenter y coordinate
radiusThe radius of the arc.
a1start angle in radians of the arc as if on a trigonometric circle.
a2end angle in radians of the arc to draw.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7f1817e3b786b376348af666b2f0520a.html b/group__context_ga7f1817e3b786b376348af666b2f0520a.html new file mode 100644 index 0000000..b6ac919 --- /dev/null +++ b/group__context_ga7f1817e3b786b376348af666b2f0520a.html @@ -0,0 +1,223 @@ + + + + + + + + + VKVG: vkvg_set_source_rgba + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_source_rgba()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_source_rgba (VkvgContext ctx,
float r,
float g,
float b,
float a 
)
+
+ +

set color with alpha.

+

Set current source for drawing to the solid color defined by the rgba components with 'a' for transparency.

Parameters
+ + + + + + +
ctxa valid vkvg Context
rthe red component of the color.
gthe green component of the color.
bthe blue component of the color.
athe alpha component holding the transparency for the current color.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7f881ada9c9c463683359d84e876e695.html b/group__context_ga7f881ada9c9c463683359d84e876e695.html new file mode 100644 index 0000000..38a2177 --- /dev/null +++ b/group__context_ga7f881ada9c9c463683359d84e876e695.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_reset_clip + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_reset_clip()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_reset_clip (VkvgContext ctx)
+
+ +

Reset the current clip region.

+

Reset the current clip region to its original, unrestricted state.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga7fd336046c4afa45de5e5473faed9b2d.html b/group__context_ga7fd336046c4afa45de5e5473faed9b2d.html new file mode 100644 index 0000000..03f6f34 --- /dev/null +++ b/group__context_ga7fd336046c4afa45de5e5473faed9b2d.html @@ -0,0 +1,229 @@ + + + + + + + + + VKVG: vkvg_rel_elliptic_arc_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rel_elliptic_arc_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rel_elliptic_arc_to (VkvgContext ctx,
float x2,
float y2,
bool largeArc,
bool counterClockWise,
float rx,
float ry,
float phi 
)
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga88295a0e1ad4344a05de82c54b7159db.html b/group__context_ga88295a0e1ad4344a05de82c54b7159db.html new file mode 100644 index 0000000..53c02fb --- /dev/null +++ b/group__context_ga88295a0e1ad4344a05de82c54b7159db.html @@ -0,0 +1,202 @@ + + + + + + + + + VKVG: vkvg_select_font_face + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_select_font_face()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_select_font_face (VkvgContext ctx,
const char * name 
)
+
+ +

Try find font with the specified name using the FontConfig library.

+
Parameters
+ + + +
ctxa valid vkvg Context
nameA name to be recognized by the FontConfig library
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga89a8aa13acca2fdae86a6f94912513b4.html b/group__context_ga89a8aa13acca2fdae86a6f94912513b4.html new file mode 100644 index 0000000..cc75d28 --- /dev/null +++ b/group__context_ga89a8aa13acca2fdae86a6f94912513b4.html @@ -0,0 +1,218 @@ + + + + + + + + + VKVG: vkvg_set_source_rgb + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_source_rgb()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_source_rgb (VkvgContext ctx,
float r,
float g,
float b 
)
+
+ +

set color as new source.

+

Set current source to the solid color defined by the rgb components.

+
Parameters
+ + + + + + +
ctxa valid vkvg Context
rthe red component of the color.
gthe green component of the color.
bthe blue component of the color.
athe alpha component holding the transparency for the current color.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga8acf97c1e4ae8ab67764a96a0d5d7b9c.html b/group__context_ga8acf97c1e4ae8ab67764a96a0d5d7b9c.html new file mode 100644 index 0000000..a0151e7 --- /dev/null +++ b/group__context_ga8acf97c1e4ae8ab67764a96a0d5d7b9c.html @@ -0,0 +1,234 @@ + + + + + + + + + VKVG: vkvg_arc + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_arc()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_arc (VkvgContext ctx,
float xc,
float yc,
float radius,
float a1,
float a2 
)
+
+ +

Adds a circular arc of the given radius to the current path.

+

Adds a circular arc in clockwise order of the given radius to the current path following angles of a trigonometric circle. After this call the current point will be the last computed point of the arc. The arc is centered at (xc , yc ), begins at angle a1 and proceeds in the direction of increasing angles to end at angle a2. If a2 is less than a1, it will be progressively increased by 2*PI until it is greater than a1.

+

If there is a current point, an initial line segment will be added to the path to connect the current point to the beginning of the arc. If this initial line is undesired, it can be avoided by calling vkvg_new_sub_path() before calling vkvg_arc().

+

Angles are measured in radians. An angle of 0.0 is in the direction of the positive X axis. An angle of PI/2 radians (90 degrees) is in the direction of the positive Y axis. Angles increase in the direction from the positive X axis toward the positive Y axis. So with the default transformation matrix, angles increase in a clockwise direction.

+
Remarks
To convert from degrees to radians, use degrees * (PI/180).
+
Parameters
+ + + + + + + +
ctxThe vkvg context pointer.
xccenter x coordinate
xycenter y coordinate
radiusThe radius of the arc.
a1start angle in radians of the arc as if on a trigonometric circle.
a2end angle in radians of the arc to draw.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga8ca1adfc2ff436c4f1e76f46ba14d9b0.html b/group__context_ga8ca1adfc2ff436c4f1e76f46ba14d9b0.html new file mode 100644 index 0000000..7e708fb --- /dev/null +++ b/group__context_ga8ca1adfc2ff436c4f1e76f46ba14d9b0.html @@ -0,0 +1,216 @@ + + + + + + + + + VKVG: vkvg_load_font_from_memory + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_load_font_from_memory()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_load_font_from_memory (VkvgContext ctx,
unsigned char * fontBuffer,
long fontBufferByteSize,
const char * name 
)
+
+ +

Select a new font by providing a pointer on the font file loaded in memory and its size in byte.

+
Parameters
+ + + + + +
ctxa valid vkvg Context
fontBuffera pointer to a raw font file loaded in memory.
fontBufferByteSizethe size of the font buffer in bytes.
nameA short name to select this font afteward
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga93286454cb5af21e9ddf69635e1351ef.html b/group__context_ga93286454cb5af21e9ddf69635e1351ef.html new file mode 100644 index 0000000..5d9551d --- /dev/null +++ b/group__context_ga93286454cb5af21e9ddf69635e1351ef.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_set_font_size + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_font_size()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_font_size (VkvgContext ctx,
uint32_t size 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
size
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga94c7fd0444bb8b997a780e1895125837.html b/group__context_ga94c7fd0444bb8b997a780e1895125837.html new file mode 100644 index 0000000..a645438 --- /dev/null +++ b/group__context_ga94c7fd0444bb8b997a780e1895125837.html @@ -0,0 +1,223 @@ + + + + + + + + + VKVG: vkvg_rel_quadratic_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rel_quadratic_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rel_quadratic_to (VkvgContext ctx,
float x1,
float y1,
float x2,
float y2 
)
+
+ +

Add a quadratic Bezizer curve to the current path relative to the current point.

+
Parameters
+ + + + + + +
ctxThe vkvg context pointer.
x1The X coordinate of the control point relative to the current point.
y1The Y coordinate of the control point relative to the current point.
x2The X coordinate of the end point of the curve relative to the current point.
y2The Y coordinate of the end point of the curve relative to the current point.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga95d31d8c703526652ad57a42292146e2.html b/group__context_ga95d31d8c703526652ad57a42292146e2.html new file mode 100644 index 0000000..4b952d7 --- /dev/null +++ b/group__context_ga95d31d8c703526652ad57a42292146e2.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_paint + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_paint()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_paint (VkvgContext ctx)
+
+ +

Paint command.

+

perform a fill operation on the current path or on the full surface if no path is defined with the currently active pattern.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga96ae65bebca48a87348d960d5ba52b03.html b/group__context_ga96ae65bebca48a87348d960d5ba52b03.html new file mode 100644 index 0000000..f516cd7 --- /dev/null +++ b/group__context_ga96ae65bebca48a87348d960d5ba52b03.html @@ -0,0 +1,190 @@ + + + + + + + + + VKVG: vkvg_get_operator + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_operator()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_operator_t vkvg_get_operator (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
vkvg_operator_t
+ +
+
+
+
+ + + + + diff --git a/group__context_ga998ca7435dd87db6da6d30a5ee69f827.html b/group__context_ga998ca7435dd87db6da6d30a5ee69f827.html new file mode 100644 index 0000000..087ce8a --- /dev/null +++ b/group__context_ga998ca7435dd87db6da6d30a5ee69f827.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_transform + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_transform()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_transform (VkvgContext ctx,
const vkvg_matrix_tmatrix 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
matrix
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_ga99ca38817ba4247d2cacb2140f4ad1f6.html b/group__context_ga99ca38817ba4247d2cacb2140f4ad1f6.html new file mode 100644 index 0000000..8677f58 --- /dev/null +++ b/group__context_ga99ca38817ba4247d2cacb2140f4ad1f6.html @@ -0,0 +1,190 @@ + + + + + + + + + VKVG: vkvg_get_line_cap + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_line_cap()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_line_cap_t vkvg_get_line_cap (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
vkvg_line_cap_t
+ +
+
+
+
+ + + + + diff --git a/group__context_gaa0dd784bb4277124e6fd2546a50b970a.html b/group__context_gaa0dd784bb4277124e6fd2546a50b970a.html new file mode 100644 index 0000000..7dabdef --- /dev/null +++ b/group__context_gaa0dd784bb4277124e6fd2546a50b970a.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_fill_preserve + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_fill_preserve()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_fill_preserve (VkvgContext ctx)
+
+ +

Fill command that preserve current path.

+

Same as vkvg_fill, but don't reset the current path after the operation.

+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaa1dd0e917ca55bb68795b6973f1fa38e.html b/group__context_gaa1dd0e917ca55bb68795b6973f1fa38e.html new file mode 100644 index 0000000..bff0106 --- /dev/null +++ b/group__context_gaa1dd0e917ca55bb68795b6973f1fa38e.html @@ -0,0 +1,203 @@ + + + + + + + + + VKVG: vkvg_set_line_width + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_line_width()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_line_width (VkvgContext ctx,
float width 
)
+
+ +

set line width for the next draw command.

+

Set the current line width for the targeted context. All further calls to vkvg_stroke on this context will use this new width.

+
Parameters
+ + + +
ctxa valid vkvg Context
widthnew current line width for the context.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaa2a085eb1589cad42d21a79d967ba821.html b/group__context_gaa2a085eb1589cad42d21a79d967ba821.html new file mode 100644 index 0000000..12b7c16 --- /dev/null +++ b/group__context_gaa2a085eb1589cad42d21a79d967ba821.html @@ -0,0 +1,216 @@ + + + + + + + + + VKVG: vkvg_get_dash + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_dash()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_get_dash (VkvgContext ctx,
const float * dashes,
uint32_t * num_dashes,
float * offset 
)
+
+ +

get current dash settings.

+

Get the current dash configuration for the supplied Context. If dashes pointer is NULL, only count and offset are returned, useful to query dash array dimension first.

Parameters
+ + + + + +
ctxa valid vkvg Context
dashes[out]return value for the dash array. If count is 0, this pointer stay untouched. If NULL, only count and offset are returned.
num_dashes[out]return length of dash array or 0 if dash is not set.
offset[out]return value for the current dash offset
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaa5967f211de903e7feb6bf12ae909a06.html b/group__context_gaa5967f211de903e7feb6bf12ae909a06.html new file mode 100644 index 0000000..b0100ee --- /dev/null +++ b/group__context_gaa5967f211de903e7feb6bf12ae909a06.html @@ -0,0 +1,231 @@ + + + + + + + + + VKVG: vkvg_rounded_rectangle + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rounded_rectangle()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_rounded_rectangle (VkvgContext ctx,
float x,
float y,
float w,
float h,
float radius 
)
+
+ +

Add an axis aligned rectangle with rounded corners to the current path.

+

Adds a closed sub-path rectangle of the given size to the current path at position (x, y).

Parameters
+ + + + + + + +
ctxThe vkvg context pointer.
xThe x coordinate of the top left corner of the rectangle to emit.
yThe y coordinate of the top left corner of the rectangle to emit.
wThe width in pixel of the rectangle to draw.
hThe height in pixel of the rectangle to draw.
radiusThe radius of the corners.
+
+
+
Returns
VKVG_STATUS_SUCCESS or VKVG_STATUS_INVALID_RECT if width or height is equal to 0.
+ +
+
+
+
+ + + + + diff --git a/group__context_gaa7356999fb385658dc2ff6c182e639c5.html b/group__context_gaa7356999fb385658dc2ff6c182e639c5.html new file mode 100644 index 0000000..5a3e7d3 --- /dev/null +++ b/group__context_gaa7356999fb385658dc2ff6c182e639c5.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_get_reference_count + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_reference_count()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_get_reference_count (VkvgContext ctx)
+
+ +

Get the current reference count of this context.

+
Parameters
+ + +
Thevkvg context to query.
+
+
+
Returns
The current reference count for this context.
+ +
+
+
+
+ + + + + diff --git a/group__context_gaa7a77d72856d41276186df5bb2299339.html b/group__context_gaa7a77d72856d41276186df5bb2299339.html new file mode 100644 index 0000000..4725e4c --- /dev/null +++ b/group__context_gaa7a77d72856d41276186df5bb2299339.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_status + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_status()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_status_t vkvg_status (VkvgContext ctx)
+
+ +

Get context status.

+

Get the current context status.

+
Parameters
+ + +
ctxThe vkvg context to query the status for.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaaa044940f56de70161b3821934077c7b.html b/group__context_gaaa044940f56de70161b3821934077c7b.html new file mode 100644 index 0000000..9609e5c --- /dev/null +++ b/group__context_gaaa044940f56de70161b3821934077c7b.html @@ -0,0 +1,209 @@ + + + + + + + + + VKVG: vkvg_line_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_line_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_line_to (VkvgContext ctx,
float x,
float y 
)
+
+ +

Add a line to the current path from the current point to the coordinate given in arguments.

+

After this call, the current position will be (x,y). If no current point is defined, this function call is equivalent to a single vkvg_move_to command.

Parameters
+ + + + +
ctxThe vkvg context pointer.
xabsolute x coordinate of second point
yaboslute y coordinate of second point
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaaaab7e5a95eab3cb812bbe4865d85951.html b/group__context_gaaaab7e5a95eab3cb812bbe4865d85951.html new file mode 100644 index 0000000..fde5f57 --- /dev/null +++ b/group__context_gaaaab7e5a95eab3cb812bbe4865d85951.html @@ -0,0 +1,209 @@ + + + + + + + + + VKVG: vkvg_load_font_from_path + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_load_font_from_path()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_load_font_from_path (VkvgContext ctx,
const char * path,
const char * name 
)
+
+ +

Select a new font by providing its file path.

+
Parameters
+ + + + +
ctxa valid vkvg Context
pathA valid font file path.
nameA short name to select this font afteward
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaaddca8228bb495010ea67cb312db28d5.html b/group__context_gaaddca8228bb495010ea67cb312db28d5.html new file mode 100644 index 0000000..c4d55b6 --- /dev/null +++ b/group__context_gaaddca8228bb495010ea67cb312db28d5.html @@ -0,0 +1,209 @@ + + + + + + + + + VKVG: vkvg_rel_move_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rel_move_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rel_move_to (VkvgContext ctx,
float x,
float y 
)
+
+ +

Move the context pen relative to the current point.

+

This command will set the current pen position of the context to the coordinate given by the x and y deltas in arguments. If the current path is not empty, this command will start a new subpath and set the current pen position.

Parameters
+ + + + +
ctxThe vkvg context pointer.
xdelta in the horizontal direction.
ydelta in the vertical direction.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaadec811521b3edb7a509bd9c6e370ee5.html b/group__context_gaadec811521b3edb7a509bd9c6e370ee5.html new file mode 100644 index 0000000..abd0957 --- /dev/null +++ b/group__context_gaadec811521b3edb7a509bd9c6e370ee5.html @@ -0,0 +1,217 @@ + + + + + + + + + VKVG: vkvg_ellipse + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_ellipse()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_ellipse (VkvgContext ctx,
float radiusX,
float radiusY,
float x,
float y,
float rotationAngle 
)
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gab9a9036245eb304f4214705879326f13.html b/group__context_gab9a9036245eb304f4214705879326f13.html new file mode 100644 index 0000000..a7ec5d2 --- /dev/null +++ b/group__context_gab9a9036245eb304f4214705879326f13.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_set_operator + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_operator()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_operator (VkvgContext ctx,
vkvg_operator_t op 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
op
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gabfc11b67746a4b438580242c79ef6dce.html b/group__context_gabfc11b67746a4b438580242c79ef6dce.html new file mode 100644 index 0000000..f5d2126 --- /dev/null +++ b/group__context_gabfc11b67746a4b438580242c79ef6dce.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_destroy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_destroy()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_destroy (VkvgContext ctx)
+
+ +

Decrement the reference count on the context by one. Destroy it if count reach 0.

+
Parameters
+ + +
ctxThe vkvg context to destroy.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gac2c7805769e61c06151b52f3fb52986d.html b/group__context_gac2c7805769e61c06151b52f3fb52986d.html new file mode 100644 index 0000000..411f780 --- /dev/null +++ b/group__context_gac2c7805769e61c06151b52f3fb52986d.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_has_current_point + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_has_current_point()

+ +
+
+ + + + + + + + +
vkvg_public bool vkvg_has_current_point (VkvgContext ctx)
+
+ +

Returns whether a current point is defined on the current path. See vkvg_get_current_point() for details on the current point.

+
Parameters
+ + +
ctxa valig vkvg Context
+
+
+
Returns
bool whether a current point is defined
+ +
+
+
+
+ + + + + diff --git a/group__context_gac418bd821f5e47d7c9deb6f58b5bc03d.html b/group__context_gac418bd821f5e47d7c9deb6f58b5bc03d.html new file mode 100644 index 0000000..132dacc --- /dev/null +++ b/group__context_gac418bd821f5e47d7c9deb6f58b5bc03d.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_clear + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_clear()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_clear (VkvgContext ctx)
+
+ +

Clear surface.

+

Clear surface currently bound to the context. Color and clipping are reset to 0. New surfaces are automatically cleared when bound for the first time to a context by calling vkvg_create.

Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gacd68ee83c078f62d89709034c562897b.html b/group__context_gacd68ee83c078f62d89709034c562897b.html new file mode 100644 index 0000000..3baf242 --- /dev/null +++ b/group__context_gacd68ee83c078f62d89709034c562897b.html @@ -0,0 +1,192 @@ + + + + + + + + + VKVG: vkvg_create + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_create()

+ +
+
+ + + + + + + + +
vkvg_public VkvgContext vkvg_create (VkvgSurface surf)
+
+ +

Create a new vkvg context used for drawing on surfaces.

+
Parameters
+ + +
surfThe target surface of the drawing operations.
+
+
+
Returns
A new VkvgContext or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/group__context_gace9e98ac61a0fbdc79d1cee9291c15bb.html b/group__context_gace9e98ac61a0fbdc79d1cee9291c15bb.html new file mode 100644 index 0000000..0e6b7a1 --- /dev/null +++ b/group__context_gace9e98ac61a0fbdc79d1cee9291c15bb.html @@ -0,0 +1,190 @@ + + + + + + + + + VKVG: vkvg_get_source + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_source()

+ +
+
+ + + + + + + + +
vkvg_public VkvgPattern vkvg_get_source (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+
Returns
VkvgPattern
+ +
+
+
+
+ + + + + diff --git a/group__context_gacf62b2602170792417398c51511dee67.html b/group__context_gacf62b2602170792417398c51511dee67.html new file mode 100644 index 0000000..9a3afc5 --- /dev/null +++ b/group__context_gacf62b2602170792417398c51511dee67.html @@ -0,0 +1,207 @@ + + + + + + + + + VKVG: vkvg_translate + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_translate()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_translate (VkvgContext ctx,
float dx,
float dy 
)
+
+
Parameters
+ + + + +
ctxa valid vkvg Context
dx
dy
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gad571c4011138a2cba97fe31709faafc7.html b/group__context_gad571c4011138a2cba97fe31709faafc7.html new file mode 100644 index 0000000..b78db22 --- /dev/null +++ b/group__context_gad571c4011138a2cba97fe31709faafc7.html @@ -0,0 +1,223 @@ + + + + + + + + + VKVG: vkvg_quadratic_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_quadratic_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_quadratic_to (VkvgContext ctx,
float x1,
float y1,
float x2,
float y2 
)
+
+ +

Add a quadratic Bezizer curve to the current path.

+

If there is no current point before the call to vkvg_quadratic_to() this function will behave as if preceded by a call to vkvg_move_to(ctx, x1, y1).

Parameters
+ + + + + + +
ctxThe vkvg context pointer.
x1The X coordinate of the control point.
y1The Y coordinate of the control point.
x2The X coordinate of the end point of the curve.
y2The Y coordinate of the end point of the curve.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gad6e3a8dca42362ceebe8d949058ad3b4.html b/group__context_gad6e3a8dca42362ceebe8d949058ad3b4.html new file mode 100644 index 0000000..94b37d8 --- /dev/null +++ b/group__context_gad6e3a8dca42362ceebe8d949058ad3b4.html @@ -0,0 +1,223 @@ + + + + + + + + + VKVG: vkvg_path_extents + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_path_extents()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_path_extents (VkvgContext ctx,
float * x1,
float * y1,
float * x2,
float * y2 
)
+
+ +

vkvg_path_extents

+
Parameters
+ + + + + + +
ctxa valid Context
x1left of the resulting extents
y1top of the resulting extents
x2right of the resulting extents
y2bottom of the resulting extents
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gad8303a290f342f71dd233bef3f02441b.html b/group__context_gad8303a290f342f71dd233bef3f02441b.html new file mode 100644 index 0000000..b1b5def --- /dev/null +++ b/group__context_gad8303a290f342f71dd233bef3f02441b.html @@ -0,0 +1,201 @@ + + + + + + + + + VKVG: vkvg_text_run_get_glyph_position + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_run_get_glyph_position()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_text_run_get_glyph_position (VkvgText textRun,
uint32_t index,
vkvg_glyph_info_tpGlyphInfo 
)
+
+ +

retrieve glyph positions.

+ +
+
+
+
+ + + + + diff --git a/group__context_gadf5a54205231c9026559eb3a912578ef.html b/group__context_gadf5a54205231c9026559eb3a912578ef.html new file mode 100644 index 0000000..0cc9c46 --- /dev/null +++ b/group__context_gadf5a54205231c9026559eb3a912578ef.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_flush + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_flush()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_flush (VkvgContext ctx)
+
+ +

Perform all the pending drawing operations on a context.

+

Drawing operations by a context on a surface are delayed in several cases for optimisation purpose. Calling vkvg_flush on a context ensure that all possibly delayed drawing command are executed. The context is automatically flushed on destruction.

Parameters
+ + +
ctxThe vkvg context to flush.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gadfcb5fd125984c0399c5f6bc9619e56a.html b/group__context_gadfcb5fd125984c0399c5f6bc9619e56a.html new file mode 100644 index 0000000..67c87b8 --- /dev/null +++ b/group__context_gadfcb5fd125984c0399c5f6bc9619e56a.html @@ -0,0 +1,210 @@ + + + + + + + + + VKVG: vkvg_text_run_create_with_length + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_run_create_with_length()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgText vkvg_text_run_create_with_length (VkvgContext ctx,
const char * text,
uint32_t length 
)
+
+ +

Create a new text run for a non null terminated string.

+
Parameters
+ + + + +
ctxa valid vkvg Context
textnon null terminated utf8 string.
lengthglyphs count, not to be confused with byte length.
+
+
+
Returns
VkvgText
+ +
+
+
+
+ + + + + diff --git a/group__context_gae025c30c061c0264d4a9f469e8c05d1c.html b/group__context_gae025c30c061c0264d4a9f469e8c05d1c.html new file mode 100644 index 0000000..4c9e39e --- /dev/null +++ b/group__context_gae025c30c061c0264d4a9f469e8c05d1c.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_rotate + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_rotate()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_rotate (VkvgContext ctx,
float radians 
)
+
+
Parameters
+ + + +
ctxa valid vkvg Context
radians
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gae1be850b3f4a6b01e35344bd033bf3d0.html b/group__context_gae1be850b3f4a6b01e35344bd033bf3d0.html new file mode 100644 index 0000000..717e5b8 --- /dev/null +++ b/group__context_gae1be850b3f4a6b01e35344bd033bf3d0.html @@ -0,0 +1,238 @@ + + + + + + + + + VKVG: vkvg_curve_to + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_curve_to()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_curve_to (VkvgContext ctx,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3 
)
+
+ +

Adds a cubic Bézier spline to the current path.

+

Adds a cubic Bézier spline to the path from the current point to position (x3, y3), using (x1, y1) and (x2, y2) as the control points. After this call the current point will be (x3, y3).

+

If there is no current point before the call to vkvg_curve_to() this function will behave as if preceded by a call to vkvg_move_to(ctx, x1, y1).

Parameters
+ + + + + + + + +
ctxThe vkvg context pointer.
x1The X coordinate of the first control point.
y1The Y coordinate of the first control point.
x2The X coordinate of the second control point.
y2The Y coordinate of the second control point.
x3The X coordinate of the end of the curve.
y3The Y coordinate of the end of the curve.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gae3a369a75b9d87c84547a5cd05a221e6.html b/group__context_gae3a369a75b9d87c84547a5cd05a221e6.html new file mode 100644 index 0000000..ee68486 --- /dev/null +++ b/group__context_gae3a369a75b9d87c84547a5cd05a221e6.html @@ -0,0 +1,189 @@ + + + + + + + + + VKVG: vkvg_save + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_save()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_save (VkvgContext ctx)
+
+
Parameters
+ + +
ctxa valid vkvg Context
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaf177e82330cb95a71c9517f8aacd6365.html b/group__context_gaf177e82330cb95a71c9517f8aacd6365.html new file mode 100644 index 0000000..0a2e4e9 --- /dev/null +++ b/group__context_gaf177e82330cb95a71c9517f8aacd6365.html @@ -0,0 +1,191 @@ + + + + + + + + + VKVG: vkvg_text_run_destroy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_run_destroy()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_text_run_destroy (VkvgText textRun)
+
+ +

Release ressources holded by the text run.

+
Parameters
+ + +
VkvgtextRunA valid VkvgText pointer.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gafa8b8c1636cb6c479a851fc04f7741ad.html b/group__context_gafa8b8c1636cb6c479a851fc04f7741ad.html new file mode 100644 index 0000000..8ed00f2 --- /dev/null +++ b/group__context_gafa8b8c1636cb6c479a851fc04f7741ad.html @@ -0,0 +1,200 @@ + + + + + + + + + VKVG: vkvg_text_run_get_extents + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_run_get_extents()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_text_run_get_extents (VkvgText textRun,
vkvg_text_extents_textents 
)
+
+
Parameters
+ + + +
textRun
extents
+
+
+ +
+
+
+
+ + + + + diff --git a/group__context_gaff5bbccf8cc53721ca2666c56272256e.html b/group__context_gaff5bbccf8cc53721ca2666c56272256e.html new file mode 100644 index 0000000..2053358 --- /dev/null +++ b/group__context_gaff5bbccf8cc53721ca2666c56272256e.html @@ -0,0 +1,203 @@ + + + + + + + + + VKVG: vkvg_text_run_create + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_text_run_create()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public VkvgText vkvg_text_run_create (VkvgContext ctx,
const char * text 
)
+
+ +

Create a new text run.

+
Parameters
+ + + +
ctxa valid vkvg Context
textNull terminated utf8 string.
+
+
+
Returns
VkvgText
+ +
+
+
+
+ + + + + diff --git a/group__device.html b/group__device.html new file mode 100644 index 0000000..ae34884 --- /dev/null +++ b/group__device.html @@ -0,0 +1,126 @@ + + + + + + + + + VKVG: Device + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Device
+
+
+

Description

+

create or use an existing vulkan context for vkvg.

+

VkvgDevice is the starting point of a vkvg rendering infrastructure. It connects an existing vulkan context with vkvg, or may create a new one.

+

Most of the vulkan rendering component (pipelines, renderpass, ..) are part of the VkvgDevice, their are shared among drawing contexts.

+

Antialiasing level is configured when creating the device by selecting the sample count. vkvg_device_create will create a non-antialiased dev by selecting VK_SAMPLE_COUNT_1_BIT as sample count. To create antialiased rendering device, call vkvg_device_create_multisample with VkSampleCountFlags greater than one.

+

vkvg use a single frame buffer format for now: VK_FORMAT_B8G8R8A8_UNORM.

+

Device holds the font cache so that each time a context draws text, the same cache is used.

+ + + + + +

+Typedefs

typedef struct _vkvg_device_t * VkvgDevice
 Opaque pointer on a Vkvg device structure. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public void vkvg_device_set_thread_aware (VkvgDevice dev, uint32_t thread_awayre)
 
vkvg_public VkvgDevice vkvg_device_create (VkSampleCountFlags samples, bool deferredResolve)
 Create a new vkvg device. More...
 
vkvg_public VkvgDevice vkvg_device_create_from_vk (VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex)
 Create a new vkvg device from an existing vulkan logical device. More...
 
vkvg_public VkvgDevice vkvg_device_create_from_vk_multisample (VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex, VkSampleCountFlags samples, bool deferredResolve)
 Create a new multisampled vkvg device. More...
 
vkvg_public void vkvg_device_destroy (VkvgDevice dev)
 Decrement the reference count of the device by 1. Release all it's ressources if count reach 0. More...
 
vkvg_public vkvg_status_t vkvg_device_status (VkvgDevice dev)
 Get the current status of the device. More...
 
vkvg_public VkvgDevice vkvg_device_reference (VkvgDevice dev)
 Increment the reference count on this device. More...
 
vkvg_public uint32_t vkvg_device_get_reference_count (VkvgDevice dev)
 Query the reference count of the device. More...
 
vkvg_public void vkvg_device_set_dpy (VkvgDevice dev, int hdpy, int vdpy)
 Set the screen dot per inch for this device. More...
 
vkvg_public void vkvg_device_get_dpy (VkvgDevice dev, int *hdpy, int *vdpy)
 Get the current dpy values. More...
 
vkvg_public void vkvg_get_required_instance_extensions (const char **pExtensions, uint32_t *pExtCount)
 query required instance extensions for vkvg. More...
 
vkvg_public void vkvg_get_required_device_extensions (VkPhysicalDevice phy, const char **pExtensions, uint32_t *pExtCount)
 query required device extensions for vkvg. More...
 
vkvg_public const void * vkvg_get_device_requirements (VkPhysicalDeviceFeatures *pEnabledFeatures)
 get vulkan device creation requirement to fit vkvg needs. More...
 
+
+ + + + + diff --git a/group__device_ga10ea171640ba5da3027c60390725666c.html b/group__device_ga10ea171640ba5da3027c60390725666c.html new file mode 100644 index 0000000..c9d44c7 --- /dev/null +++ b/group__device_ga10ea171640ba5da3027c60390725666c.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_get_required_device_extensions + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_required_device_extensions()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_get_required_device_extensions (VkPhysicalDevice phy,
const char ** pExtensions,
uint32_t * pExtCount 
)
+
+ +

query required device extensions for vkvg.

+
Parameters
+ + + + +
phythe vulkan physical device that will be used to create the VkvgDevice.
pExtensionsa valid pointer to the array of extension names to fill, the size may be queried by calling this method with pExtension being a NULL pointer.
pExtCounta valid pointer to an integer that will be fill with the required extension count.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__device_ga110a3746370bc3a61aa95e048e739d2e.html b/group__device_ga110a3746370bc3a61aa95e048e739d2e.html new file mode 100644 index 0000000..4654146 --- /dev/null +++ b/group__device_ga110a3746370bc3a61aa95e048e739d2e.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_device_get_dpy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_get_dpy()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_device_get_dpy (VkvgDevice dev,
int * hdpy,
int * vdpy 
)
+
+ +

Get the current dpy values.

+

Get the current values for horizontal and vertical dot per inch of the screen for this device. The default values for horizontal and vertical dpy on device creation is 96.

Parameters
+ + + + +
devThe vkvg device to get the dpy configuration for.
hdpy[out]The current horizontal dot per inch.
vdpy[out]The current vertical dot per inch.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__device_ga1d3b3027ad47c29d49a82705ff21c802.html b/group__device_ga1d3b3027ad47c29d49a82705ff21c802.html new file mode 100644 index 0000000..9b64f30 --- /dev/null +++ b/group__device_ga1d3b3027ad47c29d49a82705ff21c802.html @@ -0,0 +1,158 @@ + + + + + + + + + VKVG: vkvg_device_create_from_vk + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_create_from_vk()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgDevice vkvg_device_create_from_vk (VkInstance inst,
VkPhysicalDevice phy,
VkDevice vkdev,
uint32_t qFamIdx,
uint32_t qIndex 
)
+
+ +

Create a new vkvg device from an existing vulkan logical device.

+

Create a new VkvgDevice connected to the vulkan context define by an instance, a physical device, a logical device, a graphical queue family index and an its index.

+

On success, create a new vkvg device and set its reference count to 1. On error, query the device status by calling vkvg_device_status(). Error could be one of the following:

    +
  • VKVG_STATUS_INVALID_FORMAT: the combination of image format and tiling is not supported
  • +
  • VKVG_STATUS_NULL_POINTER: vulkan function pointer fetching failed.
  • +
+
Parameters
+ + + + + + +
insta valid Vulkan instance to create the device from.
phyVulkan physical device used to create the vkvg device.
vkdevVulkan logical device to create the vkvg device for.
qFamIdxQueue family Index of the graphic queue used for drawing operations.
qIndexIndex of the queue into the choosen familly, 0 in general.
+
+
+
Returns
The handle of the created vkvg device, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/group__device_ga38c54930707fd47bbdb59ee9000a6d21.html b/group__device_ga38c54930707fd47bbdb59ee9000a6d21.html new file mode 100644 index 0000000..21aa0f2 --- /dev/null +++ b/group__device_ga38c54930707fd47bbdb59ee9000a6d21.html @@ -0,0 +1,120 @@ + + + + + + + + + VKVG: vkvg_device_destroy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_destroy()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_device_destroy (VkvgDevice dev)
+
+ +

Decrement the reference count of the device by 1. Release all it's ressources if count reach 0.

+

If device is reference by several active surfaces, calling destroy will only decrement the reference count by 1. When the reference count reach 0, the vkvg device is effectively destroyed, the device pointer is freed, and vulkan objects are released. Vkvg Devices has to stay active as long as surfaces created by it are used.

Parameters
+ + +
devThe vkvg device to destroy.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__device_ga3a87ef8a0d782aa26a39ff63218ea25c.html b/group__device_ga3a87ef8a0d782aa26a39ff63218ea25c.html new file mode 100644 index 0000000..6695ab2 --- /dev/null +++ b/group__device_ga3a87ef8a0d782aa26a39ff63218ea25c.html @@ -0,0 +1,136 @@ + + + + + + + + + VKVG: vkvg_device_create + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_create()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public VkvgDevice vkvg_device_create (VkSampleCountFlags samples,
bool deferredResolve 
)
+
+ +

Create a new vkvg device.

+

Create a new VkvgDevice owning vulkan instance and device.

+

On success, create a new vkvg device and set its reference count to 1. On error, query the device status by calling vkvg_device_status. Error could be one of the following:

    +
  • VKVG_STATUS_INVALID_FORMAT: the combination of image format and tiling is not supported
  • +
  • VKVG_STATUS_NULL_POINTER: vulkan function pointer fetching failed.
  • +
+
Parameters
+ + + +
samplesThe sample count that will be setup for the surfaces created by this device.
deferredResolveIf true, the final simple sampled image of the surface will only be resolved on demand
+
+
+ +
+
+
+
+ + + + + diff --git a/group__device_ga4410787cc120fdafe8cdc480a2b02e71.html b/group__device_ga4410787cc120fdafe8cdc480a2b02e71.html new file mode 100644 index 0000000..8063b87 --- /dev/null +++ b/group__device_ga4410787cc120fdafe8cdc480a2b02e71.html @@ -0,0 +1,113 @@ + + + + + + + + + VKVG: VkvgDevice + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__device_ga4e12927c2cda70943f304f5fdbd43882.html b/group__device_ga4e12927c2cda70943f304f5fdbd43882.html new file mode 100644 index 0000000..f2d2ccb --- /dev/null +++ b/group__device_ga4e12927c2cda70943f304f5fdbd43882.html @@ -0,0 +1,121 @@ + + + + + + + + + VKVG: vkvg_device_get_reference_count + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_get_reference_count()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_device_get_reference_count (VkvgDevice dev)
+
+ +

Query the reference count of the device.

+

Get the actual reference count on this device.

Parameters
+ + +
devThe vkvg device to get the reference count for.
+
+
+
Returns
The reference count on this device.
+ +
+
+
+
+ + + + + diff --git a/group__device_ga584714cbe547b91c08904a90f269c170.html b/group__device_ga584714cbe547b91c08904a90f269c170.html new file mode 100644 index 0000000..227133f --- /dev/null +++ b/group__device_ga584714cbe547b91c08904a90f269c170.html @@ -0,0 +1,168 @@ + + + + + + + + + VKVG: vkvg_device_create_from_vk_multisample + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_create_from_vk_multisample()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgDevice vkvg_device_create_from_vk_multisample (VkInstance inst,
VkPhysicalDevice phy,
VkDevice vkdev,
uint32_t qFamIdx,
uint32_t qIndex,
VkSampleCountFlags samples,
bool deferredResolve 
)
+
+ +

Create a new multisampled vkvg device.

+

This function allows to create vkvg device for working with multisampled surfaces. Multisampling is used to smooth color transitions in drawings, making lines not pixelised and diagonal edges not stepped. Multisampling has a performance cost. The final image of the surface, accessible by the user will be a resolved single sampled image.

+
Parameters
+ + + + + + + + +
instVulkan instance to create the device from.
phyVulkan physical device used to create the vkvg device.
vkdevVulkan logical device to create the vkvg device for.
qFamIdxQueue family Index of the graphic queue used for drawing operations.
qIndexIndex of the queue into the choosen familly, 0 in general.
samplesThe sample count that will be setup for the surfaces created by this device.
deferredResolveIf true, the final simple sampled image of the surface will only be resolved on demand when calling vkvg_surface_get_vk_image or by explicitly calling vkvg_multisample_surface_resolve. If false, multisampled image is resolved on each draw operation.
+
+
+
Returns
The handle of the created vkvg device, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/group__device_ga6b1a6746ce78e41714bfa433dde3f330.html b/group__device_ga6b1a6746ce78e41714bfa433dde3f330.html new file mode 100644 index 0000000..759305c --- /dev/null +++ b/group__device_ga6b1a6746ce78e41714bfa433dde3f330.html @@ -0,0 +1,121 @@ + + + + + + + + + VKVG: vkvg_get_device_requirements + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_device_requirements()

+ +
+
+ + + + + + + + +
vkvg_public const void* vkvg_get_device_requirements (VkPhysicalDeviceFeatures * pEnabledFeatures)
+
+ +

get vulkan device creation requirement to fit vkvg needs.

+
Parameters
+ + +
pEnabledFeaturesa pointer to the feature structure to fill for the vulkan device creation.
+
+
+
Returns
the required pNext chain for the vulkan device creation. The first structure is guarantied to be VkPhysicalDeviceVulkan12Features if vulkan version is >= 1.2
+ +
+
+
+
+ + + + + diff --git a/group__device_ga7328d8f0102dd7dcf725bc3c77aa95f8.html b/group__device_ga7328d8f0102dd7dcf725bc3c77aa95f8.html new file mode 100644 index 0000000..c0144fa --- /dev/null +++ b/group__device_ga7328d8f0102dd7dcf725bc3c77aa95f8.html @@ -0,0 +1,121 @@ + + + + + + + + + VKVG: vkvg_device_reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_reference()

+ +
+
+ + + + + + + + +
vkvg_public VkvgDevice vkvg_device_reference (VkvgDevice dev)
+
+ +

Increment the reference count on this device.

+

Increment by one the reference count on the device.

Parameters
+ + +
Thevkvg device pointer to increment the reference count for.
+
+
+
Returns
+ +
+
+
+
+ + + + + diff --git a/group__device_ga76abb77e8be8a16dd7ddd03950ba168b.html b/group__device_ga76abb77e8be8a16dd7ddd03950ba168b.html new file mode 100644 index 0000000..7b3ee80 --- /dev/null +++ b/group__device_ga76abb77e8be8a16dd7ddd03950ba168b.html @@ -0,0 +1,121 @@ + + + + + + + + + VKVG: vkvg_device_status + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_status()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_status_t vkvg_device_status (VkvgDevice dev)
+
+ +

Get the current status of the device.

+

Query current status of device. See vkvg_status_t for more informations.

Parameters
+ + +
deva valid vkvg device pointer.
+
+
+
Returns
current state.
+ +
+
+
+
+ + + + + diff --git a/group__device_ga7cf75a034d9fb4a78c82724154cf73c8.html b/group__device_ga7cf75a034d9fb4a78c82724154cf73c8.html new file mode 100644 index 0000000..23bd061 --- /dev/null +++ b/group__device_ga7cf75a034d9fb4a78c82724154cf73c8.html @@ -0,0 +1,131 @@ + + + + + + + + + VKVG: vkvg_get_required_instance_extensions + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_get_required_instance_extensions()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_get_required_instance_extensions (const char ** pExtensions,
uint32_t * pExtCount 
)
+
+ +

query required instance extensions for vkvg.

+
Parameters
+ + + +
pExtensionsa valid pointer to the array of extension names to fill, the size may be queried by calling this method with pExtension being a NULL pointer.
pExtCounta valid pointer to an integer that will be fill with the required extension count.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__device_gaa7b5b0a579d1202e8d782f720f603d91.html b/group__device_gaa7b5b0a579d1202e8d782f720f603d91.html new file mode 100644 index 0000000..a59d261 --- /dev/null +++ b/group__device_gaa7b5b0a579d1202e8d782f720f603d91.html @@ -0,0 +1,122 @@ + + + + + + + + + VKVG: vkvg_device_set_thread_aware + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__device_gacee1dad855f7ceb5e803c0379e37cff5.html b/group__device_gacee1dad855f7ceb5e803c0379e37cff5.html new file mode 100644 index 0000000..b1173ae --- /dev/null +++ b/group__device_gacee1dad855f7ceb5e803c0379e37cff5.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_device_set_dpy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_device_set_dpy()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_device_set_dpy (VkvgDevice dev,
int hdpy,
int vdpy 
)
+
+ +

Set the screen dot per inch for this device.

+

Set the current values for horizontal and vertical dot per inch of the screen for this device.

Parameters
+ + + + +
devThe vkvg device to set the dpy for.
hdpyHorizontal dot per inch.
vdpyVertical dot per inch.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix.html b/group__matrix.html new file mode 100644 index 0000000..dd8295c --- /dev/null +++ b/group__matrix.html @@ -0,0 +1,128 @@ + + + + + + + + + VKVG: Matrices + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Matrices
+
+
+

Description

+

Generic matrix operations.

+

This is the reference documentation for handling matrices to use as transformation in drawing operations. Matrix computations in vkvg are taken from the cairo library.

+ + + + + +

+Data Structures

struct  vkvg_matrix_t
 vkvg matrix structure More...
 
+ + + +

+Macros

#define VKVG_IDENTITY_MATRIX   (vkvg_matrix_t){1,0,0,1,0,0}
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public void vkvg_matrix_init_identity (vkvg_matrix_t *matrix)
 Set matrix to identity. More...
 
vkvg_public void vkvg_matrix_init (vkvg_matrix_t *matrix, float xx, float yx, float xy, float yy, float x0, float y0)
 Matrix initialization. More...
 
vkvg_public void vkvg_matrix_init_translate (vkvg_matrix_t *matrix, float tx, float ty)
 Rotation matrix initialization. More...
 
vkvg_public void vkvg_matrix_init_scale (vkvg_matrix_t *matrix, float sx, float sy)
 scaling matrix initialization More...
 
vkvg_public void vkvg_matrix_init_rotate (vkvg_matrix_t *matrix, float radians)
 rotation matrix initialization More...
 
vkvg_public void vkvg_matrix_translate (vkvg_matrix_t *matrix, float tx, float ty)
 apply translation on matrix More...
 
vkvg_public void vkvg_matrix_scale (vkvg_matrix_t *matrix, float sx, float sy)
 apply scale on matrix More...
 
vkvg_public void vkvg_matrix_rotate (vkvg_matrix_t *matrix, float radians)
 apply rotation on matrix More...
 
vkvg_public void vkvg_matrix_multiply (vkvg_matrix_t *result, const vkvg_matrix_t *a, const vkvg_matrix_t *b)
 matrices multiplication More...
 
vkvg_public void vkvg_matrix_transform_distance (const vkvg_matrix_t *matrix, float *dx, float *dy)
 transform distances More...
 
vkvg_public void vkvg_matrix_transform_point (const vkvg_matrix_t *matrix, float *x, float *y)
 transform point More...
 
vkvg_public vkvg_status_t vkvg_matrix_invert (vkvg_matrix_t *matrix)
 invert matrix More...
 
vkvg_public void vkvg_matrix_get_scale (const vkvg_matrix_t *matrix, float *sx, float *sy)
 
+
+ + + + + diff --git a/group__matrix_ga053850768b56f00336573729d1ea1090.html b/group__matrix_ga053850768b56f00336573729d1ea1090.html new file mode 100644 index 0000000..07be3d4 --- /dev/null +++ b/group__matrix_ga053850768b56f00336573729d1ea1090.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_matrix_scale + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_scale()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_scale (vkvg_matrix_tmatrix,
float sx,
float sy 
)
+
+ +

apply scale on matrix

+

Apply scaling by sx and sy on the supplied transformation matrix. The effect of the new transformation is to first scale the coordinates by sx and sy, then apply the original transformation to the coordinates.

Parameters
+ + + + +
matrixa valid vkvg_matrix_t pointer on which the scaling will be applied.
sxscale in the x direction
syscale in the y direction
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga0db3d74caa93dd3b2e8595301d447bec.html b/group__matrix_ga0db3d74caa93dd3b2e8595301d447bec.html new file mode 100644 index 0000000..deaf90b --- /dev/null +++ b/group__matrix_ga0db3d74caa93dd3b2e8595301d447bec.html @@ -0,0 +1,121 @@ + + + + + + + + + VKVG: vkvg_matrix_invert + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_invert()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_status_t vkvg_matrix_invert (vkvg_matrix_tmatrix)
+
+ +

invert matrix

+

Changes matrix to be the inverse of its original value. Not all transformation matrices have inverses; if the matrix collapses points together (it is degenerate), then it has no inverse and this function will fail.

Parameters
+ + +
matrixthe matrix to invert
+
+
+
Returns
If matrix has an inverse, modifies matrix to be the inverse matrix and returns VKVG_STATUS_SUCCESS. Otherwise, returns VKVG_STATUS_INVALID_MATRIX.
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga155802a492a4c6a7bb20fb101d0089e4.html b/group__matrix_ga155802a492a4c6a7bb20fb101d0089e4.html new file mode 100644 index 0000000..213c31a --- /dev/null +++ b/group__matrix_ga155802a492a4c6a7bb20fb101d0089e4.html @@ -0,0 +1,140 @@ + + + + + + + + + VKVG: vkvg_matrix_transform_distance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_transform_distance()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_transform_distance (const vkvg_matrix_tmatrix,
float * dx,
float * dy 
)
+
+ +

transform distances

+

Transforms the distance vector (dx ,dy ) by matrix . This is similar to #cairo_matrix_transform_point() except that the translation components of the transformation are ignored. The calculation of the returned vector is as follows:

dx2 = dx1 * a + dy1 * c;
+
dy2 = dx1 * b + dy1 * d;
+

Affine transformations are position invariant, so the same vector always transforms to the same vector. If (x1 ,y1 ) transforms to (x2 ,y2 ) then (x1 +dx1 ,y1 +dy1 ) will transform to (x1 +dx2 ,y1 +dy2 ) for all values of x1 and x2 .

Parameters
+ + + + +
matrixa valid vkvg_matrix_t to use to transform distance
dxX component of a distance vector. An in/out parameter
dyY component of a distance vector. An in/out parameter
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga2146e1153f46e8ef79918dba5d32ac91.html b/group__matrix_ga2146e1153f46e8ef79918dba5d32ac91.html new file mode 100644 index 0000000..6b2a228 --- /dev/null +++ b/group__matrix_ga2146e1153f46e8ef79918dba5d32ac91.html @@ -0,0 +1,128 @@ + + + + + + + + + VKVG: vkvg_matrix_get_scale + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__matrix_ga22c80d15d3492420d9dc9fea4ddf7d76.html b/group__matrix_ga22c80d15d3492420d9dc9fea4ddf7d76.html new file mode 100644 index 0000000..5c6e0e1 --- /dev/null +++ b/group__matrix_ga22c80d15d3492420d9dc9fea4ddf7d76.html @@ -0,0 +1,120 @@ + + + + + + + + + VKVG: vkvg_matrix_init_identity + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_init_identity()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_matrix_init_identity (vkvg_matrix_tmatrix)
+
+ +

Set matrix to identity.

+

Initialize members of the supplied vkvg_matrix_t to make an identity matrix of it.

Parameters
+ + +
matrixa valid vkvg_matrix_t pointer.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga34aa0d5b237ad0e3b4905b59ec08fd3b.html b/group__matrix_ga34aa0d5b237ad0e3b4905b59ec08fd3b.html new file mode 100644 index 0000000..3557139 --- /dev/null +++ b/group__matrix_ga34aa0d5b237ad0e3b4905b59ec08fd3b.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_matrix_translate + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_translate()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_translate (vkvg_matrix_tmatrix,
float tx,
float ty 
)
+
+ +

apply translation on matrix

+

Apply the translation defined by tx and ty on the supplied matrix. The effect of the new transformation is to first translate the coordinates by tx and ty, then apply the original transformation to the coordinates.

Parameters
+ + + + +
matrixa valid vkvg_matrix_t pointer
txtranslation in the x direction
tytranslation in the y direction
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga38fb3ab8cc86565a8e5863b788f00921.html b/group__matrix_ga38fb3ab8cc86565a8e5863b788f00921.html new file mode 100644 index 0000000..f979f92 --- /dev/null +++ b/group__matrix_ga38fb3ab8cc86565a8e5863b788f00921.html @@ -0,0 +1,131 @@ + + + + + + + + + VKVG: vkvg_matrix_init_rotate + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_init_rotate()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_init_rotate (vkvg_matrix_tmatrix,
float radians 
)
+
+ +

rotation matrix initialization

+

Initialize members of the supplied matrix to create a new rotation matrix

Parameters
+ + + +
matrixa valid vkvg_matrix_t pointer
radiansangle of rotation, in radians. The direction of rotation is defined such that positive angles rotate in the direction from the positive X axis toward the positive Y axis. With the default axis orientation of vkvg, positive angles rotate in a clockwise direction.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga672a08bfb37a7b28db89e1d60988b47f.html b/group__matrix_ga672a08bfb37a7b28db89e1d60988b47f.html new file mode 100644 index 0000000..e6bc81c --- /dev/null +++ b/group__matrix_ga672a08bfb37a7b28db89e1d60988b47f.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_matrix_multiply + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_multiply()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_multiply (vkvg_matrix_tresult,
const vkvg_matrix_ta,
const vkvg_matrix_tb 
)
+
+ +

matrices multiplication

+

compute the multiplication of two matrix.

Parameters
+ + + + +
resulta valid vkvg_matrix_t pointer to hold the resulting matrix
afirst operand of the multiplication
bsecond operand of the multiplication
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_ga7a14d8e9fafcb47df7b52731622a15a3.html b/group__matrix_ga7a14d8e9fafcb47df7b52731622a15a3.html new file mode 100644 index 0000000..e0e63b1 --- /dev/null +++ b/group__matrix_ga7a14d8e9fafcb47df7b52731622a15a3.html @@ -0,0 +1,111 @@ + + + + + + + + + VKVG: VKVG_IDENTITY_MATRIX + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__matrix_ga9078043e7c548ef9fec35de32ffc86e3.html b/group__matrix_ga9078043e7c548ef9fec35de32ffc86e3.html new file mode 100644 index 0000000..3b80b7d --- /dev/null +++ b/group__matrix_ga9078043e7c548ef9fec35de32ffc86e3.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_matrix_init_translate + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_init_translate()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_init_translate (vkvg_matrix_tmatrix,
float tx,
float ty 
)
+
+ +

Rotation matrix initialization.

+

Initialize members of the supplied matrix to create a translation matrix.

Parameters
+ + + + +
matrixa valid vkvg_matrix_t pointer
txtranslation in the X direction
tytranslation in the Y direction
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_gac6da39c63aa83f333fad4876da70c495.html b/group__matrix_gac6da39c63aa83f333fad4876da70c495.html new file mode 100644 index 0000000..6603183 --- /dev/null +++ b/group__matrix_gac6da39c63aa83f333fad4876da70c495.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_matrix_init_scale + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_init_scale()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_init_scale (vkvg_matrix_tmatrix,
float sx,
float sy 
)
+
+ +

scaling matrix initialization

+

Initialize members of the supplied matrix to create a new scaling matrix

Parameters
+ + + + +
matrixa valid vkvg_matrix_t pointer
sxscale in the x direction
syScale in the y direction
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_gacbad7841972e44b065fc74e17dcce2cd.html b/group__matrix_gacbad7841972e44b065fc74e17dcce2cd.html new file mode 100644 index 0000000..2152098 --- /dev/null +++ b/group__matrix_gacbad7841972e44b065fc74e17dcce2cd.html @@ -0,0 +1,131 @@ + + + + + + + + + VKVG: vkvg_matrix_rotate + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_rotate()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_rotate (vkvg_matrix_tmatrix,
float radians 
)
+
+ +

apply rotation on matrix

+

Apply a rotation of radians on the supplied matrix. The effect of the new transformation is to first rotate the coordinates by radians, then apply the original transformation to the coordinates.

Parameters
+ + + +
matrixa valid vkvg_matrix_t pointer on which the rotation will be applied
radiansangle of rotation in radians. The direction of rotation is defined such that positive angles rotate in the direction from the positive X axis toward the positive Y axis. With the default axis orientation of cairo, positive angles rotate in a clockwise direction.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_gad9dc2333081dc6f631ec529f94ec19dc.html b/group__matrix_gad9dc2333081dc6f631ec529f94ec19dc.html new file mode 100644 index 0000000..336d952 --- /dev/null +++ b/group__matrix_gad9dc2333081dc6f631ec529f94ec19dc.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: vkvg_matrix_transform_point + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_transform_point()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_transform_point (const vkvg_matrix_tmatrix,
float * x,
float * y 
)
+
+ +

transform point

+

Transforms the point (x , y ) by matrix .

Parameters
+ + + + +
matrixa valid vkvg_matrix_t to use to transform point
xX position. An in/out parameter
yY position. An in/out parameter
+
+
+ +
+
+
+
+ + + + + diff --git a/group__matrix_gaf11800eb40198628fabb928a743fecb1.html b/group__matrix_gaf11800eb40198628fabb928a743fecb1.html new file mode 100644 index 0000000..95b3612 --- /dev/null +++ b/group__matrix_gaf11800eb40198628fabb928a743fecb1.html @@ -0,0 +1,166 @@ + + + + + + + + + VKVG: vkvg_matrix_init + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_matrix_init()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_matrix_init (vkvg_matrix_tmatrix,
float xx,
float yx,
float xy,
float yy,
float x0,
float y0 
)
+
+ +

Matrix initialization.

+

Initialize members of the supplied matrix to the values passed as arguments. Resulting matrix will hold an affine transformation defined by the parameters.

Parameters
+ + + + + + + + +
matrixa valid vkvg_matrix_t pointer
xxxx component of the affine transformation
yxyx component of the affine transformation
xyxy component of the affine transformation
yyyy component of the affine transformation
x0X translation component of the affine transformation
y0Y translation component of the affine transformation
+
+
+ +
+
+
+
+ + + + + diff --git a/group__path.html b/group__path.html new file mode 100644 index 0000000..3a1f864 --- /dev/null +++ b/group__path.html @@ -0,0 +1,69 @@ + + + + + + + + + VKVG: Path creation and manipulation reference. + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Path creation and manipulation reference.
+
+
+

Functions and types related to path edition.

+
+ + + + + diff --git a/group__pattern.html b/group__pattern.html new file mode 100644 index 0000000..092b80c --- /dev/null +++ b/group__pattern.html @@ -0,0 +1,138 @@ + + + + + + + + + VKVG: Pattern + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Pattern
+
+
+

Description

+

special sources for drawing

+

A Pattern is a special source for drawing operations that can be an image, a gradient and which may have special configuration for filtering and border repeat.

+ + + + + +

+Typedefs

typedef struct _vkvg_pattern_t * VkvgPattern
 Opaque pointer on a Vkvg pattern structure. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public VkvgPattern vkvg_pattern_reference (VkvgPattern pat)
 add reference More...
 
vkvg_public uint32_t vkvg_pattern_get_reference_count (VkvgPattern pat)
 get reference count More...
 
vkvg_public VkvgPattern vkvg_pattern_create_for_surface (VkvgSurface surf)
 create a surface pattern More...
 
vkvg_public VkvgPattern vkvg_pattern_create_linear (float x0, float y0, float x1, float y1)
 create a new linear gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_edit_linear (VkvgPattern pat, float x0, float y0, float x1, float y1)
 edit an existing linear gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_get_linear_points (VkvgPattern pat, float *x0, float *y0, float *x1, float *y1)
 get the gradient end points for a linear gradient More...
 
vkvg_public VkvgPattern vkvg_pattern_create_radial (float cx0, float cy0, float radius0, float cx1, float cy1, float radius1)
 create a new radial gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_edit_radial (VkvgPattern pat, float cx0, float cy0, float radius0, float cx1, float cy1, float radius1)
 edit an existing radial gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_count (VkvgPattern pat, uint32_t *count)
 get color stop count. More...
 
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_rgba (VkvgPattern pat, uint32_t index, float *offset, float *r, float *g, float *b, float *a)
 get color stop. More...
 
vkvg_public void vkvg_pattern_destroy (VkvgPattern pat)
 dispose pattern. More...
 
vkvg_public vkvg_status_t vkvg_pattern_add_color_stop (VkvgPattern pat, float offset, float r, float g, float b, float a)
 add colors to gradients More...
 
vkvg_public void vkvg_pattern_set_extend (VkvgPattern pat, vkvg_extend_t extend)
 control the extend of the pattern More...
 
vkvg_public void vkvg_pattern_set_filter (VkvgPattern pat, vkvg_filter_t filter)
 control the filtering when using this pattern on a surface. More...
 
vkvg_public vkvg_extend_t vkvg_pattern_get_extend (VkvgPattern pat)
 query the current extend value for a pa More...
 
vkvg_public vkvg_filter_t vkvg_pattern_get_filter (VkvgPattern pat)
 
vkvg_public vkvg_pattern_type_t vkvg_pattern_get_type (VkvgPattern pat)
 get pattern type More...
 
vkvg_public void vkvg_pattern_set_matrix (VkvgPattern pat, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_pattern_get_matrix (VkvgPattern pat, vkvg_matrix_t *matrix)
 
+
+ + + + + diff --git a/group__pattern_ga0c1342ac3ea8201996c6dfcd9fd85ff9.html b/group__pattern_ga0c1342ac3ea8201996c6dfcd9fd85ff9.html new file mode 100644 index 0000000..6659309 --- /dev/null +++ b/group__pattern_ga0c1342ac3ea8201996c6dfcd9fd85ff9.html @@ -0,0 +1,128 @@ + + + + + + + + + VKVG: vkvg_pattern_get_matrix + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_ga14cb27e833bbdd0a922a153bac41837a.html b/group__pattern_ga14cb27e833bbdd0a922a153bac41837a.html new file mode 100644 index 0000000..fbf9fbc --- /dev/null +++ b/group__pattern_ga14cb27e833bbdd0a922a153bac41837a.html @@ -0,0 +1,127 @@ + + + + + + + + + VKVG: vkvg_pattern_destroy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_ga17618bd315ba5382d66b86cb0feb6af9.html b/group__pattern_ga17618bd315ba5382d66b86cb0feb6af9.html new file mode 100644 index 0000000..83f5c91 --- /dev/null +++ b/group__pattern_ga17618bd315ba5382d66b86cb0feb6af9.html @@ -0,0 +1,167 @@ + + + + + + + + + VKVG: vkvg_pattern_create_radial + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_create_radial()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgPattern vkvg_pattern_create_radial (float cx0,
float cy0,
float radius0,
float cx1,
float cy1,
float radius1 
)
+
+ +

create a new radial gradient.

+

Creates a new radial gradient between the two circles defined by (cx0, cy0, radius0) and (cx1, cy1, radius1). Before using the gradient pattern, a number of color stops should be defined using vkvg_pattern_add_color_stop.

+
Parameters
+ + + + + + + +
cx0x coordinate for the center of the start circle, the inner circle. Must stand inside outer circle.
cy0y coordinate for the center of the start circle, the inner circle. Must stand inside outer circle.
radius0radius for the center of the start circle, the inner circle. Can't be greater than radius1
cx1x coordinate for the center of the end circle, the outer circle.
cy1y coordinate for the center of the end circle, the outer circle.
radius1radius for the center of the end circle, the outer circle.
+
+
+
Returns
VkvgPattern the newly created pattern to be disposed when finished by calling vkvg_pattern_destroy.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga2939439acaf8ee99bf42f7f0eeb1cf51.html b/group__pattern_ga2939439acaf8ee99bf42f7f0eeb1cf51.html new file mode 100644 index 0000000..bd9054b --- /dev/null +++ b/group__pattern_ga2939439acaf8ee99bf42f7f0eeb1cf51.html @@ -0,0 +1,159 @@ + + + + + + + + + VKVG: vkvg_pattern_get_linear_points + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_get_linear_points()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_pattern_get_linear_points (VkvgPattern pat,
float * x0,
float * y0,
float * x1,
float * y1 
)
+
+ +

get the gradient end points for a linear gradient

+

If supplied pattern is not a linear gradient, VKVG_STATUS_PATTERN_TYPE_MISMATCH is set for pattern.

+
Parameters
+ + + + + +
x0x coordinate of the start point
y0y coordinate of the start point
x1x coordinate of the end point
y1y coordinate of the end point
+
+
+
Returns
VKVG_STATUS_SUCCESS, or VKVG_STATUS_PATTERN_TYPE_MISMATCH if the pattern is not a linear gradient.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga2c359145c22b8384317dcceee7d065a7.html b/group__pattern_ga2c359145c22b8384317dcceee7d065a7.html new file mode 100644 index 0000000..580e124 --- /dev/null +++ b/group__pattern_ga2c359145c22b8384317dcceee7d065a7.html @@ -0,0 +1,153 @@ + + + + + + + + + VKVG: vkvg_pattern_create_linear + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_create_linear()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgPattern vkvg_pattern_create_linear (float x0,
float y0,
float x1,
float y1 
)
+
+ +

create a new linear gradient.

+

Create a new linear gradient along the line defined by (x0, y0) and (x1, y1). Before using the gradient pattern, a number of color stops should be defined using vkvg_pattern_add_color_stop.

+
Parameters
+ + + + + +
x0x coordinate of the start point
y0y coordinate of the start point
x1x coordinate of the end point
y1y coordinate of the end point
+
+
+
Returns
VkvgPattern the newly created pattern, call vkvg_pattern_destroy when finished with it.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga34701b3ab3a3976f65b9a5e229efee1d.html b/group__pattern_ga34701b3ab3a3976f65b9a5e229efee1d.html new file mode 100644 index 0000000..bef547e --- /dev/null +++ b/group__pattern_ga34701b3ab3a3976f65b9a5e229efee1d.html @@ -0,0 +1,159 @@ + + + + + + + + + VKVG: vkvg_pattern_edit_linear + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_edit_linear()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_pattern_edit_linear (VkvgPattern pat,
float x0,
float y0,
float x1,
float y1 
)
+
+ +

edit an existing linear gradient.

+

edit control points of an existing linear gradient.

+
Parameters
+ + + + + +
x0x coordinate of the start point
y0y coordinate of the start point
x1x coordinate of the end point
y1y coordinate of the end point
+
+
+
Returns
VKVG_STATUS_SUCCESS, or VKVG_STATUS_PATTERN_TYPE_MISMATCH if the pattern is not a linear gradient.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga510cf4273c0a2a9aa027c388dc2f48b2.html b/group__pattern_ga510cf4273c0a2a9aa027c388dc2f48b2.html new file mode 100644 index 0000000..7b010bb --- /dev/null +++ b/group__pattern_ga510cf4273c0a2a9aa027c388dc2f48b2.html @@ -0,0 +1,125 @@ + + + + + + + + + VKVG: vkvg_pattern_get_filter + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_ga60d6d8608f15e96a087c8dafd69f28dc.html b/group__pattern_ga60d6d8608f15e96a087c8dafd69f28dc.html new file mode 100644 index 0000000..7e107e6 --- /dev/null +++ b/group__pattern_ga60d6d8608f15e96a087c8dafd69f28dc.html @@ -0,0 +1,119 @@ + + + + + + + + + VKVG: VkvgPattern + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_ga6d902720df09232c3836af5517831efe.html b/group__pattern_ga6d902720df09232c3836af5517831efe.html new file mode 100644 index 0000000..d0790e8 --- /dev/null +++ b/group__pattern_ga6d902720df09232c3836af5517831efe.html @@ -0,0 +1,127 @@ + + + + + + + + + VKVG: vkvg_pattern_get_reference_count + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_get_reference_count()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_pattern_get_reference_count (VkvgPattern pat)
+
+ +

get reference count

+

return the current reference count for the supplied VkvgPattern

Parameters
+ + +
pata valid VkvgPattern to query for its reference count
+
+
+
Returns
uint32_t the current reference count for this instance.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga72f8f796252b9716a2cc7e66710dc529.html b/group__pattern_ga72f8f796252b9716a2cc7e66710dc529.html new file mode 100644 index 0000000..f3b4509 --- /dev/null +++ b/group__pattern_ga72f8f796252b9716a2cc7e66710dc529.html @@ -0,0 +1,127 @@ + + + + + + + + + VKVG: vkvg_pattern_reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_ga730832bea18d0c15f98eaa1ee1102f43.html b/group__pattern_ga730832bea18d0c15f98eaa1ee1102f43.html new file mode 100644 index 0000000..0a7901a --- /dev/null +++ b/group__pattern_ga730832bea18d0c15f98eaa1ee1102f43.html @@ -0,0 +1,139 @@ + + + + + + + + + VKVG: vkvg_pattern_set_extend + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_set_extend()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_pattern_set_extend (VkvgPattern pat,
vkvg_extend_t extend 
)
+
+ +

control the extend of the pattern

+

control whether the pattern has to be repeated or extended when painted on a surface.

+
Parameters
+ + + +
patthe pattern to set extend for.
extendone value of the vkvg_extend_t enumeration.
+
+
+
Returns
VKVG_STATUS_SUCCESS, or VKVG_STATUS_PATTERN_TYPE_MISMATCH if the pattern is not a gradient.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga743ac3fb70e31150aa98bdc11424a36b.html b/group__pattern_ga743ac3fb70e31150aa98bdc11424a36b.html new file mode 100644 index 0000000..df89bb8 --- /dev/null +++ b/group__pattern_ga743ac3fb70e31150aa98bdc11424a36b.html @@ -0,0 +1,174 @@ + + + + + + + + + VKVG: vkvg_pattern_get_color_stop_rgba + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_get_color_stop_rgba()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_rgba (VkvgPattern pat,
uint32_t index,
float * offset,
float * r,
float * g,
float * b,
float * a 
)
+
+ +

get color stop.

+

Gets the color and offset information at the given index for a gradient pattern. Values of index range from 0 to n-1 where n is the number returned by vkvg_pattern_get_color_stop_count().

+
Parameters
+ + + + + + + + +
pata valid pattern pointer.
indexindex of the stop to return data for.
offseta valid float pointer to old the stop offset.
ra valid float pointer to old the red component.
ga valid float pointer to old the green component.
ba valid float pointer to old the blue component.
aa valid float pointer to old the alpha component.
+
+
+
Returns
VKVG_STATUS_SUCCESS, VKVG_STATUS_PATTERN_TYPE_MISMATCH if the pattern is not a gradient, VKVG_STATUS_INVALID_INDEX if index is out of bounds.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga7d03d46f9c1544f01eb556fa840c94e0.html b/group__pattern_ga7d03d46f9c1544f01eb556fa840c94e0.html new file mode 100644 index 0000000..682e211 --- /dev/null +++ b/group__pattern_ga7d03d46f9c1544f01eb556fa840c94e0.html @@ -0,0 +1,127 @@ + + + + + + + + + VKVG: vkvg_pattern_create_for_surface + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_create_for_surface()

+ +
+
+ + + + + + + + +
vkvg_public VkvgPattern vkvg_pattern_create_for_surface (VkvgSurface surf)
+
+ +

create a surface pattern

+

Create a new pattern from the supplied #surface. The advantage of having a VkvgPattern to paint an image resides in the hability to set filtering options as well as repeat behaviour on borders. Reference count of the supplied surface will be incremented so that it will not be destroyed before this pattern release it.

Parameters
+ + +
surfa valid VkvgSurface to use for pattern
+
+
+
Returns
VkvgPattern a newly created pattern
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga8322c6bd1ef02f3f15faee3993ef55d1.html b/group__pattern_ga8322c6bd1ef02f3f15faee3993ef55d1.html new file mode 100644 index 0000000..da13c83 --- /dev/null +++ b/group__pattern_ga8322c6bd1ef02f3f15faee3993ef55d1.html @@ -0,0 +1,139 @@ + + + + + + + + + VKVG: vkvg_pattern_get_color_stop_count + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_get_color_stop_count()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_count (VkvgPattern pat,
uint32_t * count 
)
+
+ +

get color stop count.

+

Retrieve the color stop count of a gradient pattern.

+
Parameters
+ + + +
pata valid pattern pointer.
counta valid integer pointer to old the current stop count returned.
+
+
+
Returns
VKVG_STATUS_SUCCESS, or VKVG_STATUS_PATTERN_TYPE_MISMATCH if the pattern is not a gradient.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_ga8983c6211dd369a5240a41bfd2a49090.html b/group__pattern_ga8983c6211dd369a5240a41bfd2a49090.html new file mode 100644 index 0000000..37e1332 --- /dev/null +++ b/group__pattern_ga8983c6211dd369a5240a41bfd2a49090.html @@ -0,0 +1,128 @@ + + + + + + + + + VKVG: vkvg_pattern_set_matrix + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_ga97a53a5be17a79b6bdd28a49b50d523c.html b/group__pattern_ga97a53a5be17a79b6bdd28a49b50d523c.html new file mode 100644 index 0000000..8a09a81 --- /dev/null +++ b/group__pattern_ga97a53a5be17a79b6bdd28a49b50d523c.html @@ -0,0 +1,137 @@ + + + + + + + + + VKVG: vkvg_pattern_set_filter + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_gab97a47af9ac9d3e71a70008cf8b05487.html b/group__pattern_gab97a47af9ac9d3e71a70008cf8b05487.html new file mode 100644 index 0000000..d79cb95 --- /dev/null +++ b/group__pattern_gab97a47af9ac9d3e71a70008cf8b05487.html @@ -0,0 +1,128 @@ + + + + + + + + + VKVG: vkvg_pattern_get_type + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__pattern_gabe88f93962cbc6bec99fd94fd01f5547.html b/group__pattern_gabe88f93962cbc6bec99fd94fd01f5547.html new file mode 100644 index 0000000..3411fbf --- /dev/null +++ b/group__pattern_gabe88f93962cbc6bec99fd94fd01f5547.html @@ -0,0 +1,174 @@ + + + + + + + + + VKVG: vkvg_pattern_edit_radial + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_edit_radial()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_pattern_edit_radial (VkvgPattern pat,
float cx0,
float cy0,
float radius0,
float cx1,
float cy1,
float radius1 
)
+
+ +

edit an existing radial gradient.

+

Edit control points of an existing radial gradient

+
Parameters
+ + + + + + + + +
patthe pattern to edit
cx0x coordinate for the center of the start circle, the inner circle. Must stand inside outer circle.
cy0y coordinate for the center of the start circle, the inner circle. Must stand inside outer circle.
radius0radius for the center of the start circle, the inner circle. Can't be greater than radius1
cx1x coordinate for the center of the end circle, the outer circle.
cy1y coordinate for the center of the end circle, the outer circle.
radius1radius for the center of the end circle, the outer circle.
+
+
+
Returns
VKVG_STATUS_SUCCESS, or VKVG_STATUS_PATTERN_TYPE_MISMATCH if the pattern is not a radial gradient.
+ +
+
+
+
+ + + + + diff --git a/group__pattern_gabef66c6a7a6baf98f0f89d30bb55f46d.html b/group__pattern_gabef66c6a7a6baf98f0f89d30bb55f46d.html new file mode 100644 index 0000000..da66053 --- /dev/null +++ b/group__pattern_gabef66c6a7a6baf98f0f89d30bb55f46d.html @@ -0,0 +1,166 @@ + + + + + + + + + VKVG: vkvg_pattern_add_color_stop + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_add_color_stop()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_pattern_add_color_stop (VkvgPattern pat,
float offset,
float r,
float g,
float b,
float a 
)
+
+ +

add colors to gradients

+

for each color step in the gradient, call this method and provide an absolute position between 0 and 1 and a color.

+
Parameters
+ + + + + + + +
patthe gradient pattern to add a color step.
offsetlocation along the gradient's control vector, value ranging from zero (start of the gradient) to one.
rthe red component of the color step
gthe green component of the color stop
bthe blue component of the color stop
athe alpha chanel of the color stop
+
+
+ +
+
+
+
+ + + + + diff --git a/group__pattern_gac87c237c36d4902d1e865778debd3d8d.html b/group__pattern_gac87c237c36d4902d1e865778debd3d8d.html new file mode 100644 index 0000000..1a86b48 --- /dev/null +++ b/group__pattern_gac87c237c36d4902d1e865778debd3d8d.html @@ -0,0 +1,127 @@ + + + + + + + + + VKVG: vkvg_pattern_get_extend + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + + + + diff --git a/group__surface.html b/group__surface.html new file mode 100644 index 0000000..28b9b3a --- /dev/null +++ b/group__surface.html @@ -0,0 +1,129 @@ + + + + + + + + + VKVG: Surface + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Surface
+
+
+

Description

+

Functions and types related to VKVG surface.

+

This is the reference documentation for creating, using and destroying VKVG Surfaces used as backend for drawing operations.

+ + + + + +

+Typedefs

typedef struct _vkvg_surface_t * VkvgSurface
 Opaque pointer on a Vkvg Surface structure. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public VkvgSurface vkvg_surface_create (VkvgDevice dev, uint32_t width, uint32_t height)
 Create a new vkvg surface. More...
 
vkvg_public VkvgSurface vkvg_surface_create_from_image (VkvgDevice dev, const char *filePath)
 Create a new vkvg surface by loading an image file. The resulting surface will have the same dimension as the supplied image. More...
 
vkvg_public VkvgSurface vkvg_surface_create_for_VkhImage (VkvgDevice dev, void *vkhImg)
 Create a new vkvg surface using an existing vulkan texture as backend. More...
 
vkvg_public VkvgSurface vkvg_surface_reference (VkvgSurface surf)
 Increment reference count on the surface by one. More...
 
vkvg_public uint32_t vkvg_surface_get_reference_count (VkvgSurface surf)
 Get the current reference count on this surface. More...
 
vkvg_public void vkvg_surface_destroy (VkvgSurface surf)
 Decrement the reference count on the surface by one. Destroy it if count reach 0. More...
 
vkvg_public vkvg_status_t vkvg_surface_status (VkvgSurface surf)
 Query the current status of the surface. More...
 
vkvg_public void vkvg_surface_clear (VkvgSurface surf)
 Clear the surface content, alpha is also set to 0 resulting in a transparent image. More...
 
vkvg_public VkImage vkvg_surface_get_vk_image (VkvgSurface surf)
 Get the final single sampled vulkan image of this surface. More...
 
vkvg_public VkFormat vkvg_surface_get_vk_format (VkvgSurface surf)
 Get the vulkan format of the vulkan texture used as backend for this surface. More...
 
vkvg_public uint32_t vkvg_surface_get_width (VkvgSurface surf)
 Get the actual surface width. More...
 
vkvg_public uint32_t vkvg_surface_get_height (VkvgSurface surf)
 Get the actual surface height. More...
 
vkvg_public vkvg_status_t vkvg_surface_write_to_png (VkvgSurface surf, const char *path)
 Write surface content to a png file on disk. More...
 
vkvg_public vkvg_status_t vkvg_surface_write_to_memory (VkvgSurface surf, unsigned char *const bitmap)
 Save surface to memory. More...
 
vkvg_public void vkvg_multisample_surface_resolve (VkvgSurface surf)
 Explicitly resolve a multisampled surface. More...
 
+
+ + + + + diff --git a/group__surface_ga09df17e6e7e62e6780c3f9330a6e60e6.html b/group__surface_ga09df17e6e7e62e6780c3f9330a6e60e6.html new file mode 100644 index 0000000..0a6fa15 --- /dev/null +++ b/group__surface_ga09df17e6e7e62e6780c3f9330a6e60e6.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_get_height + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_get_height()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_surface_get_height (VkvgSurface surf)
+
+ +

Get the actual surface height.

+
Parameters
+ + +
Thevkvg surface to get the height for.
+
+
+
Returns
The height in pixel of the surface.
+ +
+
+
+
+ + + + + diff --git a/group__surface_ga0c0097625ec8023049b2acfa92e25520.html b/group__surface_ga0c0097625ec8023049b2acfa92e25520.html new file mode 100644 index 0000000..4be9b64 --- /dev/null +++ b/group__surface_ga0c0097625ec8023049b2acfa92e25520.html @@ -0,0 +1,122 @@ + + + + + + + + + VKVG: vkvg_surface_destroy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_destroy()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_surface_destroy (VkvgSurface surf)
+
+ +

Decrement the reference count on the surface by one. Destroy it if count reach 0.

+
Parameters
+ + +
Thevkvg surface to destroy.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__surface_ga1bc77fa0f6a6508d988ab2bc2f391190.html b/group__surface_ga1bc77fa0f6a6508d988ab2bc2f391190.html new file mode 100644 index 0000000..28fed1f --- /dev/null +++ b/group__surface_ga1bc77fa0f6a6508d988ab2bc2f391190.html @@ -0,0 +1,134 @@ + + + + + + + + + VKVG: vkvg_surface_create_from_image + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_create_from_image()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public VkvgSurface vkvg_surface_create_from_image (VkvgDevice dev,
const char * filePath 
)
+
+ +

Create a new vkvg surface by loading an image file. The resulting surface will have the same dimension as the supplied image.

+
Parameters
+ + + +
devThe vkvg device used for creating the surface.
filePathThe path of the image to load for creating the surface.
+
+
+
Returns
The new vkvg surface with the loaded image as content, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/group__surface_ga21cf3c9f6ce1d7e509ab86d5107eeffc.html b/group__surface_ga21cf3c9f6ce1d7e509ab86d5107eeffc.html new file mode 100644 index 0000000..cbbf6ce --- /dev/null +++ b/group__surface_ga21cf3c9f6ce1d7e509ab86d5107eeffc.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_reference()

+ +
+
+ + + + + + + + +
vkvg_public VkvgSurface vkvg_surface_reference (VkvgSurface surf)
+
+ +

Increment reference count on the surface by one.

+
Parameters
+ + +
Thevkvg surface to increment the reference count for.
+
+
+
Returns
?
+ +
+
+
+
+ + + + + diff --git a/group__surface_ga3d8cf4052973109318bbb693b6d2800c.html b/group__surface_ga3d8cf4052973109318bbb693b6d2800c.html new file mode 100644 index 0000000..5728718 --- /dev/null +++ b/group__surface_ga3d8cf4052973109318bbb693b6d2800c.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_get_vk_format + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_get_vk_format()

+ +
+
+ + + + + + + + +
vkvg_public VkFormat vkvg_surface_get_vk_format (VkvgSurface surf)
+
+ +

Get the vulkan format of the vulkan texture used as backend for this surface.

+
Parameters
+ + +
Thesurface to get the format for.
+
+
+
Returns
The VkFormat.
+ +
+
+
+
+ + + + + diff --git a/group__surface_ga424dbcc7fcefea9cca5726347b2ee235.html b/group__surface_ga424dbcc7fcefea9cca5726347b2ee235.html new file mode 100644 index 0000000..e8751a2 --- /dev/null +++ b/group__surface_ga424dbcc7fcefea9cca5726347b2ee235.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_get_vk_image + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_get_vk_image()

+ +
+
+ + + + + + + + +
vkvg_public VkImage vkvg_surface_get_vk_image (VkvgSurface surf)
+
+ +

Get the final single sampled vulkan image of this surface.

+
Parameters
+ + +
Thevkvg surface to get the vulkan texture of.
+
+
+
Returns
The VkImage object containing the result of the drawing operations on the surface.
+ +
+
+
+
+ + + + + diff --git a/group__surface_ga7051fd62842ee526afc261b65f939c2d.html b/group__surface_ga7051fd62842ee526afc261b65f939c2d.html new file mode 100644 index 0000000..993090b --- /dev/null +++ b/group__surface_ga7051fd62842ee526afc261b65f939c2d.html @@ -0,0 +1,134 @@ + + + + + + + + + VKVG: vkvg_surface_write_to_png + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_write_to_png()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_surface_write_to_png (VkvgSurface surf,
const char * path 
)
+
+ +

Write surface content to a png file on disk.

+
Parameters
+ + + +
Thesurface to save on disk.
Thepng file path.
+
+
+
Returns
SUCCESS or not.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gaa4c4188ebc55afd246dcfa2b804a3d1d.html b/group__surface_gaa4c4188ebc55afd246dcfa2b804a3d1d.html new file mode 100644 index 0000000..91dc7f0 --- /dev/null +++ b/group__surface_gaa4c4188ebc55afd246dcfa2b804a3d1d.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_get_width + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_get_width()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_surface_get_width (VkvgSurface surf)
+
+ +

Get the actual surface width.

+
Parameters
+ + +
Thevkvg surface to get the width for.
+
+
+
Returns
The width in pixel of the surface.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gaa77f72e566105b65f7e8563d4a9301d9.html b/group__surface_gaa77f72e566105b65f7e8563d4a9301d9.html new file mode 100644 index 0000000..4e9369e --- /dev/null +++ b/group__surface_gaa77f72e566105b65f7e8563d4a9301d9.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_multisample_surface_resolve + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_multisample_surface_resolve()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_multisample_surface_resolve (VkvgSurface surf)
+
+ +

Explicitly resolve a multisampled surface.

+

When creating a multisampled vkvg device with deffered resolve set to true, this function has to be called to have the multisampled texture used for drawing operations resolved on the single sampled accessible texture. Note that a call to vkvg_surface_get_vk_image will automaticaly call this method before returning the backend image.

+
Parameters
+ + +
Thevkvg surface to resolve.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__surface_gaac3f496bfbf733894fb94eb48f1d1137.html b/group__surface_gaac3f496bfbf733894fb94eb48f1d1137.html new file mode 100644 index 0000000..dcd62ee --- /dev/null +++ b/group__surface_gaac3f496bfbf733894fb94eb48f1d1137.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_get_reference_count + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_get_reference_count()

+ +
+
+ + + + + + + + +
vkvg_public uint32_t vkvg_surface_get_reference_count (VkvgSurface surf)
+
+ +

Get the current reference count on this surface.

+
Parameters
+ + +
Thevkvg surface to get the reference count for.
+
+
+
Returns
The reference count on the surface.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gab927868517986c317e393a1c874081b0.html b/group__surface_gab927868517986c317e393a1c874081b0.html new file mode 100644 index 0000000..f96ccaa --- /dev/null +++ b/group__surface_gab927868517986c317e393a1c874081b0.html @@ -0,0 +1,134 @@ + + + + + + + + + VKVG: vkvg_surface_create_for_VkhImage + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_create_for_VkhImage()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public VkvgSurface vkvg_surface_create_for_VkhImage (VkvgDevice dev,
void * vkhImg 
)
+
+ +

Create a new vkvg surface using an existing vulkan texture as backend.

+
Parameters
+ + + +
devThe vkvg device used for creating the surface.
vkhImgThe VkhImage to use as the backend texture for drawing operations.
+
+
+
Returns
A new surface, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gac03b406f38c79c6812fdcff69d50fb7e.html b/group__surface_gac03b406f38c79c6812fdcff69d50fb7e.html new file mode 100644 index 0000000..7a2e314 --- /dev/null +++ b/group__surface_gac03b406f38c79c6812fdcff69d50fb7e.html @@ -0,0 +1,134 @@ + + + + + + + + + VKVG: vkvg_surface_write_to_memory + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_write_to_memory()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public vkvg_status_t vkvg_surface_write_to_memory (VkvgSurface surf,
unsigned char *const bitmap 
)
+
+ +

Save surface to memory.

+
Parameters
+ + + +
Thesurface to save
Avalid pointer on cpu memory large enough to contain surface pixels (stride * height)
+
+
+
Returns
SUCCESS or not.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gac105fa5f43e1785f2219252b9099365a.html b/group__surface_gac105fa5f43e1785f2219252b9099365a.html new file mode 100644 index 0000000..6eff067 --- /dev/null +++ b/group__surface_gac105fa5f43e1785f2219252b9099365a.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_status + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_status()

+ +
+
+ + + + + + + + +
vkvg_public vkvg_status_t vkvg_surface_status (VkvgSurface surf)
+
+ +

Query the current status of the surface.

+
Parameters
+ + +
Thevkvg surface to query the status for.
+
+
+
Returns
The current surface status.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gaebe02eedfc8d5af54c2962aa7227959d.html b/group__surface_gaebe02eedfc8d5af54c2962aa7227959d.html new file mode 100644 index 0000000..04a6780 --- /dev/null +++ b/group__surface_gaebe02eedfc8d5af54c2962aa7227959d.html @@ -0,0 +1,141 @@ + + + + + + + + + VKVG: vkvg_surface_create + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_create()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgSurface vkvg_surface_create (VkvgDevice dev,
uint32_t width,
uint32_t height 
)
+
+ +

Create a new vkvg surface.

+
Parameters
+ + + + +
devThe vkvg device used for creating the surface.
widthWidth in pixel of the surface to create.
heightHeight in pixel of the surface to create.
+
+
+
Returns
The new vkvg surface pointer, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/group__surface_gaed1d8ba342a78c0335647dca56e27174.html b/group__surface_gaed1d8ba342a78c0335647dca56e27174.html new file mode 100644 index 0000000..85d08f1 --- /dev/null +++ b/group__surface_gaed1d8ba342a78c0335647dca56e27174.html @@ -0,0 +1,123 @@ + + + + + + + + + VKVG: vkvg_surface_clear + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_clear()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_surface_clear (VkvgSurface surf)
+
+ +

Clear the surface content, alpha is also set to 0 resulting in a transparent image.

+
Remarks
Internaly, the vulkan method used to clear the surface is the slowest, prefer using the vkvg_clear function of the context that will try to use the render pass load operations when possible.
+
Parameters
+ + +
Thesurface to clear.
+
+
+ +
+
+
+
+ + + + + diff --git a/group__surface_gaf2e9eb0e48dd4533d4a5622c12e4d0e7.html b/group__surface_gaf2e9eb0e48dd4533d4a5622c12e4d0e7.html new file mode 100644 index 0000000..1b273e0 --- /dev/null +++ b/group__surface_gaf2e9eb0e48dd4533d4a5622c12e4d0e7.html @@ -0,0 +1,116 @@ + + + + + + + + + VKVG: VkvgSurface + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VkvgSurface

+ +
+
+ + + + +
typedef struct _vkvg_surface_t* VkvgSurface
+
+ +

Opaque pointer on a Vkvg Surface structure.

+

A VkvgSurface represents an image, either as the destination of a drawing operation or as source when drawing onto another surface. To draw to a VkvgSurface, create a vkvg context with the surface as the target, using vkvg_create(). hidden internals.

+

VkvgSurface are created with a VkvgDevice which has to stay active as long has the surface is in use.

+ +

Definition at line 312 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..1fd0749 --- /dev/null +++ b/index.html @@ -0,0 +1,76 @@ + + + + + + + + + VKVG: VKVG: vulkan vector graphics + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
VKVG: vulkan vector graphics
+
+
+

VKVG is an open source 2d vector drawing library written in c and using vulkan for hardware acceleration. Its api is modeled on the cairo graphic library with the following software components:

+ +
+
+ + + + + diff --git a/jquery.js b/jquery.js new file mode 100644 index 0000000..103c32d --- /dev/null +++ b/jquery.js @@ -0,0 +1,35 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element +},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** + * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler + * Licensed under MIT + * @author Ariel Flesler + * @version 2.1.2 + */ +;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 + * http://www.smartmenus.org/ + * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/modules.html b/modules.html new file mode 100644 index 0000000..9938b05 --- /dev/null +++ b/modules.html @@ -0,0 +1,78 @@ + + + + + + + + + VKVG: Modules + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Modules
+
+
+
Here is a list of all modules:
+ + + + + + + +
 SurfaceFunctions and types related to VKVG surface
 ContextFunctions and types related to VKVG contexts
 Path creation and manipulation reference.Functions and types related to path edition
 MatricesGeneric matrix operations
 DeviceCreate or use an existing vulkan context for vkvg
 PatternSpecial sources for drawing
+
+
+ + + + + diff --git a/nav_f.png b/nav_f.png new file mode 100644 index 0000000..fafb411 Binary files /dev/null and b/nav_f.png differ diff --git a/nav_g.png b/nav_g.png new file mode 100644 index 0000000..2093a23 Binary files /dev/null and b/nav_g.png differ diff --git a/nav_h.png b/nav_h.png new file mode 100644 index 0000000..730c26a Binary files /dev/null and b/nav_h.png differ diff --git a/open.png b/open.png new file mode 100644 index 0000000..2989896 Binary files /dev/null and b/open.png differ diff --git a/search/all_0.html b/search/all_0.html new file mode 100644 index 0000000..1ec5b2d --- /dev/null +++ b/search/all_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_0.js b/search/all_0.js new file mode 100644 index 0000000..f289c89 --- /dev/null +++ b/search/all_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['a_0',['a',['../structvkvg__color__t_a4aec1a5be9d9a4a394a2e49e9744286e.html#a4aec1a5be9d9a4a394a2e49e9744286e',1,'vkvg_color_t']]], + ['ascent_1',['ascent',['../structvkvg__font__extents__t_a31ebc425eeae55d11acd591bb46dd468.html#a31ebc425eeae55d11acd591bb46dd468',1,'vkvg_font_extents_t']]] +]; diff --git a/search/all_1.html b/search/all_1.html new file mode 100644 index 0000000..9f80e90 --- /dev/null +++ b/search/all_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_1.js b/search/all_1.js new file mode 100644 index 0000000..53e9f86 --- /dev/null +++ b/search/all_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['b_2',['b',['../structvkvg__color__t_a83fc1af92e29717b4513d121b0c72c7d.html#a83fc1af92e29717b4513d121b0c72c7d',1,'vkvg_color_t']]] +]; diff --git a/search/all_2.html b/search/all_2.html new file mode 100644 index 0000000..02cfffc --- /dev/null +++ b/search/all_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_2.js b/search/all_2.js new file mode 100644 index 0000000..dee8f30 --- /dev/null +++ b/search/all_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['codepoint_3',['codepoint',['../structvkvg__glyph__info__t_ac0a96cfe8a03a6dd0da3f7ca2313e5d8.html#ac0a96cfe8a03a6dd0da3f7ca2313e5d8',1,'vkvg_glyph_info_t']]], + ['context_4',['Context',['../group__context.html',1,'']]] +]; diff --git a/search/all_3.html b/search/all_3.html new file mode 100644 index 0000000..39767b8 --- /dev/null +++ b/search/all_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_3.js b/search/all_3.js new file mode 100644 index 0000000..75ab1ff --- /dev/null +++ b/search/all_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['descent_5',['descent',['../structvkvg__font__extents__t_a5984964357202018e67f64fd879af95b.html#a5984964357202018e67f64fd879af95b',1,'vkvg_font_extents_t']]], + ['device_6',['Device',['../group__device.html',1,'']]] +]; diff --git a/search/all_4.html b/search/all_4.html new file mode 100644 index 0000000..fc40463 --- /dev/null +++ b/search/all_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_4.js b/search/all_4.js new file mode 100644 index 0000000..bc8ebd0 --- /dev/null +++ b/search/all_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['g_7',['g',['../structvkvg__color__t_a8cf17d727651616de6f2b79ef32170cd.html#a8cf17d727651616de6f2b79ef32170cd',1,'vkvg_color_t']]] +]; diff --git a/search/all_5.html b/search/all_5.html new file mode 100644 index 0000000..9dd9344 --- /dev/null +++ b/search/all_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_5.js b/search/all_5.js new file mode 100644 index 0000000..046f92c --- /dev/null +++ b/search/all_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['height_8',['height',['../structvkvg__font__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html#a48083b65ac9a863566dc3e3fff09a5b4',1,'vkvg_font_extents_t::height()'],['../structvkvg__text__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html#a48083b65ac9a863566dc3e3fff09a5b4',1,'vkvg_text_extents_t::height()']]] +]; diff --git a/search/all_6.html b/search/all_6.html new file mode 100644 index 0000000..f1e516d --- /dev/null +++ b/search/all_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_6.js b/search/all_6.js new file mode 100644 index 0000000..ebdea94 --- /dev/null +++ b/search/all_6.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['matrices_9',['Matrices',['../group__matrix.html',1,'']]], + ['max_5fx_5fadvance_10',['max_x_advance',['../structvkvg__font__extents__t_afef09feed3e6d406a79a4654bbfdf32e.html#afef09feed3e6d406a79a4654bbfdf32e',1,'vkvg_font_extents_t']]], + ['max_5fy_5fadvance_11',['max_y_advance',['../structvkvg__font__extents__t_a5a74d8c1db44409b96daa190fce554b1.html#a5a74d8c1db44409b96daa190fce554b1',1,'vkvg_font_extents_t']]] +]; diff --git a/search/all_7.html b/search/all_7.html new file mode 100644 index 0000000..8ddbf6c --- /dev/null +++ b/search/all_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_7.js b/search/all_7.js new file mode 100644 index 0000000..2e9829c --- /dev/null +++ b/search/all_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['path_20creation_20and_20manipulation_20reference_2e_12',['Path creation and manipulation reference.',['../group__path.html',1,'']]], + ['pattern_13',['Pattern',['../group__pattern.html',1,'']]] +]; diff --git a/search/all_8.html b/search/all_8.html new file mode 100644 index 0000000..83c55ae --- /dev/null +++ b/search/all_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_8.js b/search/all_8.js new file mode 100644 index 0000000..f60a95f --- /dev/null +++ b/search/all_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['r_14',['r',['../structvkvg__color__t_a4788d82c901b9367dd5c0daff8a7616b.html#a4788d82c901b9367dd5c0daff8a7616b',1,'vkvg_color_t']]] +]; diff --git a/search/all_9.html b/search/all_9.html new file mode 100644 index 0000000..1e263c1 --- /dev/null +++ b/search/all_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_9.js b/search/all_9.js new file mode 100644 index 0000000..5daf895 --- /dev/null +++ b/search/all_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['surface_15',['Surface',['../group__surface.html',1,'']]] +]; diff --git a/search/all_a.html b/search/all_a.html new file mode 100644 index 0000000..3a6cac1 --- /dev/null +++ b/search/all_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_a.js b/search/all_a.js new file mode 100644 index 0000000..ec5030e --- /dev/null +++ b/search/all_a.js @@ -0,0 +1,248 @@ +var searchData= +[ + ['vkvg_2dsvg_2eh_16',['vkvg-svg.h',['../vkvg-svg_8h.html',1,'']]], + ['vkvg_2eh_17',['vkvg.h',['../vkvg_8h.html',1,'']]], + ['vkvg_3a_20vulkan_20vector_20graphics_18',['VKVG: vulkan vector graphics',['../index.html',1,'']]], + ['vkvg_5farc_19',['vkvg_arc',['../group__context_ga8acf97c1e4ae8ab67764a96a0d5d7b9c.html#ga8acf97c1e4ae8ab67764a96a0d5d7b9c',1,'vkvg.h']]], + ['vkvg_5farc_5fnegative_20',['vkvg_arc_negative',['../group__context_ga7e937e021bf96bd38de3e478bf80c3e7.html#ga7e937e021bf96bd38de3e478bf80c3e7',1,'vkvg.h']]], + ['vkvg_5fclear_21',['vkvg_clear',['../group__context_gac418bd821f5e47d7c9deb6f58b5bc03d.html#gac418bd821f5e47d7c9deb6f58b5bc03d',1,'vkvg.h']]], + ['vkvg_5fclip_22',['vkvg_clip',['../group__context_ga13183bfc6468e0106b487a397ea1d870.html#ga13183bfc6468e0106b487a397ea1d870',1,'vkvg.h']]], + ['vkvg_5fclip_5fpreserve_23',['vkvg_clip_preserve',['../group__context_ga42752652b304544765ffbc9f1355f04a.html#ga42752652b304544765ffbc9f1355f04a',1,'vkvg.h']]], + ['vkvg_5fclose_5fpath_24',['vkvg_close_path',['../group__context_ga0e1611518cd6aa91d3527fefcfdf2957.html#ga0e1611518cd6aa91d3527fefcfdf2957',1,'vkvg.h']]], + ['vkvg_5fcolor_5ft_25',['vkvg_color_t',['../structvkvg__color__t.html',1,'']]], + ['vkvg_5fcreate_26',['vkvg_create',['../group__context_gacd68ee83c078f62d89709034c562897b.html#gacd68ee83c078f62d89709034c562897b',1,'vkvg.h']]], + ['vkvg_5fcurve_5fto_27',['vkvg_curve_to',['../group__context_gae1be850b3f4a6b01e35344bd033bf3d0.html#gae1be850b3f4a6b01e35344bd033bf3d0',1,'vkvg.h']]], + ['vkvg_5fdestroy_28',['vkvg_destroy',['../group__context_gabfc11b67746a4b438580242c79ef6dce.html#gabfc11b67746a4b438580242c79ef6dce',1,'vkvg.h']]], + ['vkvg_5fdevice_5fcreate_29',['vkvg_device_create',['../group__device_ga3a87ef8a0d782aa26a39ff63218ea25c.html#ga3a87ef8a0d782aa26a39ff63218ea25c',1,'vkvg.h']]], + ['vkvg_5fdevice_5fcreate_5ffrom_5fvk_30',['vkvg_device_create_from_vk',['../group__device_ga1d3b3027ad47c29d49a82705ff21c802.html#ga1d3b3027ad47c29d49a82705ff21c802',1,'vkvg.h']]], + ['vkvg_5fdevice_5fcreate_5ffrom_5fvk_5fmultisample_31',['vkvg_device_create_from_vk_multisample',['../group__device_ga584714cbe547b91c08904a90f269c170.html#ga584714cbe547b91c08904a90f269c170',1,'vkvg.h']]], + ['vkvg_5fdevice_5fdestroy_32',['vkvg_device_destroy',['../group__device_ga38c54930707fd47bbdb59ee9000a6d21.html#ga38c54930707fd47bbdb59ee9000a6d21',1,'vkvg.h']]], + ['vkvg_5fdevice_5fget_5fdpy_33',['vkvg_device_get_dpy',['../group__device_ga110a3746370bc3a61aa95e048e739d2e.html#ga110a3746370bc3a61aa95e048e739d2e',1,'vkvg.h']]], + ['vkvg_5fdevice_5fget_5freference_5fcount_34',['vkvg_device_get_reference_count',['../group__device_ga4e12927c2cda70943f304f5fdbd43882.html#ga4e12927c2cda70943f304f5fdbd43882',1,'vkvg.h']]], + ['vkvg_5fdevice_5freference_35',['vkvg_device_reference',['../group__device_ga7328d8f0102dd7dcf725bc3c77aa95f8.html#ga7328d8f0102dd7dcf725bc3c77aa95f8',1,'vkvg.h']]], + ['vkvg_5fdevice_5fset_5fdpy_36',['vkvg_device_set_dpy',['../group__device_gacee1dad855f7ceb5e803c0379e37cff5.html#gacee1dad855f7ceb5e803c0379e37cff5',1,'vkvg.h']]], + ['vkvg_5fdevice_5fset_5fthread_5faware_37',['vkvg_device_set_thread_aware',['../group__device_gaa7b5b0a579d1202e8d782f720f603d91.html#gaa7b5b0a579d1202e8d782f720f603d91',1,'vkvg.h']]], + ['vkvg_5fdevice_5fstatus_38',['vkvg_device_status',['../group__device_ga76abb77e8be8a16dd7ddd03950ba168b.html#ga76abb77e8be8a16dd7ddd03950ba168b',1,'vkvg.h']]], + ['vkvg_5fdirection_5ft_39',['vkvg_direction_t',['../vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html#a2d6938aad383b6f91bf6be7164b2a995',1,'vkvg.h']]], + ['vkvg_5fellipse_40',['vkvg_ellipse',['../group__context_gaadec811521b3edb7a509bd9c6e370ee5.html#gaadec811521b3edb7a509bd9c6e370ee5',1,'vkvg.h']]], + ['vkvg_5felliptic_5farc_5fto_41',['vkvg_elliptic_arc_to',['../group__context_ga74f4c24e04116105ddc91b31a174ed34.html#ga74f4c24e04116105ddc91b31a174ed34',1,'vkvg.h']]], + ['vkvg_5fextend_5fnone_42',['VKVG_EXTEND_NONE',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40a016c184949340ded7cab8cc3ebebee8f',1,'vkvg.h']]], + ['vkvg_5fextend_5fpad_43',['VKVG_EXTEND_PAD',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40a2fbaf3043fce97d14bcfaad9f2dc0a1c',1,'vkvg.h']]], + ['vkvg_5fextend_5freflect_44',['VKVG_EXTEND_REFLECT',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40ad3e0f41a1a2af562e7538657d6611832',1,'vkvg.h']]], + ['vkvg_5fextend_5frepeat_45',['VKVG_EXTEND_REPEAT',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40a7f0a3a3c71705d13270039ced36036c0',1,'vkvg.h']]], + ['vkvg_5fextend_5ft_46',['vkvg_extend_t',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40',1,'vkvg.h']]], + ['vkvg_5ffill_47',['vkvg_fill',['../group__context_ga7b84dd59cc0b3d116948a89ff7ad53f8.html#ga7b84dd59cc0b3d116948a89ff7ad53f8',1,'vkvg.h']]], + ['vkvg_5ffill_5fpreserve_48',['vkvg_fill_preserve',['../group__context_gaa0dd784bb4277124e6fd2546a50b970a.html#gaa0dd784bb4277124e6fd2546a50b970a',1,'vkvg.h']]], + ['vkvg_5ffill_5frule_5feven_5fodd_49',['VKVG_FILL_RULE_EVEN_ODD',['../vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html#a71071026a36a7427c364a8bdc9bccfb6ada97bad79f6371820b82472e0ff49fe7',1,'vkvg.h']]], + ['vkvg_5ffill_5frule_5fnon_5fzero_50',['VKVG_FILL_RULE_NON_ZERO',['../vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html#a71071026a36a7427c364a8bdc9bccfb6a799b8a88417c80da02d1d52d8e62a43d',1,'vkvg.h']]], + ['vkvg_5ffill_5frule_5ft_51',['vkvg_fill_rule_t',['../vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html#a71071026a36a7427c364a8bdc9bccfb6',1,'vkvg.h']]], + ['vkvg_5ffilter_5fbest_52',['VKVG_FILTER_BEST',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a00cb91e4e5cc8a0bc88ff1b8ab8fc8c0',1,'vkvg.h']]], + ['vkvg_5ffilter_5fbilinear_53',['VKVG_FILTER_BILINEAR',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a680a8fce657583362e33bdb2d97d3238',1,'vkvg.h']]], + ['vkvg_5ffilter_5ffast_54',['VKVG_FILTER_FAST',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a227895a3ffbd082c7f779c6c9ca7d76c',1,'vkvg.h']]], + ['vkvg_5ffilter_5fgaussian_55',['VKVG_FILTER_GAUSSIAN',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a3469ff42e4e804cf5b362eb2787b2654',1,'vkvg.h']]], + ['vkvg_5ffilter_5fgood_56',['VKVG_FILTER_GOOD',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a63f51bfec03cdca07fdfe9d718f3a75f',1,'vkvg.h']]], + ['vkvg_5ffilter_5fnearest_57',['VKVG_FILTER_NEAREST',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a51346835be4c9cafb1b033ec6cae5754',1,'vkvg.h']]], + ['vkvg_5ffilter_5ft_58',['vkvg_filter_t',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5',1,'vkvg.h']]], + ['vkvg_5fflush_59',['vkvg_flush',['../group__context_gadf5a54205231c9026559eb3a912578ef.html#gadf5a54205231c9026559eb3a912578ef',1,'vkvg.h']]], + ['vkvg_5ffont_5fextents_60',['vkvg_font_extents',['../group__context_ga0a1ff002bf87d056d6749966fdabd3a6.html#ga0a1ff002bf87d056d6749966fdabd3a6',1,'vkvg.h']]], + ['vkvg_5ffont_5fextents_5ft_61',['vkvg_font_extents_t',['../structvkvg__font__extents__t.html',1,'']]], + ['vkvg_5fformat_5fa1_62',['VKVG_FORMAT_A1',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5a41129f80cde1638c50336775ec6059f1',1,'vkvg.h']]], + ['vkvg_5fformat_5fa8_63',['VKVG_FORMAT_A8',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5a1fc395bec4fab5baf6a8e9d12c48f91b',1,'vkvg.h']]], + ['vkvg_5fformat_5fargb32_64',['VKVG_FORMAT_ARGB32',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5a51e8f390b02e7117cb6bded3df1bc609',1,'vkvg.h']]], + ['vkvg_5fformat_5frgb24_65',['VKVG_FORMAT_RGB24',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5aca9496af53332389ea1c579becfff146',1,'vkvg.h']]], + ['vkvg_5fformat_5ft_66',['vkvg_format_t',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5',1,'vkvg.h']]], + ['vkvg_5fget_5fcurrent_5fpoint_67',['vkvg_get_current_point',['../group__context_ga54e4a562ce79bfe7b27bccb354211526.html#ga54e4a562ce79bfe7b27bccb354211526',1,'vkvg.h']]], + ['vkvg_5fget_5fdash_68',['vkvg_get_dash',['../group__context_gaa2a085eb1589cad42d21a79d967ba821.html#gaa2a085eb1589cad42d21a79d967ba821',1,'vkvg.h']]], + ['vkvg_5fget_5fdevice_5frequirements_69',['vkvg_get_device_requirements',['../group__device_ga6b1a6746ce78e41714bfa433dde3f330.html#ga6b1a6746ce78e41714bfa433dde3f330',1,'vkvg.h']]], + ['vkvg_5fget_5ffill_5frule_70',['vkvg_get_fill_rule',['../group__context_ga5accbb746089e87bcf2affb3b8d013ff.html#ga5accbb746089e87bcf2affb3b8d013ff',1,'vkvg.h']]], + ['vkvg_5fget_5fline_5fcap_71',['vkvg_get_line_cap',['../group__context_ga99ca38817ba4247d2cacb2140f4ad1f6.html#ga99ca38817ba4247d2cacb2140f4ad1f6',1,'vkvg.h']]], + ['vkvg_5fget_5fline_5fjoin_72',['vkvg_get_line_join',['../group__context_ga41a306bcd66be7fc2f00b66a5ea92208.html#ga41a306bcd66be7fc2f00b66a5ea92208',1,'vkvg.h']]], + ['vkvg_5fget_5fline_5fwidth_73',['vkvg_get_line_width',['../group__context_ga25e4334755ba6bef6a74bc263554c07e.html#ga25e4334755ba6bef6a74bc263554c07e',1,'vkvg.h']]], + ['vkvg_5fget_5fmatrix_74',['vkvg_get_matrix',['../group__context_ga79ca5efa6ffc3025bda30a1d0ed3e2ce.html#ga79ca5efa6ffc3025bda30a1d0ed3e2ce',1,'vkvg.h']]], + ['vkvg_5fget_5fmiter_5flimit_75',['vkvg_get_miter_limit',['../group__context_ga4d37ec2bc539cbb2f088152c1785724a.html#ga4d37ec2bc539cbb2f088152c1785724a',1,'vkvg.h']]], + ['vkvg_5fget_5fopacity_76',['vkvg_get_opacity',['../group__context_ga0bb6ecd1c3f10f1a6bae09a808986a7c.html#ga0bb6ecd1c3f10f1a6bae09a808986a7c',1,'vkvg.h']]], + ['vkvg_5fget_5foperator_77',['vkvg_get_operator',['../group__context_ga96ae65bebca48a87348d960d5ba52b03.html#ga96ae65bebca48a87348d960d5ba52b03',1,'vkvg.h']]], + ['vkvg_5fget_5freference_5fcount_78',['vkvg_get_reference_count',['../group__context_gaa7356999fb385658dc2ff6c182e639c5.html#gaa7356999fb385658dc2ff6c182e639c5',1,'vkvg.h']]], + ['vkvg_5fget_5frequired_5fdevice_5fextensions_79',['vkvg_get_required_device_extensions',['../group__device_ga10ea171640ba5da3027c60390725666c.html#ga10ea171640ba5da3027c60390725666c',1,'vkvg.h']]], + ['vkvg_5fget_5frequired_5finstance_5fextensions_80',['vkvg_get_required_instance_extensions',['../group__device_ga7cf75a034d9fb4a78c82724154cf73c8.html#ga7cf75a034d9fb4a78c82724154cf73c8',1,'vkvg.h']]], + ['vkvg_5fget_5fsource_81',['vkvg_get_source',['../group__context_gace9e98ac61a0fbdc79d1cee9291c15bb.html#gace9e98ac61a0fbdc79d1cee9291c15bb',1,'vkvg.h']]], + ['vkvg_5fget_5ftarget_82',['vkvg_get_target',['../group__context_ga5681b5178166d4f96d9f803000866200.html#ga5681b5178166d4f96d9f803000866200',1,'vkvg.h']]], + ['vkvg_5fglyph_5finfo_5ft_83',['vkvg_glyph_info_t',['../structvkvg__glyph__info__t.html',1,'']]], + ['vkvg_5fhas_5fcurrent_5fpoint_84',['vkvg_has_current_point',['../group__context_gac2c7805769e61c06151b52f3fb52986d.html#gac2c7805769e61c06151b52f3fb52986d',1,'vkvg.h']]], + ['vkvg_5fhorizontal_85',['VKVG_HORIZONTAL',['../vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html#a2d6938aad383b6f91bf6be7164b2a995aaa62739c1a76e107fba227dffd6b8199',1,'vkvg.h']]], + ['vkvg_5fidentity_5fmatrix_86',['vkvg_identity_matrix',['../group__context_ga61e679b9e01cdf105c7756bf9854697b.html#ga61e679b9e01cdf105c7756bf9854697b',1,'vkvg.h']]], + ['vkvg_5fidentity_5fmatrix_87',['VKVG_IDENTITY_MATRIX',['../group__matrix_ga7a14d8e9fafcb47df7b52731622a15a3.html#ga7a14d8e9fafcb47df7b52731622a15a3',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5fbutt_88',['VKVG_LINE_CAP_BUTT',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0a89ac22c56380187ec32463602a864f7b',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5fround_89',['VKVG_LINE_CAP_ROUND',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0a803bf47b2bc042a98c2f1cf2b6543519',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5fsquare_90',['VKVG_LINE_CAP_SQUARE',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0a3fca82a7ac5b5ef3355775c79d4adb45',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5ft_91',['vkvg_line_cap_t',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5fbevel_92',['VKVG_LINE_JOIN_BEVEL',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698da83710d8d86be990e5d057a109a559d83',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5fmiter_93',['VKVG_LINE_JOIN_MITER',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698da87107f3a4b3dcbabeb57102b2fb3a311',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5fround_94',['VKVG_LINE_JOIN_ROUND',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698da5f2989d8df5882d66a907ad8d70a3e3c',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5ft_95',['vkvg_line_join_t',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698d',1,'vkvg.h']]], + ['vkvg_5fline_5fto_96',['vkvg_line_to',['../group__context_gaaa044940f56de70161b3821934077c7b.html#gaaa044940f56de70161b3821934077c7b',1,'vkvg.h']]], + ['vkvg_5fload_5ffont_5ffrom_5fmemory_97',['vkvg_load_font_from_memory',['../group__context_ga8ca1adfc2ff436c4f1e76f46ba14d9b0.html#ga8ca1adfc2ff436c4f1e76f46ba14d9b0',1,'vkvg.h']]], + ['vkvg_5fload_5ffont_5ffrom_5fpath_98',['vkvg_load_font_from_path',['../group__context_gaaaab7e5a95eab3cb812bbe4865d85951.html#gaaaab7e5a95eab3cb812bbe4865d85951',1,'vkvg.h']]], + ['vkvg_5flog_5fdbg_5farrays_99',['VKVG_LOG_DBG_ARRAYS',['../vkvg_8h_a040b130202d4c2e3e1a57dd8837ed919.html#a040b130202d4c2e3e1a57dd8837ed919',1,'vkvg.h']]], + ['vkvg_5flog_5fdebug_100',['VKVG_LOG_DEBUG',['../vkvg_8h_a0411814a6919e5df693cf40dcfcbc4e3.html#a0411814a6919e5df693cf40dcfcbc4e3',1,'vkvg.h']]], + ['vkvg_5flog_5ferr_101',['VKVG_LOG_ERR',['../vkvg_8h_a6664f29e4f38fafb584188235b65718a.html#a6664f29e4f38fafb584188235b65718a',1,'vkvg.h']]], + ['vkvg_5flog_5ffull_102',['VKVG_LOG_FULL',['../vkvg_8h_a13fb664af0ea69bff0f1fbc142b57f60.html#a13fb664af0ea69bff0f1fbc142b57f60',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_103',['VKVG_LOG_INFO',['../vkvg_8h_af9445855626eb75472a91844db51e59e.html#af9445855626eb75472a91844db51e59e',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fcmd_104',['VKVG_LOG_INFO_CMD',['../vkvg_8h_a17d3944887e536639b7af4a12e7d657c.html#a17d3944887e536639b7af4a12e7d657c',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fibo_105',['VKVG_LOG_INFO_IBO',['../vkvg_8h_ac04f8e80a8db5dd46bf75406ef8c1989.html#ac04f8e80a8db5dd46bf75406ef8c1989',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fpath_106',['VKVG_LOG_INFO_PATH',['../vkvg_8h_af23f274286a67543b606d4918bc87d9c.html#af23f274286a67543b606d4918bc87d9c',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fpts_107',['VKVG_LOG_INFO_PTS',['../vkvg_8h_a3a67c32eb5d4216389d6e5305b49aa8a.html#a3a67c32eb5d4216389d6e5305b49aa8a',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fvao_108',['VKVG_LOG_INFO_VAO',['../vkvg_8h_aaee3dfb09930712dcbac4be383a3132d.html#aaee3dfb09930712dcbac4be383a3132d',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fvbo_109',['VKVG_LOG_INFO_VBO',['../vkvg_8h_a2a55039902f51716c1ad337951ecf103.html#a2a55039902f51716c1ad337951ecf103',1,'vkvg.h']]], + ['vkvg_5flog_5fstroke_110',['VKVG_LOG_STROKE',['../vkvg_8h_ae0b32f5daaea9a1c1031f237599b914a.html#ae0b32f5daaea9a1c1031f237599b914a',1,'vkvg.h']]], + ['vkvg_5fmatrix_5fget_5fscale_111',['vkvg_matrix_get_scale',['../group__matrix_ga2146e1153f46e8ef79918dba5d32ac91.html#ga2146e1153f46e8ef79918dba5d32ac91',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_112',['vkvg_matrix_init',['../group__matrix_gaf11800eb40198628fabb928a743fecb1.html#gaf11800eb40198628fabb928a743fecb1',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5fidentity_113',['vkvg_matrix_init_identity',['../group__matrix_ga22c80d15d3492420d9dc9fea4ddf7d76.html#ga22c80d15d3492420d9dc9fea4ddf7d76',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5frotate_114',['vkvg_matrix_init_rotate',['../group__matrix_ga38fb3ab8cc86565a8e5863b788f00921.html#ga38fb3ab8cc86565a8e5863b788f00921',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5fscale_115',['vkvg_matrix_init_scale',['../group__matrix_gac6da39c63aa83f333fad4876da70c495.html#gac6da39c63aa83f333fad4876da70c495',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5ftranslate_116',['vkvg_matrix_init_translate',['../group__matrix_ga9078043e7c548ef9fec35de32ffc86e3.html#ga9078043e7c548ef9fec35de32ffc86e3',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finvert_117',['vkvg_matrix_invert',['../group__matrix_ga0db3d74caa93dd3b2e8595301d447bec.html#ga0db3d74caa93dd3b2e8595301d447bec',1,'vkvg.h']]], + ['vkvg_5fmatrix_5fmultiply_118',['vkvg_matrix_multiply',['../group__matrix_ga672a08bfb37a7b28db89e1d60988b47f.html#ga672a08bfb37a7b28db89e1d60988b47f',1,'vkvg.h']]], + ['vkvg_5fmatrix_5frotate_119',['vkvg_matrix_rotate',['../group__matrix_gacbad7841972e44b065fc74e17dcce2cd.html#gacbad7841972e44b065fc74e17dcce2cd',1,'vkvg.h']]], + ['vkvg_5fmatrix_5fscale_120',['vkvg_matrix_scale',['../group__matrix_ga053850768b56f00336573729d1ea1090.html#ga053850768b56f00336573729d1ea1090',1,'vkvg.h']]], + ['vkvg_5fmatrix_5ft_121',['vkvg_matrix_t',['../structvkvg__matrix__t.html',1,'']]], + ['vkvg_5fmatrix_5ftransform_5fdistance_122',['vkvg_matrix_transform_distance',['../group__matrix_ga155802a492a4c6a7bb20fb101d0089e4.html#ga155802a492a4c6a7bb20fb101d0089e4',1,'vkvg.h']]], + ['vkvg_5fmatrix_5ftransform_5fpoint_123',['vkvg_matrix_transform_point',['../group__matrix_gad9dc2333081dc6f631ec529f94ec19dc.html#gad9dc2333081dc6f631ec529f94ec19dc',1,'vkvg.h']]], + ['vkvg_5fmatrix_5ftranslate_124',['vkvg_matrix_translate',['../group__matrix_ga34aa0d5b237ad0e3b4905b59ec08fd3b.html#ga34aa0d5b237ad0e3b4905b59ec08fd3b',1,'vkvg.h']]], + ['vkvg_5fmove_5fto_125',['vkvg_move_to',['../group__context_ga41d32b2e72c0eccf4a2bc695598c50ba.html#ga41d32b2e72c0eccf4a2bc695598c50ba',1,'vkvg.h']]], + ['vkvg_5fmultisample_5fsurface_5fresolve_126',['vkvg_multisample_surface_resolve',['../group__surface_gaa77f72e566105b65f7e8563d4a9301d9.html#gaa77f72e566105b65f7e8563d4a9301d9',1,'vkvg.h']]], + ['vkvg_5fnew_5fpath_127',['vkvg_new_path',['../group__context_ga5d60e9db2309e786ac30218efab804cb.html#ga5d60e9db2309e786ac30218efab804cb',1,'vkvg.h']]], + ['vkvg_5fnew_5fsub_5fpath_128',['vkvg_new_sub_path',['../group__context_ga6fd276cc6718c78aa889d289004707f2.html#ga6fd276cc6718c78aa889d289004707f2',1,'vkvg.h']]], + ['vkvg_5foperator_5fclear_129',['VKVG_OPERATOR_CLEAR',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252a7af999d0306d40ea662520ee32b7c366',1,'vkvg.h']]], + ['vkvg_5foperator_5fdifference_130',['VKVG_OPERATOR_DIFFERENCE',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252ab391cf4ab11c3654ac15df0e573ecc78',1,'vkvg.h']]], + ['vkvg_5foperator_5fmax_131',['VKVG_OPERATOR_MAX',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252a6a036630d0638105f87246cfa75e6a54',1,'vkvg.h']]], + ['vkvg_5foperator_5fover_132',['VKVG_OPERATOR_OVER',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252a4dfe6b31014d9176eb6b7a7aa3d385b9',1,'vkvg.h']]], + ['vkvg_5foperator_5fsource_133',['VKVG_OPERATOR_SOURCE',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252ab3cee330e9692a3ff88897172616572d',1,'vkvg.h']]], + ['vkvg_5foperator_5ft_134',['vkvg_operator_t',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252',1,'vkvg.h']]], + ['vkvg_5fpaint_135',['vkvg_paint',['../group__context_ga95d31d8c703526652ad57a42292146e2.html#ga95d31d8c703526652ad57a42292146e2',1,'vkvg.h']]], + ['vkvg_5fpath_5fextents_136',['vkvg_path_extents',['../group__context_gad6e3a8dca42362ceebe8d949058ad3b4.html#gad6e3a8dca42362ceebe8d949058ad3b4',1,'vkvg.h']]], + ['vkvg_5fpattern_5fadd_5fcolor_5fstop_137',['vkvg_pattern_add_color_stop',['../group__pattern_gabef66c6a7a6baf98f0f89d30bb55f46d.html#gabef66c6a7a6baf98f0f89d30bb55f46d',1,'vkvg.h']]], + ['vkvg_5fpattern_5fcreate_5ffor_5fsurface_138',['vkvg_pattern_create_for_surface',['../group__pattern_ga7d03d46f9c1544f01eb556fa840c94e0.html#ga7d03d46f9c1544f01eb556fa840c94e0',1,'vkvg.h']]], + ['vkvg_5fpattern_5fcreate_5flinear_139',['vkvg_pattern_create_linear',['../group__pattern_ga2c359145c22b8384317dcceee7d065a7.html#ga2c359145c22b8384317dcceee7d065a7',1,'vkvg.h']]], + ['vkvg_5fpattern_5fcreate_5fradial_140',['vkvg_pattern_create_radial',['../group__pattern_ga17618bd315ba5382d66b86cb0feb6af9.html#ga17618bd315ba5382d66b86cb0feb6af9',1,'vkvg.h']]], + ['vkvg_5fpattern_5fdestroy_141',['vkvg_pattern_destroy',['../group__pattern_ga14cb27e833bbdd0a922a153bac41837a.html#ga14cb27e833bbdd0a922a153bac41837a',1,'vkvg.h']]], + ['vkvg_5fpattern_5fedit_5flinear_142',['vkvg_pattern_edit_linear',['../group__pattern_ga34701b3ab3a3976f65b9a5e229efee1d.html#ga34701b3ab3a3976f65b9a5e229efee1d',1,'vkvg.h']]], + ['vkvg_5fpattern_5fedit_5fradial_143',['vkvg_pattern_edit_radial',['../group__pattern_gabe88f93962cbc6bec99fd94fd01f5547.html#gabe88f93962cbc6bec99fd94fd01f5547',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fcolor_5fstop_5fcount_144',['vkvg_pattern_get_color_stop_count',['../group__pattern_ga8322c6bd1ef02f3f15faee3993ef55d1.html#ga8322c6bd1ef02f3f15faee3993ef55d1',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fcolor_5fstop_5frgba_145',['vkvg_pattern_get_color_stop_rgba',['../group__pattern_ga743ac3fb70e31150aa98bdc11424a36b.html#ga743ac3fb70e31150aa98bdc11424a36b',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fextend_146',['vkvg_pattern_get_extend',['../group__pattern_gac87c237c36d4902d1e865778debd3d8d.html#gac87c237c36d4902d1e865778debd3d8d',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5ffilter_147',['vkvg_pattern_get_filter',['../group__pattern_ga510cf4273c0a2a9aa027c388dc2f48b2.html#ga510cf4273c0a2a9aa027c388dc2f48b2',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5flinear_5fpoints_148',['vkvg_pattern_get_linear_points',['../group__pattern_ga2939439acaf8ee99bf42f7f0eeb1cf51.html#ga2939439acaf8ee99bf42f7f0eeb1cf51',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fmatrix_149',['vkvg_pattern_get_matrix',['../group__pattern_ga0c1342ac3ea8201996c6dfcd9fd85ff9.html#ga0c1342ac3ea8201996c6dfcd9fd85ff9',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5freference_5fcount_150',['vkvg_pattern_get_reference_count',['../group__pattern_ga6d902720df09232c3836af5517831efe.html#ga6d902720df09232c3836af5517831efe',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5ftype_151',['vkvg_pattern_get_type',['../group__pattern_gab97a47af9ac9d3e71a70008cf8b05487.html#gab97a47af9ac9d3e71a70008cf8b05487',1,'vkvg.h']]], + ['vkvg_5fpattern_5freference_152',['vkvg_pattern_reference',['../group__pattern_ga72f8f796252b9716a2cc7e66710dc529.html#ga72f8f796252b9716a2cc7e66710dc529',1,'vkvg.h']]], + ['vkvg_5fpattern_5fset_5fextend_153',['vkvg_pattern_set_extend',['../group__pattern_ga730832bea18d0c15f98eaa1ee1102f43.html#ga730832bea18d0c15f98eaa1ee1102f43',1,'vkvg.h']]], + ['vkvg_5fpattern_5fset_5ffilter_154',['vkvg_pattern_set_filter',['../group__pattern_ga97a53a5be17a79b6bdd28a49b50d523c.html#ga97a53a5be17a79b6bdd28a49b50d523c',1,'vkvg.h']]], + ['vkvg_5fpattern_5fset_5fmatrix_155',['vkvg_pattern_set_matrix',['../group__pattern_ga8983c6211dd369a5240a41bfd2a49090.html#ga8983c6211dd369a5240a41bfd2a49090',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5flinear_156',['VKVG_PATTERN_TYPE_LINEAR',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513a4aff9ccbec5d272981c596474adb5386',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fmesh_157',['VKVG_PATTERN_TYPE_MESH',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513a926565c0b987eed62e76eca261151ee5',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fradial_158',['VKVG_PATTERN_TYPE_RADIAL',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513abac29bd75596cb8af065aa02a1aa34e4',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fraster_5fsource_159',['VKVG_PATTERN_TYPE_RASTER_SOURCE',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513ae30ae9f2771df088bc24886fd42fc037',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fsolid_160',['VKVG_PATTERN_TYPE_SOLID',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513aeb9d4daba143ba603f114c3805ab4fa4',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fsurface_161',['VKVG_PATTERN_TYPE_SURFACE',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513a8396d15ca456c54a268bdc464107e5db',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5ft_162',['vkvg_pattern_type_t',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513',1,'vkvg.h']]], + ['vkvg_5fpublic_163',['vkvg_public',['../vkvg_8h_aadcfd9780144829f5db766b6c54d18ef.html#aadcfd9780144829f5db766b6c54d18ef',1,'vkvg.h']]], + ['vkvg_5fquadratic_5fto_164',['vkvg_quadratic_to',['../group__context_gad571c4011138a2cba97fe31709faafc7.html#gad571c4011138a2cba97fe31709faafc7',1,'vkvg.h']]], + ['vkvg_5frectangle_165',['vkvg_rectangle',['../group__context_ga70c154560a0c15922815cfe7d6530312.html#ga70c154560a0c15922815cfe7d6530312',1,'vkvg.h']]], + ['vkvg_5freference_166',['vkvg_reference',['../group__context_ga59ac2b80c1610a785e65ad44fde2b1d0.html#ga59ac2b80c1610a785e65ad44fde2b1d0',1,'vkvg.h']]], + ['vkvg_5frel_5fcurve_5fto_167',['vkvg_rel_curve_to',['../group__context_ga154cef8a49f052068c9f0d6f897aa3d6.html#ga154cef8a49f052068c9f0d6f897aa3d6',1,'vkvg.h']]], + ['vkvg_5frel_5felliptic_5farc_5fto_168',['vkvg_rel_elliptic_arc_to',['../group__context_ga7fd336046c4afa45de5e5473faed9b2d.html#ga7fd336046c4afa45de5e5473faed9b2d',1,'vkvg.h']]], + ['vkvg_5frel_5fline_5fto_169',['vkvg_rel_line_to',['../group__context_ga7c420f18b584d664ba272351503b552a.html#ga7c420f18b584d664ba272351503b552a',1,'vkvg.h']]], + ['vkvg_5frel_5fmove_5fto_170',['vkvg_rel_move_to',['../group__context_gaaddca8228bb495010ea67cb312db28d5.html#gaaddca8228bb495010ea67cb312db28d5',1,'vkvg.h']]], + ['vkvg_5frel_5fquadratic_5fto_171',['vkvg_rel_quadratic_to',['../group__context_ga94c7fd0444bb8b997a780e1895125837.html#ga94c7fd0444bb8b997a780e1895125837',1,'vkvg.h']]], + ['vkvg_5freset_5fclip_172',['vkvg_reset_clip',['../group__context_ga7f881ada9c9c463683359d84e876e695.html#ga7f881ada9c9c463683359d84e876e695',1,'vkvg.h']]], + ['vkvg_5frestore_173',['vkvg_restore',['../group__context_ga490b9db147cf800e5e98eefe3753b8ec.html#ga490b9db147cf800e5e98eefe3753b8ec',1,'vkvg.h']]], + ['vkvg_5frotate_174',['vkvg_rotate',['../group__context_gae025c30c061c0264d4a9f469e8c05d1c.html#gae025c30c061c0264d4a9f469e8c05d1c',1,'vkvg.h']]], + ['vkvg_5frounded_5frectangle_175',['vkvg_rounded_rectangle',['../group__context_gaa5967f211de903e7feb6bf12ae909a06.html#gaa5967f211de903e7feb6bf12ae909a06',1,'vkvg.h']]], + ['vkvg_5frounded_5frectangle2_176',['vkvg_rounded_rectangle2',['../group__context_ga13635442e4c14287367823598f2535cb.html#ga13635442e4c14287367823598f2535cb',1,'vkvg.h']]], + ['vkvg_5fsave_177',['vkvg_save',['../group__context_gae3a369a75b9d87c84547a5cd05a221e6.html#gae3a369a75b9d87c84547a5cd05a221e6',1,'vkvg.h']]], + ['vkvg_5fscale_178',['vkvg_scale',['../group__context_ga5d8b1a43c078011541b8ad40a2af00bb.html#ga5d8b1a43c078011541b8ad40a2af00bb',1,'vkvg.h']]], + ['vkvg_5fselect_5ffont_5fface_179',['vkvg_select_font_face',['../group__context_ga88295a0e1ad4344a05de82c54b7159db.html#ga88295a0e1ad4344a05de82c54b7159db',1,'vkvg.h']]], + ['vkvg_5fset_5fdash_180',['vkvg_set_dash',['../group__context_ga38d3fd1954fdcddd9013117f60d21707.html#ga38d3fd1954fdcddd9013117f60d21707',1,'vkvg.h']]], + ['vkvg_5fset_5ffill_5frule_181',['vkvg_set_fill_rule',['../group__context_ga32ccec401affe05abbbcc914cd3139e6.html#ga32ccec401affe05abbbcc914cd3139e6',1,'vkvg.h']]], + ['vkvg_5fset_5ffont_5fsize_182',['vkvg_set_font_size',['../group__context_ga93286454cb5af21e9ddf69635e1351ef.html#ga93286454cb5af21e9ddf69635e1351ef',1,'vkvg.h']]], + ['vkvg_5fset_5fline_5fcap_183',['vkvg_set_line_cap',['../group__context_ga2af37f98b630134843446c5d8109741f.html#ga2af37f98b630134843446c5d8109741f',1,'vkvg.h']]], + ['vkvg_5fset_5fline_5fjoin_184',['vkvg_set_line_join',['../group__context_ga261c6105cc8574a05a971b562cfbbfdf.html#ga261c6105cc8574a05a971b562cfbbfdf',1,'vkvg.h']]], + ['vkvg_5fset_5fline_5fwidth_185',['vkvg_set_line_width',['../group__context_gaa1dd0e917ca55bb68795b6973f1fa38e.html#gaa1dd0e917ca55bb68795b6973f1fa38e',1,'vkvg.h']]], + ['vkvg_5fset_5fmatrix_186',['vkvg_set_matrix',['../group__context_ga17c5a80eb803be493370b95add18e0e0.html#ga17c5a80eb803be493370b95add18e0e0',1,'vkvg.h']]], + ['vkvg_5fset_5fmiter_5flimit_187',['vkvg_set_miter_limit',['../group__context_ga19370dc950aa5f87d13feb2824faf441.html#ga19370dc950aa5f87d13feb2824faf441',1,'vkvg.h']]], + ['vkvg_5fset_5fopacity_188',['vkvg_set_opacity',['../group__context_ga78687897d394221132d57809244a2bde.html#ga78687897d394221132d57809244a2bde',1,'vkvg.h']]], + ['vkvg_5fset_5foperator_189',['vkvg_set_operator',['../group__context_gab9a9036245eb304f4214705879326f13.html#gab9a9036245eb304f4214705879326f13',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_190',['vkvg_set_source',['../group__context_ga73db2af35f3339bc926854a492560964.html#ga73db2af35f3339bc926854a492560964',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5fcolor_191',['vkvg_set_source_color',['../group__context_ga46da71eebe6f6dbb5056dc1429ced863.html#ga46da71eebe6f6dbb5056dc1429ced863',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5fcolor_5fname_192',['vkvg_set_source_color_name',['../vkvg_8h_a164da86a4b2636d58d39c45a857b7227.html#a164da86a4b2636d58d39c45a857b7227',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5frgb_193',['vkvg_set_source_rgb',['../group__context_ga89a8aa13acca2fdae86a6f94912513b4.html#ga89a8aa13acca2fdae86a6f94912513b4',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5frgba_194',['vkvg_set_source_rgba',['../group__context_ga7f1817e3b786b376348af666b2f0520a.html#ga7f1817e3b786b376348af666b2f0520a',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5fsurface_195',['vkvg_set_source_surface',['../group__context_ga7316a9d4a70cbc592923c8d3410df077.html#ga7316a9d4a70cbc592923c8d3410df077',1,'vkvg.h']]], + ['vkvg_5fshow_5ftext_196',['vkvg_show_text',['../group__context_ga2e3f3777b3ba1a6de1d54eb7c23737d9.html#ga2e3f3777b3ba1a6de1d54eb7c23737d9',1,'vkvg.h']]], + ['vkvg_5fshow_5ftext_5frun_197',['vkvg_show_text_run',['../group__context_ga2e5ac52635eb2745b9f28373689df0d9.html#ga2e5ac52635eb2745b9f28373689df0d9',1,'vkvg.h']]], + ['vkvg_5fstatus_198',['vkvg_status',['../group__context_gaa7a77d72856d41276186df5bb2299339.html#gaa7a77d72856d41276186df5bb2299339',1,'vkvg.h']]], + ['vkvg_5fstatus_5fdevice_5ferror_199',['VKVG_STATUS_DEVICE_ERROR',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a46632c80bd681da4f2d702d01536e7e2',1,'vkvg.h']]], + ['vkvg_5fstatus_5ffile_5fnot_5ffound_200',['VKVG_STATUS_FILE_NOT_FOUND',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ae26847e7ea42867a9ae851b2b3a976a4',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fdash_201',['VKVG_STATUS_INVALID_DASH',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ad171c132ea43395b0a748c63b99f55d9',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5ffont_202',['VKVG_STATUS_INVALID_FONT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ab341e285e7fb0b4f978c3a4140aea3b9',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fformat_203',['VKVG_STATUS_INVALID_FORMAT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354aac1f7c1ddaf47f1ef79695e901d718f1',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fimage_204',['VKVG_STATUS_INVALID_IMAGE',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a890b1b1bb306569af3b2b227174f1bea',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5findex_205',['VKVG_STATUS_INVALID_INDEX',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a3877cf9b80073825918fdfba0ac51696',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fmatrix_206',['VKVG_STATUS_INVALID_MATRIX',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a80652ae5261224409e179eef9121e5bd',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5frect_207',['VKVG_STATUS_INVALID_RECT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a0941445d038633da494992ac519a7016',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5frestore_208',['VKVG_STATUS_INVALID_RESTORE',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ad38afefc99aa272f5fa31598ddd0aa7f',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fstatus_209',['VKVG_STATUS_INVALID_STATUS',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354af1e2820c9277603041bb2cf1e92b9bcb',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fsurface_210',['VKVG_STATUS_INVALID_SURFACE',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a5bcda4c3516b85fd0029ca437547fa4d',1,'vkvg.h']]], + ['vkvg_5fstatus_5fno_5fcurrent_5fpoint_211',['VKVG_STATUS_NO_CURRENT_POINT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ae52f6f34a55e63cc48acc0a973c5d454',1,'vkvg.h']]], + ['vkvg_5fstatus_5fno_5fmemory_212',['VKVG_STATUS_NO_MEMORY',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354adca5beade5a3fd84c5e3cb4db65d593e',1,'vkvg.h']]], + ['vkvg_5fstatus_5fnull_5fpointer_213',['VKVG_STATUS_NULL_POINTER',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a38d751f65b5ca4aba90ba3695627946c',1,'vkvg.h']]], + ['vkvg_5fstatus_5fpattern_5finvalid_5fgradient_214',['VKVG_STATUS_PATTERN_INVALID_GRADIENT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a014caf10e7e9796a1525c330d046e5b8',1,'vkvg.h']]], + ['vkvg_5fstatus_5fpattern_5ftype_5fmismatch_215',['VKVG_STATUS_PATTERN_TYPE_MISMATCH',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a1e6dcf65d3707ebb3c7aa1b96cf21987',1,'vkvg.h']]], + ['vkvg_5fstatus_5fsuccess_216',['VKVG_STATUS_SUCCESS',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354adeea52cf65dc55d26c0ba6824c3245bf',1,'vkvg.h']]], + ['vkvg_5fstatus_5ft_217',['vkvg_status_t',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354',1,'vkvg.h']]], + ['vkvg_5fstatus_5ftimeout_218',['VKVG_STATUS_TIMEOUT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a60d73c0671225205d8e97877ea34d071',1,'vkvg.h']]], + ['vkvg_5fstatus_5fto_5fstring_219',['vkvg_status_to_string',['../group__context_ga36fe35b2d255b66d379b70567d49eed2.html#ga36fe35b2d255b66d379b70567d49eed2',1,'vkvg.h']]], + ['vkvg_5fstatus_5fwrite_5ferror_220',['VKVG_STATUS_WRITE_ERROR',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354abbd09c792c0a7f4e25492bc1fd038db6',1,'vkvg.h']]], + ['vkvg_5fstroke_221',['vkvg_stroke',['../group__context_ga3590f94fe38df4f98f196d738827891c.html#ga3590f94fe38df4f98f196d738827891c',1,'vkvg.h']]], + ['vkvg_5fstroke_5fpreserve_222',['vkvg_stroke_preserve',['../group__context_ga3f64f9251bd63c229205115a214acfc1.html#ga3f64f9251bd63c229205115a214acfc1',1,'vkvg.h']]], + ['vkvg_5fsurface_5fclear_223',['vkvg_surface_clear',['../group__surface_gaed1d8ba342a78c0335647dca56e27174.html#gaed1d8ba342a78c0335647dca56e27174',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_224',['vkvg_surface_create',['../group__surface_gaebe02eedfc8d5af54c2962aa7227959d.html#gaebe02eedfc8d5af54c2962aa7227959d',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_5ffor_5fvkhimage_225',['vkvg_surface_create_for_VkhImage',['../group__surface_gab927868517986c317e393a1c874081b0.html#gab927868517986c317e393a1c874081b0',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_5ffrom_5fimage_226',['vkvg_surface_create_from_image',['../group__surface_ga1bc77fa0f6a6508d988ab2bc2f391190.html#ga1bc77fa0f6a6508d988ab2bc2f391190',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_5ffrom_5fsvg_227',['vkvg_surface_create_from_svg',['../vkvg-svg_8h_a1af810e3d7566e821d72e3096db9056a.html#a1af810e3d7566e821d72e3096db9056a',1,'vkvg-svg.h']]], + ['vkvg_5fsurface_5fcreate_5ffrom_5fsvg_5ffragment_228',['vkvg_surface_create_from_svg_fragment',['../vkvg-svg_8h_a326e6bec4bdf939b764e7d2c225f17d1.html#a326e6bec4bdf939b764e7d2c225f17d1',1,'vkvg-svg.h']]], + ['vkvg_5fsurface_5fdestroy_229',['vkvg_surface_destroy',['../group__surface_ga0c0097625ec8023049b2acfa92e25520.html#ga0c0097625ec8023049b2acfa92e25520',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fheight_230',['vkvg_surface_get_height',['../group__surface_ga09df17e6e7e62e6780c3f9330a6e60e6.html#ga09df17e6e7e62e6780c3f9330a6e60e6',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5freference_5fcount_231',['vkvg_surface_get_reference_count',['../group__surface_gaac3f496bfbf733894fb94eb48f1d1137.html#gaac3f496bfbf733894fb94eb48f1d1137',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fvk_5fformat_232',['vkvg_surface_get_vk_format',['../group__surface_ga3d8cf4052973109318bbb693b6d2800c.html#ga3d8cf4052973109318bbb693b6d2800c',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fvk_5fimage_233',['vkvg_surface_get_vk_image',['../group__surface_ga424dbcc7fcefea9cca5726347b2ee235.html#ga424dbcc7fcefea9cca5726347b2ee235',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fwidth_234',['vkvg_surface_get_width',['../group__surface_gaa4c4188ebc55afd246dcfa2b804a3d1d.html#gaa4c4188ebc55afd246dcfa2b804a3d1d',1,'vkvg.h']]], + ['vkvg_5fsurface_5freference_235',['vkvg_surface_reference',['../group__surface_ga21cf3c9f6ce1d7e509ab86d5107eeffc.html#ga21cf3c9f6ce1d7e509ab86d5107eeffc',1,'vkvg.h']]], + ['vkvg_5fsurface_5fstatus_236',['vkvg_surface_status',['../group__surface_gac105fa5f43e1785f2219252b9099365a.html#gac105fa5f43e1785f2219252b9099365a',1,'vkvg.h']]], + ['vkvg_5fsurface_5fwrite_5fto_5fmemory_237',['vkvg_surface_write_to_memory',['../group__surface_gac03b406f38c79c6812fdcff69d50fb7e.html#gac03b406f38c79c6812fdcff69d50fb7e',1,'vkvg.h']]], + ['vkvg_5fsurface_5fwrite_5fto_5fpng_238',['vkvg_surface_write_to_png',['../group__surface_ga7051fd62842ee526afc261b65f939c2d.html#ga7051fd62842ee526afc261b65f939c2d',1,'vkvg.h']]], + ['vkvg_5fsvg_5fdestroy_239',['vkvg_svg_destroy',['../vkvg-svg_8h_ae3f8d98287e9d883b21fac0e2ed96bad.html#ae3f8d98287e9d883b21fac0e2ed96bad',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5fget_5fdimensions_240',['vkvg_svg_get_dimensions',['../vkvg-svg_8h_a7696c29d5af1fadc95efb440cf041bda.html#a7696c29d5af1fadc95efb440cf041bda',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5fload_241',['vkvg_svg_load',['../vkvg-svg_8h_a8599df3d49203becccdaf3877a5e0b09.html#a8599df3d49203becccdaf3877a5e0b09',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5fload_5ffragment_242',['vkvg_svg_load_fragment',['../vkvg-svg_8h_a6a17b950c3750f494c655bc1b6757c3b.html#a6a17b950c3750f494c655bc1b6757c3b',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5frender_243',['vkvg_svg_render',['../vkvg-svg_8h_ad2e5314854a060a54924864c2c1cb489.html#ad2e5314854a060a54924864c2c1cb489',1,'vkvg-svg.h']]], + ['vkvg_5ftext_5fextents_244',['vkvg_text_extents',['../group__context_ga79802b5c678d1ab84a4f5ef560e77e29.html#ga79802b5c678d1ab84a4f5ef560e77e29',1,'vkvg.h']]], + ['vkvg_5ftext_5fextents_5ft_245',['vkvg_text_extents_t',['../structvkvg__text__extents__t.html',1,'']]], + ['vkvg_5ftext_5frun_5fcreate_246',['vkvg_text_run_create',['../group__context_gaff5bbccf8cc53721ca2666c56272256e.html#gaff5bbccf8cc53721ca2666c56272256e',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fcreate_5fwith_5flength_247',['vkvg_text_run_create_with_length',['../group__context_gadfcb5fd125984c0399c5f6bc9619e56a.html#gadfcb5fd125984c0399c5f6bc9619e56a',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fdestroy_248',['vkvg_text_run_destroy',['../group__context_gaf177e82330cb95a71c9517f8aacd6365.html#gaf177e82330cb95a71c9517f8aacd6365',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fget_5fextents_249',['vkvg_text_run_get_extents',['../group__context_gafa8b8c1636cb6c479a851fc04f7741ad.html#gafa8b8c1636cb6c479a851fc04f7741ad',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fget_5fglyph_5fcount_250',['vkvg_text_run_get_glyph_count',['../group__context_ga01525d0d537d2e03d541ad57325f14d2.html#ga01525d0d537d2e03d541ad57325f14d2',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fget_5fglyph_5fposition_251',['vkvg_text_run_get_glyph_position',['../group__context_gad8303a290f342f71dd233bef3f02441b.html#gad8303a290f342f71dd233bef3f02441b',1,'vkvg.h']]], + ['vkvg_5ftransform_252',['vkvg_transform',['../group__context_ga998ca7435dd87db6da6d30a5ee69f827.html#ga998ca7435dd87db6da6d30a5ee69f827',1,'vkvg.h']]], + ['vkvg_5ftranslate_253',['vkvg_translate',['../group__context_gacf62b2602170792417398c51511dee67.html#gacf62b2602170792417398c51511dee67',1,'vkvg.h']]], + ['vkvg_5fvertical_254',['VKVG_VERTICAL',['../vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html#a2d6938aad383b6f91bf6be7164b2a995a288489ba8f506ba72415b35e86e5f332',1,'vkvg.h']]], + ['vkvgcontext_255',['VkvgContext',['../group__context_ga1027bada0ac47c81c3b0746158c3c5bc.html#ga1027bada0ac47c81c3b0746158c3c5bc',1,'vkvg.h']]], + ['vkvgdevice_256',['VkvgDevice',['../group__device_ga4410787cc120fdafe8cdc480a2b02e71.html#ga4410787cc120fdafe8cdc480a2b02e71',1,'vkvg.h']]], + ['vkvgpattern_257',['VkvgPattern',['../group__pattern_ga60d6d8608f15e96a087c8dafd69f28dc.html#ga60d6d8608f15e96a087c8dafd69f28dc',1,'vkvg.h']]], + ['vkvgsurface_258',['VkvgSurface',['../group__surface_gaf2e9eb0e48dd4533d4a5622c12e4d0e7.html#gaf2e9eb0e48dd4533d4a5622c12e4d0e7',1,'vkvg.h']]], + ['vkvgsvg_259',['VkvgSvg',['../vkvg-svg_8h_a0003abdfb8e71c30d01f61d21ccebb13.html#a0003abdfb8e71c30d01f61d21ccebb13',1,'vkvg-svg.h']]], + ['vkvgtext_260',['VkvgText',['../vkvg_8h_a4371df2f82cabd4963d913a094a06b35.html#a4371df2f82cabd4963d913a094a06b35',1,'vkvg.h']]] +]; diff --git a/search/all_b.html b/search/all_b.html new file mode 100644 index 0000000..130deb4 --- /dev/null +++ b/search/all_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_b.js b/search/all_b.js new file mode 100644 index 0000000..43ca570 --- /dev/null +++ b/search/all_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['width_261',['width',['../structvkvg__text__extents__t_ae426f00e82704fa09578f5446e22d915.html#ae426f00e82704fa09578f5446e22d915',1,'vkvg_text_extents_t']]] +]; diff --git a/search/all_c.html b/search/all_c.html new file mode 100644 index 0000000..3dd5af0 --- /dev/null +++ b/search/all_c.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_c.js b/search/all_c.js new file mode 100644 index 0000000..4af9465 --- /dev/null +++ b/search/all_c.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['x0_262',['x0',['../structvkvg__matrix__t_a3c9556645d92e863376a4063a3ad7001.html#a3c9556645d92e863376a4063a3ad7001',1,'vkvg_matrix_t']]], + ['x_5fadvance_263',['x_advance',['../structvkvg__text__extents__t_ae83c02c42c97888eca5532a98ed4e2e4.html#ae83c02c42c97888eca5532a98ed4e2e4',1,'vkvg_text_extents_t::x_advance()'],['../structvkvg__glyph__info__t_af4903d34c19de17bf3045668b429da05.html#af4903d34c19de17bf3045668b429da05',1,'vkvg_glyph_info_t::x_advance()']]], + ['x_5fbearing_264',['x_bearing',['../structvkvg__text__extents__t_a36152a2d5302d6860e555e77a4a8b456.html#a36152a2d5302d6860e555e77a4a8b456',1,'vkvg_text_extents_t']]], + ['x_5foffset_265',['x_offset',['../structvkvg__glyph__info__t_a302cc6391db771808cf9137cddb15a8a.html#a302cc6391db771808cf9137cddb15a8a',1,'vkvg_glyph_info_t']]], + ['xx_266',['xx',['../structvkvg__matrix__t_a9fb9d00fbbf390e0263bcc204b03c7c8.html#a9fb9d00fbbf390e0263bcc204b03c7c8',1,'vkvg_matrix_t']]], + ['xy_267',['xy',['../structvkvg__matrix__t_a83a7590defc35766f789fbbf7fc41590.html#a83a7590defc35766f789fbbf7fc41590',1,'vkvg_matrix_t']]] +]; diff --git a/search/all_d.html b/search/all_d.html new file mode 100644 index 0000000..af7f2f0 --- /dev/null +++ b/search/all_d.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_d.js b/search/all_d.js new file mode 100644 index 0000000..dbac327 --- /dev/null +++ b/search/all_d.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['y0_268',['y0',['../structvkvg__matrix__t_adf19b8ba42d497d3093c3a51b1a32cca.html#adf19b8ba42d497d3093c3a51b1a32cca',1,'vkvg_matrix_t']]], + ['y_5fadvance_269',['y_advance',['../structvkvg__text__extents__t_a35b39603f2d8ae8c01b5cb9dfbfd20d3.html#a35b39603f2d8ae8c01b5cb9dfbfd20d3',1,'vkvg_text_extents_t::y_advance()'],['../structvkvg__glyph__info__t_ac8b0caa49832b5e674589cba5d72b905.html#ac8b0caa49832b5e674589cba5d72b905',1,'vkvg_glyph_info_t::y_advance()']]], + ['y_5fbearing_270',['y_bearing',['../structvkvg__text__extents__t_adb121426957cb2c536d442cb6fd1c90f.html#adb121426957cb2c536d442cb6fd1c90f',1,'vkvg_text_extents_t']]], + ['y_5foffset_271',['y_offset',['../structvkvg__glyph__info__t_a9ae348ed78a50e882b8167d83412d2b5.html#a9ae348ed78a50e882b8167d83412d2b5',1,'vkvg_glyph_info_t']]], + ['yx_272',['yx',['../structvkvg__matrix__t_a8e1608facba0c31efe99d65811fab570.html#a8e1608facba0c31efe99d65811fab570',1,'vkvg_matrix_t']]], + ['yy_273',['yy',['../structvkvg__matrix__t_a342cbf7f29a65a0d1a2949ef4675008e.html#a342cbf7f29a65a0d1a2949ef4675008e',1,'vkvg_matrix_t']]] +]; diff --git a/search/classes_0.html b/search/classes_0.html new file mode 100644 index 0000000..af8159e --- /dev/null +++ b/search/classes_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_0.js b/search/classes_0.js new file mode 100644 index 0000000..5b9d5eb --- /dev/null +++ b/search/classes_0.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['vkvg_5fcolor_5ft_274',['vkvg_color_t',['../structvkvg__color__t.html',1,'']]], + ['vkvg_5ffont_5fextents_5ft_275',['vkvg_font_extents_t',['../structvkvg__font__extents__t.html',1,'']]], + ['vkvg_5fglyph_5finfo_5ft_276',['vkvg_glyph_info_t',['../structvkvg__glyph__info__t.html',1,'']]], + ['vkvg_5fmatrix_5ft_277',['vkvg_matrix_t',['../structvkvg__matrix__t.html',1,'']]], + ['vkvg_5ftext_5fextents_5ft_278',['vkvg_text_extents_t',['../structvkvg__text__extents__t.html',1,'']]] +]; diff --git a/search/close.svg b/search/close.svg new file mode 100644 index 0000000..a933eea --- /dev/null +++ b/search/close.svg @@ -0,0 +1,31 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/search/defines_0.html b/search/defines_0.html new file mode 100644 index 0000000..15cc3de --- /dev/null +++ b/search/defines_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/defines_0.js b/search/defines_0.js new file mode 100644 index 0000000..15d8aeb --- /dev/null +++ b/search/defines_0.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['vkvg_5flog_5fdbg_5farrays_527',['VKVG_LOG_DBG_ARRAYS',['../vkvg_8h_a040b130202d4c2e3e1a57dd8837ed919.html#a040b130202d4c2e3e1a57dd8837ed919',1,'vkvg.h']]], + ['vkvg_5flog_5fdebug_528',['VKVG_LOG_DEBUG',['../vkvg_8h_a0411814a6919e5df693cf40dcfcbc4e3.html#a0411814a6919e5df693cf40dcfcbc4e3',1,'vkvg.h']]], + ['vkvg_5flog_5ferr_529',['VKVG_LOG_ERR',['../vkvg_8h_a6664f29e4f38fafb584188235b65718a.html#a6664f29e4f38fafb584188235b65718a',1,'vkvg.h']]], + ['vkvg_5flog_5ffull_530',['VKVG_LOG_FULL',['../vkvg_8h_a13fb664af0ea69bff0f1fbc142b57f60.html#a13fb664af0ea69bff0f1fbc142b57f60',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_531',['VKVG_LOG_INFO',['../vkvg_8h_af9445855626eb75472a91844db51e59e.html#af9445855626eb75472a91844db51e59e',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fcmd_532',['VKVG_LOG_INFO_CMD',['../vkvg_8h_a17d3944887e536639b7af4a12e7d657c.html#a17d3944887e536639b7af4a12e7d657c',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fibo_533',['VKVG_LOG_INFO_IBO',['../vkvg_8h_ac04f8e80a8db5dd46bf75406ef8c1989.html#ac04f8e80a8db5dd46bf75406ef8c1989',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fpath_534',['VKVG_LOG_INFO_PATH',['../vkvg_8h_af23f274286a67543b606d4918bc87d9c.html#af23f274286a67543b606d4918bc87d9c',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fpts_535',['VKVG_LOG_INFO_PTS',['../vkvg_8h_a3a67c32eb5d4216389d6e5305b49aa8a.html#a3a67c32eb5d4216389d6e5305b49aa8a',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fvao_536',['VKVG_LOG_INFO_VAO',['../vkvg_8h_aaee3dfb09930712dcbac4be383a3132d.html#aaee3dfb09930712dcbac4be383a3132d',1,'vkvg.h']]], + ['vkvg_5flog_5finfo_5fvbo_537',['VKVG_LOG_INFO_VBO',['../vkvg_8h_a2a55039902f51716c1ad337951ecf103.html#a2a55039902f51716c1ad337951ecf103',1,'vkvg.h']]], + ['vkvg_5flog_5fstroke_538',['VKVG_LOG_STROKE',['../vkvg_8h_ae0b32f5daaea9a1c1031f237599b914a.html#ae0b32f5daaea9a1c1031f237599b914a',1,'vkvg.h']]], + ['vkvg_5fpublic_539',['vkvg_public',['../vkvg_8h_aadcfd9780144829f5db766b6c54d18ef.html#aadcfd9780144829f5db766b6c54d18ef',1,'vkvg.h']]] +]; diff --git a/search/enums_0.html b/search/enums_0.html new file mode 100644 index 0000000..141fff5 --- /dev/null +++ b/search/enums_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enums_0.js b/search/enums_0.js new file mode 100644 index 0000000..109aaea --- /dev/null +++ b/search/enums_0.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['vkvg_5fdirection_5ft_462',['vkvg_direction_t',['../vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html#a2d6938aad383b6f91bf6be7164b2a995',1,'vkvg.h']]], + ['vkvg_5fextend_5ft_463',['vkvg_extend_t',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40',1,'vkvg.h']]], + ['vkvg_5ffill_5frule_5ft_464',['vkvg_fill_rule_t',['../vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html#a71071026a36a7427c364a8bdc9bccfb6',1,'vkvg.h']]], + ['vkvg_5ffilter_5ft_465',['vkvg_filter_t',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5',1,'vkvg.h']]], + ['vkvg_5fformat_5ft_466',['vkvg_format_t',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5ft_467',['vkvg_line_cap_t',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5ft_468',['vkvg_line_join_t',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698d',1,'vkvg.h']]], + ['vkvg_5foperator_5ft_469',['vkvg_operator_t',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5ft_470',['vkvg_pattern_type_t',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513',1,'vkvg.h']]], + ['vkvg_5fstatus_5ft_471',['vkvg_status_t',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354',1,'vkvg.h']]] +]; diff --git a/search/enumvalues_0.html b/search/enumvalues_0.html new file mode 100644 index 0000000..0d131d9 --- /dev/null +++ b/search/enumvalues_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js new file mode 100644 index 0000000..e0e794c --- /dev/null +++ b/search/enumvalues_0.js @@ -0,0 +1,58 @@ +var searchData= +[ + ['vkvg_5fextend_5fnone_472',['VKVG_EXTEND_NONE',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40a016c184949340ded7cab8cc3ebebee8f',1,'vkvg.h']]], + ['vkvg_5fextend_5fpad_473',['VKVG_EXTEND_PAD',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40a2fbaf3043fce97d14bcfaad9f2dc0a1c',1,'vkvg.h']]], + ['vkvg_5fextend_5freflect_474',['VKVG_EXTEND_REFLECT',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40ad3e0f41a1a2af562e7538657d6611832',1,'vkvg.h']]], + ['vkvg_5fextend_5frepeat_475',['VKVG_EXTEND_REPEAT',['../vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html#a9e76bb74a68a2e86a709ed7397cf1a40a7f0a3a3c71705d13270039ced36036c0',1,'vkvg.h']]], + ['vkvg_5ffill_5frule_5feven_5fodd_476',['VKVG_FILL_RULE_EVEN_ODD',['../vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html#a71071026a36a7427c364a8bdc9bccfb6ada97bad79f6371820b82472e0ff49fe7',1,'vkvg.h']]], + ['vkvg_5ffill_5frule_5fnon_5fzero_477',['VKVG_FILL_RULE_NON_ZERO',['../vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html#a71071026a36a7427c364a8bdc9bccfb6a799b8a88417c80da02d1d52d8e62a43d',1,'vkvg.h']]], + ['vkvg_5ffilter_5fbest_478',['VKVG_FILTER_BEST',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a00cb91e4e5cc8a0bc88ff1b8ab8fc8c0',1,'vkvg.h']]], + ['vkvg_5ffilter_5fbilinear_479',['VKVG_FILTER_BILINEAR',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a680a8fce657583362e33bdb2d97d3238',1,'vkvg.h']]], + ['vkvg_5ffilter_5ffast_480',['VKVG_FILTER_FAST',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a227895a3ffbd082c7f779c6c9ca7d76c',1,'vkvg.h']]], + ['vkvg_5ffilter_5fgaussian_481',['VKVG_FILTER_GAUSSIAN',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a3469ff42e4e804cf5b362eb2787b2654',1,'vkvg.h']]], + ['vkvg_5ffilter_5fgood_482',['VKVG_FILTER_GOOD',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a63f51bfec03cdca07fdfe9d718f3a75f',1,'vkvg.h']]], + ['vkvg_5ffilter_5fnearest_483',['VKVG_FILTER_NEAREST',['../vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html#adb45e5c6af26000f8dacd091679c0ca5a51346835be4c9cafb1b033ec6cae5754',1,'vkvg.h']]], + ['vkvg_5fformat_5fa1_484',['VKVG_FORMAT_A1',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5a41129f80cde1638c50336775ec6059f1',1,'vkvg.h']]], + ['vkvg_5fformat_5fa8_485',['VKVG_FORMAT_A8',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5a1fc395bec4fab5baf6a8e9d12c48f91b',1,'vkvg.h']]], + ['vkvg_5fformat_5fargb32_486',['VKVG_FORMAT_ARGB32',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5a51e8f390b02e7117cb6bded3df1bc609',1,'vkvg.h']]], + ['vkvg_5fformat_5frgb24_487',['VKVG_FORMAT_RGB24',['../vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html#ac8c85e867cfe90bfd43a2b2a75e688c5aca9496af53332389ea1c579becfff146',1,'vkvg.h']]], + ['vkvg_5fhorizontal_488',['VKVG_HORIZONTAL',['../vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html#a2d6938aad383b6f91bf6be7164b2a995aaa62739c1a76e107fba227dffd6b8199',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5fbutt_489',['VKVG_LINE_CAP_BUTT',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0a89ac22c56380187ec32463602a864f7b',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5fround_490',['VKVG_LINE_CAP_ROUND',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0a803bf47b2bc042a98c2f1cf2b6543519',1,'vkvg.h']]], + ['vkvg_5fline_5fcap_5fsquare_491',['VKVG_LINE_CAP_SQUARE',['../vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html#ae63b94eb181f12347450efcc67cbf8f0a3fca82a7ac5b5ef3355775c79d4adb45',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5fbevel_492',['VKVG_LINE_JOIN_BEVEL',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698da83710d8d86be990e5d057a109a559d83',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5fmiter_493',['VKVG_LINE_JOIN_MITER',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698da87107f3a4b3dcbabeb57102b2fb3a311',1,'vkvg.h']]], + ['vkvg_5fline_5fjoin_5fround_494',['VKVG_LINE_JOIN_ROUND',['../vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html#a46afd254ec45cd6ecd9bd3e238b4698da5f2989d8df5882d66a907ad8d70a3e3c',1,'vkvg.h']]], + ['vkvg_5foperator_5fclear_495',['VKVG_OPERATOR_CLEAR',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252a7af999d0306d40ea662520ee32b7c366',1,'vkvg.h']]], + ['vkvg_5foperator_5fdifference_496',['VKVG_OPERATOR_DIFFERENCE',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252ab391cf4ab11c3654ac15df0e573ecc78',1,'vkvg.h']]], + ['vkvg_5foperator_5fmax_497',['VKVG_OPERATOR_MAX',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252a6a036630d0638105f87246cfa75e6a54',1,'vkvg.h']]], + ['vkvg_5foperator_5fover_498',['VKVG_OPERATOR_OVER',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252a4dfe6b31014d9176eb6b7a7aa3d385b9',1,'vkvg.h']]], + ['vkvg_5foperator_5fsource_499',['VKVG_OPERATOR_SOURCE',['../vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html#a4202eb97e7aaee0296c33f8a6b932252ab3cee330e9692a3ff88897172616572d',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5flinear_500',['VKVG_PATTERN_TYPE_LINEAR',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513a4aff9ccbec5d272981c596474adb5386',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fmesh_501',['VKVG_PATTERN_TYPE_MESH',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513a926565c0b987eed62e76eca261151ee5',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fradial_502',['VKVG_PATTERN_TYPE_RADIAL',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513abac29bd75596cb8af065aa02a1aa34e4',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fraster_5fsource_503',['VKVG_PATTERN_TYPE_RASTER_SOURCE',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513ae30ae9f2771df088bc24886fd42fc037',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fsolid_504',['VKVG_PATTERN_TYPE_SOLID',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513aeb9d4daba143ba603f114c3805ab4fa4',1,'vkvg.h']]], + ['vkvg_5fpattern_5ftype_5fsurface_505',['VKVG_PATTERN_TYPE_SURFACE',['../vkvg_8h_a1cde27798744c6485ac522a843017513.html#a1cde27798744c6485ac522a843017513a8396d15ca456c54a268bdc464107e5db',1,'vkvg.h']]], + ['vkvg_5fstatus_5fdevice_5ferror_506',['VKVG_STATUS_DEVICE_ERROR',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a46632c80bd681da4f2d702d01536e7e2',1,'vkvg.h']]], + ['vkvg_5fstatus_5ffile_5fnot_5ffound_507',['VKVG_STATUS_FILE_NOT_FOUND',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ae26847e7ea42867a9ae851b2b3a976a4',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fdash_508',['VKVG_STATUS_INVALID_DASH',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ad171c132ea43395b0a748c63b99f55d9',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5ffont_509',['VKVG_STATUS_INVALID_FONT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ab341e285e7fb0b4f978c3a4140aea3b9',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fformat_510',['VKVG_STATUS_INVALID_FORMAT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354aac1f7c1ddaf47f1ef79695e901d718f1',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fimage_511',['VKVG_STATUS_INVALID_IMAGE',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a890b1b1bb306569af3b2b227174f1bea',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5findex_512',['VKVG_STATUS_INVALID_INDEX',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a3877cf9b80073825918fdfba0ac51696',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fmatrix_513',['VKVG_STATUS_INVALID_MATRIX',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a80652ae5261224409e179eef9121e5bd',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5frect_514',['VKVG_STATUS_INVALID_RECT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a0941445d038633da494992ac519a7016',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5frestore_515',['VKVG_STATUS_INVALID_RESTORE',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ad38afefc99aa272f5fa31598ddd0aa7f',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fstatus_516',['VKVG_STATUS_INVALID_STATUS',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354af1e2820c9277603041bb2cf1e92b9bcb',1,'vkvg.h']]], + ['vkvg_5fstatus_5finvalid_5fsurface_517',['VKVG_STATUS_INVALID_SURFACE',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a5bcda4c3516b85fd0029ca437547fa4d',1,'vkvg.h']]], + ['vkvg_5fstatus_5fno_5fcurrent_5fpoint_518',['VKVG_STATUS_NO_CURRENT_POINT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354ae52f6f34a55e63cc48acc0a973c5d454',1,'vkvg.h']]], + ['vkvg_5fstatus_5fno_5fmemory_519',['VKVG_STATUS_NO_MEMORY',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354adca5beade5a3fd84c5e3cb4db65d593e',1,'vkvg.h']]], + ['vkvg_5fstatus_5fnull_5fpointer_520',['VKVG_STATUS_NULL_POINTER',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a38d751f65b5ca4aba90ba3695627946c',1,'vkvg.h']]], + ['vkvg_5fstatus_5fpattern_5finvalid_5fgradient_521',['VKVG_STATUS_PATTERN_INVALID_GRADIENT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a014caf10e7e9796a1525c330d046e5b8',1,'vkvg.h']]], + ['vkvg_5fstatus_5fpattern_5ftype_5fmismatch_522',['VKVG_STATUS_PATTERN_TYPE_MISMATCH',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a1e6dcf65d3707ebb3c7aa1b96cf21987',1,'vkvg.h']]], + ['vkvg_5fstatus_5fsuccess_523',['VKVG_STATUS_SUCCESS',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354adeea52cf65dc55d26c0ba6824c3245bf',1,'vkvg.h']]], + ['vkvg_5fstatus_5ftimeout_524',['VKVG_STATUS_TIMEOUT',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354a60d73c0671225205d8e97877ea34d071',1,'vkvg.h']]], + ['vkvg_5fstatus_5fwrite_5ferror_525',['VKVG_STATUS_WRITE_ERROR',['../vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html#a0cf53c292fd50abe53343d71673c9354abbd09c792c0a7f4e25492bc1fd038db6',1,'vkvg.h']]], + ['vkvg_5fvertical_526',['VKVG_VERTICAL',['../vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html#a2d6938aad383b6f91bf6be7164b2a995a288489ba8f506ba72415b35e86e5f332',1,'vkvg.h']]] +]; diff --git a/search/files_0.html b/search/files_0.html new file mode 100644 index 0000000..9498842 --- /dev/null +++ b/search/files_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_0.js b/search/files_0.js new file mode 100644 index 0000000..86216ba --- /dev/null +++ b/search/files_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['vkvg_2dsvg_2eh_279',['vkvg-svg.h',['../vkvg-svg_8h.html',1,'']]], + ['vkvg_2eh_280',['vkvg.h',['../vkvg_8h.html',1,'']]] +]; diff --git a/search/functions_0.html b/search/functions_0.html new file mode 100644 index 0000000..eb4c501 --- /dev/null +++ b/search/functions_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_0.js b/search/functions_0.js new file mode 100644 index 0000000..693bf53 --- /dev/null +++ b/search/functions_0.js @@ -0,0 +1,155 @@ +var searchData= +[ + ['vkvg_5farc_281',['vkvg_arc',['../group__context_ga8acf97c1e4ae8ab67764a96a0d5d7b9c.html#ga8acf97c1e4ae8ab67764a96a0d5d7b9c',1,'vkvg.h']]], + ['vkvg_5farc_5fnegative_282',['vkvg_arc_negative',['../group__context_ga7e937e021bf96bd38de3e478bf80c3e7.html#ga7e937e021bf96bd38de3e478bf80c3e7',1,'vkvg.h']]], + ['vkvg_5fclear_283',['vkvg_clear',['../group__context_gac418bd821f5e47d7c9deb6f58b5bc03d.html#gac418bd821f5e47d7c9deb6f58b5bc03d',1,'vkvg.h']]], + ['vkvg_5fclip_284',['vkvg_clip',['../group__context_ga13183bfc6468e0106b487a397ea1d870.html#ga13183bfc6468e0106b487a397ea1d870',1,'vkvg.h']]], + ['vkvg_5fclip_5fpreserve_285',['vkvg_clip_preserve',['../group__context_ga42752652b304544765ffbc9f1355f04a.html#ga42752652b304544765ffbc9f1355f04a',1,'vkvg.h']]], + ['vkvg_5fclose_5fpath_286',['vkvg_close_path',['../group__context_ga0e1611518cd6aa91d3527fefcfdf2957.html#ga0e1611518cd6aa91d3527fefcfdf2957',1,'vkvg.h']]], + ['vkvg_5fcreate_287',['vkvg_create',['../group__context_gacd68ee83c078f62d89709034c562897b.html#gacd68ee83c078f62d89709034c562897b',1,'vkvg.h']]], + ['vkvg_5fcurve_5fto_288',['vkvg_curve_to',['../group__context_gae1be850b3f4a6b01e35344bd033bf3d0.html#gae1be850b3f4a6b01e35344bd033bf3d0',1,'vkvg.h']]], + ['vkvg_5fdestroy_289',['vkvg_destroy',['../group__context_gabfc11b67746a4b438580242c79ef6dce.html#gabfc11b67746a4b438580242c79ef6dce',1,'vkvg.h']]], + ['vkvg_5fdevice_5fcreate_290',['vkvg_device_create',['../group__device_ga3a87ef8a0d782aa26a39ff63218ea25c.html#ga3a87ef8a0d782aa26a39ff63218ea25c',1,'vkvg.h']]], + ['vkvg_5fdevice_5fcreate_5ffrom_5fvk_291',['vkvg_device_create_from_vk',['../group__device_ga1d3b3027ad47c29d49a82705ff21c802.html#ga1d3b3027ad47c29d49a82705ff21c802',1,'vkvg.h']]], + ['vkvg_5fdevice_5fcreate_5ffrom_5fvk_5fmultisample_292',['vkvg_device_create_from_vk_multisample',['../group__device_ga584714cbe547b91c08904a90f269c170.html#ga584714cbe547b91c08904a90f269c170',1,'vkvg.h']]], + ['vkvg_5fdevice_5fdestroy_293',['vkvg_device_destroy',['../group__device_ga38c54930707fd47bbdb59ee9000a6d21.html#ga38c54930707fd47bbdb59ee9000a6d21',1,'vkvg.h']]], + ['vkvg_5fdevice_5fget_5fdpy_294',['vkvg_device_get_dpy',['../group__device_ga110a3746370bc3a61aa95e048e739d2e.html#ga110a3746370bc3a61aa95e048e739d2e',1,'vkvg.h']]], + ['vkvg_5fdevice_5fget_5freference_5fcount_295',['vkvg_device_get_reference_count',['../group__device_ga4e12927c2cda70943f304f5fdbd43882.html#ga4e12927c2cda70943f304f5fdbd43882',1,'vkvg.h']]], + ['vkvg_5fdevice_5freference_296',['vkvg_device_reference',['../group__device_ga7328d8f0102dd7dcf725bc3c77aa95f8.html#ga7328d8f0102dd7dcf725bc3c77aa95f8',1,'vkvg.h']]], + ['vkvg_5fdevice_5fset_5fdpy_297',['vkvg_device_set_dpy',['../group__device_gacee1dad855f7ceb5e803c0379e37cff5.html#gacee1dad855f7ceb5e803c0379e37cff5',1,'vkvg.h']]], + ['vkvg_5fdevice_5fset_5fthread_5faware_298',['vkvg_device_set_thread_aware',['../group__device_gaa7b5b0a579d1202e8d782f720f603d91.html#gaa7b5b0a579d1202e8d782f720f603d91',1,'vkvg.h']]], + ['vkvg_5fdevice_5fstatus_299',['vkvg_device_status',['../group__device_ga76abb77e8be8a16dd7ddd03950ba168b.html#ga76abb77e8be8a16dd7ddd03950ba168b',1,'vkvg.h']]], + ['vkvg_5fellipse_300',['vkvg_ellipse',['../group__context_gaadec811521b3edb7a509bd9c6e370ee5.html#gaadec811521b3edb7a509bd9c6e370ee5',1,'vkvg.h']]], + ['vkvg_5felliptic_5farc_5fto_301',['vkvg_elliptic_arc_to',['../group__context_ga74f4c24e04116105ddc91b31a174ed34.html#ga74f4c24e04116105ddc91b31a174ed34',1,'vkvg.h']]], + ['vkvg_5ffill_302',['vkvg_fill',['../group__context_ga7b84dd59cc0b3d116948a89ff7ad53f8.html#ga7b84dd59cc0b3d116948a89ff7ad53f8',1,'vkvg.h']]], + ['vkvg_5ffill_5fpreserve_303',['vkvg_fill_preserve',['../group__context_gaa0dd784bb4277124e6fd2546a50b970a.html#gaa0dd784bb4277124e6fd2546a50b970a',1,'vkvg.h']]], + ['vkvg_5fflush_304',['vkvg_flush',['../group__context_gadf5a54205231c9026559eb3a912578ef.html#gadf5a54205231c9026559eb3a912578ef',1,'vkvg.h']]], + ['vkvg_5ffont_5fextents_305',['vkvg_font_extents',['../group__context_ga0a1ff002bf87d056d6749966fdabd3a6.html#ga0a1ff002bf87d056d6749966fdabd3a6',1,'vkvg.h']]], + ['vkvg_5fget_5fcurrent_5fpoint_306',['vkvg_get_current_point',['../group__context_ga54e4a562ce79bfe7b27bccb354211526.html#ga54e4a562ce79bfe7b27bccb354211526',1,'vkvg.h']]], + ['vkvg_5fget_5fdash_307',['vkvg_get_dash',['../group__context_gaa2a085eb1589cad42d21a79d967ba821.html#gaa2a085eb1589cad42d21a79d967ba821',1,'vkvg.h']]], + ['vkvg_5fget_5fdevice_5frequirements_308',['vkvg_get_device_requirements',['../group__device_ga6b1a6746ce78e41714bfa433dde3f330.html#ga6b1a6746ce78e41714bfa433dde3f330',1,'vkvg.h']]], + ['vkvg_5fget_5ffill_5frule_309',['vkvg_get_fill_rule',['../group__context_ga5accbb746089e87bcf2affb3b8d013ff.html#ga5accbb746089e87bcf2affb3b8d013ff',1,'vkvg.h']]], + ['vkvg_5fget_5fline_5fcap_310',['vkvg_get_line_cap',['../group__context_ga99ca38817ba4247d2cacb2140f4ad1f6.html#ga99ca38817ba4247d2cacb2140f4ad1f6',1,'vkvg.h']]], + ['vkvg_5fget_5fline_5fjoin_311',['vkvg_get_line_join',['../group__context_ga41a306bcd66be7fc2f00b66a5ea92208.html#ga41a306bcd66be7fc2f00b66a5ea92208',1,'vkvg.h']]], + ['vkvg_5fget_5fline_5fwidth_312',['vkvg_get_line_width',['../group__context_ga25e4334755ba6bef6a74bc263554c07e.html#ga25e4334755ba6bef6a74bc263554c07e',1,'vkvg.h']]], + ['vkvg_5fget_5fmatrix_313',['vkvg_get_matrix',['../group__context_ga79ca5efa6ffc3025bda30a1d0ed3e2ce.html#ga79ca5efa6ffc3025bda30a1d0ed3e2ce',1,'vkvg.h']]], + ['vkvg_5fget_5fmiter_5flimit_314',['vkvg_get_miter_limit',['../group__context_ga4d37ec2bc539cbb2f088152c1785724a.html#ga4d37ec2bc539cbb2f088152c1785724a',1,'vkvg.h']]], + ['vkvg_5fget_5fopacity_315',['vkvg_get_opacity',['../group__context_ga0bb6ecd1c3f10f1a6bae09a808986a7c.html#ga0bb6ecd1c3f10f1a6bae09a808986a7c',1,'vkvg.h']]], + ['vkvg_5fget_5foperator_316',['vkvg_get_operator',['../group__context_ga96ae65bebca48a87348d960d5ba52b03.html#ga96ae65bebca48a87348d960d5ba52b03',1,'vkvg.h']]], + ['vkvg_5fget_5freference_5fcount_317',['vkvg_get_reference_count',['../group__context_gaa7356999fb385658dc2ff6c182e639c5.html#gaa7356999fb385658dc2ff6c182e639c5',1,'vkvg.h']]], + ['vkvg_5fget_5frequired_5fdevice_5fextensions_318',['vkvg_get_required_device_extensions',['../group__device_ga10ea171640ba5da3027c60390725666c.html#ga10ea171640ba5da3027c60390725666c',1,'vkvg.h']]], + ['vkvg_5fget_5frequired_5finstance_5fextensions_319',['vkvg_get_required_instance_extensions',['../group__device_ga7cf75a034d9fb4a78c82724154cf73c8.html#ga7cf75a034d9fb4a78c82724154cf73c8',1,'vkvg.h']]], + ['vkvg_5fget_5fsource_320',['vkvg_get_source',['../group__context_gace9e98ac61a0fbdc79d1cee9291c15bb.html#gace9e98ac61a0fbdc79d1cee9291c15bb',1,'vkvg.h']]], + ['vkvg_5fget_5ftarget_321',['vkvg_get_target',['../group__context_ga5681b5178166d4f96d9f803000866200.html#ga5681b5178166d4f96d9f803000866200',1,'vkvg.h']]], + ['vkvg_5fhas_5fcurrent_5fpoint_322',['vkvg_has_current_point',['../group__context_gac2c7805769e61c06151b52f3fb52986d.html#gac2c7805769e61c06151b52f3fb52986d',1,'vkvg.h']]], + ['vkvg_5fidentity_5fmatrix_323',['vkvg_identity_matrix',['../group__context_ga61e679b9e01cdf105c7756bf9854697b.html#ga61e679b9e01cdf105c7756bf9854697b',1,'vkvg.h']]], + ['vkvg_5fline_5fto_324',['vkvg_line_to',['../group__context_gaaa044940f56de70161b3821934077c7b.html#gaaa044940f56de70161b3821934077c7b',1,'vkvg.h']]], + ['vkvg_5fload_5ffont_5ffrom_5fmemory_325',['vkvg_load_font_from_memory',['../group__context_ga8ca1adfc2ff436c4f1e76f46ba14d9b0.html#ga8ca1adfc2ff436c4f1e76f46ba14d9b0',1,'vkvg.h']]], + ['vkvg_5fload_5ffont_5ffrom_5fpath_326',['vkvg_load_font_from_path',['../group__context_gaaaab7e5a95eab3cb812bbe4865d85951.html#gaaaab7e5a95eab3cb812bbe4865d85951',1,'vkvg.h']]], + ['vkvg_5fmatrix_5fget_5fscale_327',['vkvg_matrix_get_scale',['../group__matrix_ga2146e1153f46e8ef79918dba5d32ac91.html#ga2146e1153f46e8ef79918dba5d32ac91',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_328',['vkvg_matrix_init',['../group__matrix_gaf11800eb40198628fabb928a743fecb1.html#gaf11800eb40198628fabb928a743fecb1',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5fidentity_329',['vkvg_matrix_init_identity',['../group__matrix_ga22c80d15d3492420d9dc9fea4ddf7d76.html#ga22c80d15d3492420d9dc9fea4ddf7d76',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5frotate_330',['vkvg_matrix_init_rotate',['../group__matrix_ga38fb3ab8cc86565a8e5863b788f00921.html#ga38fb3ab8cc86565a8e5863b788f00921',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5fscale_331',['vkvg_matrix_init_scale',['../group__matrix_gac6da39c63aa83f333fad4876da70c495.html#gac6da39c63aa83f333fad4876da70c495',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finit_5ftranslate_332',['vkvg_matrix_init_translate',['../group__matrix_ga9078043e7c548ef9fec35de32ffc86e3.html#ga9078043e7c548ef9fec35de32ffc86e3',1,'vkvg.h']]], + ['vkvg_5fmatrix_5finvert_333',['vkvg_matrix_invert',['../group__matrix_ga0db3d74caa93dd3b2e8595301d447bec.html#ga0db3d74caa93dd3b2e8595301d447bec',1,'vkvg.h']]], + ['vkvg_5fmatrix_5fmultiply_334',['vkvg_matrix_multiply',['../group__matrix_ga672a08bfb37a7b28db89e1d60988b47f.html#ga672a08bfb37a7b28db89e1d60988b47f',1,'vkvg.h']]], + ['vkvg_5fmatrix_5frotate_335',['vkvg_matrix_rotate',['../group__matrix_gacbad7841972e44b065fc74e17dcce2cd.html#gacbad7841972e44b065fc74e17dcce2cd',1,'vkvg.h']]], + ['vkvg_5fmatrix_5fscale_336',['vkvg_matrix_scale',['../group__matrix_ga053850768b56f00336573729d1ea1090.html#ga053850768b56f00336573729d1ea1090',1,'vkvg.h']]], + ['vkvg_5fmatrix_5ftransform_5fdistance_337',['vkvg_matrix_transform_distance',['../group__matrix_ga155802a492a4c6a7bb20fb101d0089e4.html#ga155802a492a4c6a7bb20fb101d0089e4',1,'vkvg.h']]], + ['vkvg_5fmatrix_5ftransform_5fpoint_338',['vkvg_matrix_transform_point',['../group__matrix_gad9dc2333081dc6f631ec529f94ec19dc.html#gad9dc2333081dc6f631ec529f94ec19dc',1,'vkvg.h']]], + ['vkvg_5fmatrix_5ftranslate_339',['vkvg_matrix_translate',['../group__matrix_ga34aa0d5b237ad0e3b4905b59ec08fd3b.html#ga34aa0d5b237ad0e3b4905b59ec08fd3b',1,'vkvg.h']]], + ['vkvg_5fmove_5fto_340',['vkvg_move_to',['../group__context_ga41d32b2e72c0eccf4a2bc695598c50ba.html#ga41d32b2e72c0eccf4a2bc695598c50ba',1,'vkvg.h']]], + ['vkvg_5fmultisample_5fsurface_5fresolve_341',['vkvg_multisample_surface_resolve',['../group__surface_gaa77f72e566105b65f7e8563d4a9301d9.html#gaa77f72e566105b65f7e8563d4a9301d9',1,'vkvg.h']]], + ['vkvg_5fnew_5fpath_342',['vkvg_new_path',['../group__context_ga5d60e9db2309e786ac30218efab804cb.html#ga5d60e9db2309e786ac30218efab804cb',1,'vkvg.h']]], + ['vkvg_5fnew_5fsub_5fpath_343',['vkvg_new_sub_path',['../group__context_ga6fd276cc6718c78aa889d289004707f2.html#ga6fd276cc6718c78aa889d289004707f2',1,'vkvg.h']]], + ['vkvg_5fpaint_344',['vkvg_paint',['../group__context_ga95d31d8c703526652ad57a42292146e2.html#ga95d31d8c703526652ad57a42292146e2',1,'vkvg.h']]], + ['vkvg_5fpath_5fextents_345',['vkvg_path_extents',['../group__context_gad6e3a8dca42362ceebe8d949058ad3b4.html#gad6e3a8dca42362ceebe8d949058ad3b4',1,'vkvg.h']]], + ['vkvg_5fpattern_5fadd_5fcolor_5fstop_346',['vkvg_pattern_add_color_stop',['../group__pattern_gabef66c6a7a6baf98f0f89d30bb55f46d.html#gabef66c6a7a6baf98f0f89d30bb55f46d',1,'vkvg.h']]], + ['vkvg_5fpattern_5fcreate_5ffor_5fsurface_347',['vkvg_pattern_create_for_surface',['../group__pattern_ga7d03d46f9c1544f01eb556fa840c94e0.html#ga7d03d46f9c1544f01eb556fa840c94e0',1,'vkvg.h']]], + ['vkvg_5fpattern_5fcreate_5flinear_348',['vkvg_pattern_create_linear',['../group__pattern_ga2c359145c22b8384317dcceee7d065a7.html#ga2c359145c22b8384317dcceee7d065a7',1,'vkvg.h']]], + ['vkvg_5fpattern_5fcreate_5fradial_349',['vkvg_pattern_create_radial',['../group__pattern_ga17618bd315ba5382d66b86cb0feb6af9.html#ga17618bd315ba5382d66b86cb0feb6af9',1,'vkvg.h']]], + ['vkvg_5fpattern_5fdestroy_350',['vkvg_pattern_destroy',['../group__pattern_ga14cb27e833bbdd0a922a153bac41837a.html#ga14cb27e833bbdd0a922a153bac41837a',1,'vkvg.h']]], + ['vkvg_5fpattern_5fedit_5flinear_351',['vkvg_pattern_edit_linear',['../group__pattern_ga34701b3ab3a3976f65b9a5e229efee1d.html#ga34701b3ab3a3976f65b9a5e229efee1d',1,'vkvg.h']]], + ['vkvg_5fpattern_5fedit_5fradial_352',['vkvg_pattern_edit_radial',['../group__pattern_gabe88f93962cbc6bec99fd94fd01f5547.html#gabe88f93962cbc6bec99fd94fd01f5547',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fcolor_5fstop_5fcount_353',['vkvg_pattern_get_color_stop_count',['../group__pattern_ga8322c6bd1ef02f3f15faee3993ef55d1.html#ga8322c6bd1ef02f3f15faee3993ef55d1',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fcolor_5fstop_5frgba_354',['vkvg_pattern_get_color_stop_rgba',['../group__pattern_ga743ac3fb70e31150aa98bdc11424a36b.html#ga743ac3fb70e31150aa98bdc11424a36b',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fextend_355',['vkvg_pattern_get_extend',['../group__pattern_gac87c237c36d4902d1e865778debd3d8d.html#gac87c237c36d4902d1e865778debd3d8d',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5ffilter_356',['vkvg_pattern_get_filter',['../group__pattern_ga510cf4273c0a2a9aa027c388dc2f48b2.html#ga510cf4273c0a2a9aa027c388dc2f48b2',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5flinear_5fpoints_357',['vkvg_pattern_get_linear_points',['../group__pattern_ga2939439acaf8ee99bf42f7f0eeb1cf51.html#ga2939439acaf8ee99bf42f7f0eeb1cf51',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5fmatrix_358',['vkvg_pattern_get_matrix',['../group__pattern_ga0c1342ac3ea8201996c6dfcd9fd85ff9.html#ga0c1342ac3ea8201996c6dfcd9fd85ff9',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5freference_5fcount_359',['vkvg_pattern_get_reference_count',['../group__pattern_ga6d902720df09232c3836af5517831efe.html#ga6d902720df09232c3836af5517831efe',1,'vkvg.h']]], + ['vkvg_5fpattern_5fget_5ftype_360',['vkvg_pattern_get_type',['../group__pattern_gab97a47af9ac9d3e71a70008cf8b05487.html#gab97a47af9ac9d3e71a70008cf8b05487',1,'vkvg.h']]], + ['vkvg_5fpattern_5freference_361',['vkvg_pattern_reference',['../group__pattern_ga72f8f796252b9716a2cc7e66710dc529.html#ga72f8f796252b9716a2cc7e66710dc529',1,'vkvg.h']]], + ['vkvg_5fpattern_5fset_5fextend_362',['vkvg_pattern_set_extend',['../group__pattern_ga730832bea18d0c15f98eaa1ee1102f43.html#ga730832bea18d0c15f98eaa1ee1102f43',1,'vkvg.h']]], + ['vkvg_5fpattern_5fset_5ffilter_363',['vkvg_pattern_set_filter',['../group__pattern_ga97a53a5be17a79b6bdd28a49b50d523c.html#ga97a53a5be17a79b6bdd28a49b50d523c',1,'vkvg.h']]], + ['vkvg_5fpattern_5fset_5fmatrix_364',['vkvg_pattern_set_matrix',['../group__pattern_ga8983c6211dd369a5240a41bfd2a49090.html#ga8983c6211dd369a5240a41bfd2a49090',1,'vkvg.h']]], + ['vkvg_5fquadratic_5fto_365',['vkvg_quadratic_to',['../group__context_gad571c4011138a2cba97fe31709faafc7.html#gad571c4011138a2cba97fe31709faafc7',1,'vkvg.h']]], + ['vkvg_5frectangle_366',['vkvg_rectangle',['../group__context_ga70c154560a0c15922815cfe7d6530312.html#ga70c154560a0c15922815cfe7d6530312',1,'vkvg.h']]], + ['vkvg_5freference_367',['vkvg_reference',['../group__context_ga59ac2b80c1610a785e65ad44fde2b1d0.html#ga59ac2b80c1610a785e65ad44fde2b1d0',1,'vkvg.h']]], + ['vkvg_5frel_5fcurve_5fto_368',['vkvg_rel_curve_to',['../group__context_ga154cef8a49f052068c9f0d6f897aa3d6.html#ga154cef8a49f052068c9f0d6f897aa3d6',1,'vkvg.h']]], + ['vkvg_5frel_5felliptic_5farc_5fto_369',['vkvg_rel_elliptic_arc_to',['../group__context_ga7fd336046c4afa45de5e5473faed9b2d.html#ga7fd336046c4afa45de5e5473faed9b2d',1,'vkvg.h']]], + ['vkvg_5frel_5fline_5fto_370',['vkvg_rel_line_to',['../group__context_ga7c420f18b584d664ba272351503b552a.html#ga7c420f18b584d664ba272351503b552a',1,'vkvg.h']]], + ['vkvg_5frel_5fmove_5fto_371',['vkvg_rel_move_to',['../group__context_gaaddca8228bb495010ea67cb312db28d5.html#gaaddca8228bb495010ea67cb312db28d5',1,'vkvg.h']]], + ['vkvg_5frel_5fquadratic_5fto_372',['vkvg_rel_quadratic_to',['../group__context_ga94c7fd0444bb8b997a780e1895125837.html#ga94c7fd0444bb8b997a780e1895125837',1,'vkvg.h']]], + ['vkvg_5freset_5fclip_373',['vkvg_reset_clip',['../group__context_ga7f881ada9c9c463683359d84e876e695.html#ga7f881ada9c9c463683359d84e876e695',1,'vkvg.h']]], + ['vkvg_5frestore_374',['vkvg_restore',['../group__context_ga490b9db147cf800e5e98eefe3753b8ec.html#ga490b9db147cf800e5e98eefe3753b8ec',1,'vkvg.h']]], + ['vkvg_5frotate_375',['vkvg_rotate',['../group__context_gae025c30c061c0264d4a9f469e8c05d1c.html#gae025c30c061c0264d4a9f469e8c05d1c',1,'vkvg.h']]], + ['vkvg_5frounded_5frectangle_376',['vkvg_rounded_rectangle',['../group__context_gaa5967f211de903e7feb6bf12ae909a06.html#gaa5967f211de903e7feb6bf12ae909a06',1,'vkvg.h']]], + ['vkvg_5frounded_5frectangle2_377',['vkvg_rounded_rectangle2',['../group__context_ga13635442e4c14287367823598f2535cb.html#ga13635442e4c14287367823598f2535cb',1,'vkvg.h']]], + ['vkvg_5fsave_378',['vkvg_save',['../group__context_gae3a369a75b9d87c84547a5cd05a221e6.html#gae3a369a75b9d87c84547a5cd05a221e6',1,'vkvg.h']]], + ['vkvg_5fscale_379',['vkvg_scale',['../group__context_ga5d8b1a43c078011541b8ad40a2af00bb.html#ga5d8b1a43c078011541b8ad40a2af00bb',1,'vkvg.h']]], + ['vkvg_5fselect_5ffont_5fface_380',['vkvg_select_font_face',['../group__context_ga88295a0e1ad4344a05de82c54b7159db.html#ga88295a0e1ad4344a05de82c54b7159db',1,'vkvg.h']]], + ['vkvg_5fset_5fdash_381',['vkvg_set_dash',['../group__context_ga38d3fd1954fdcddd9013117f60d21707.html#ga38d3fd1954fdcddd9013117f60d21707',1,'vkvg.h']]], + ['vkvg_5fset_5ffill_5frule_382',['vkvg_set_fill_rule',['../group__context_ga32ccec401affe05abbbcc914cd3139e6.html#ga32ccec401affe05abbbcc914cd3139e6',1,'vkvg.h']]], + ['vkvg_5fset_5ffont_5fsize_383',['vkvg_set_font_size',['../group__context_ga93286454cb5af21e9ddf69635e1351ef.html#ga93286454cb5af21e9ddf69635e1351ef',1,'vkvg.h']]], + ['vkvg_5fset_5fline_5fcap_384',['vkvg_set_line_cap',['../group__context_ga2af37f98b630134843446c5d8109741f.html#ga2af37f98b630134843446c5d8109741f',1,'vkvg.h']]], + ['vkvg_5fset_5fline_5fjoin_385',['vkvg_set_line_join',['../group__context_ga261c6105cc8574a05a971b562cfbbfdf.html#ga261c6105cc8574a05a971b562cfbbfdf',1,'vkvg.h']]], + ['vkvg_5fset_5fline_5fwidth_386',['vkvg_set_line_width',['../group__context_gaa1dd0e917ca55bb68795b6973f1fa38e.html#gaa1dd0e917ca55bb68795b6973f1fa38e',1,'vkvg.h']]], + ['vkvg_5fset_5fmatrix_387',['vkvg_set_matrix',['../group__context_ga17c5a80eb803be493370b95add18e0e0.html#ga17c5a80eb803be493370b95add18e0e0',1,'vkvg.h']]], + ['vkvg_5fset_5fmiter_5flimit_388',['vkvg_set_miter_limit',['../group__context_ga19370dc950aa5f87d13feb2824faf441.html#ga19370dc950aa5f87d13feb2824faf441',1,'vkvg.h']]], + ['vkvg_5fset_5fopacity_389',['vkvg_set_opacity',['../group__context_ga78687897d394221132d57809244a2bde.html#ga78687897d394221132d57809244a2bde',1,'vkvg.h']]], + ['vkvg_5fset_5foperator_390',['vkvg_set_operator',['../group__context_gab9a9036245eb304f4214705879326f13.html#gab9a9036245eb304f4214705879326f13',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_391',['vkvg_set_source',['../group__context_ga73db2af35f3339bc926854a492560964.html#ga73db2af35f3339bc926854a492560964',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5fcolor_392',['vkvg_set_source_color',['../group__context_ga46da71eebe6f6dbb5056dc1429ced863.html#ga46da71eebe6f6dbb5056dc1429ced863',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5fcolor_5fname_393',['vkvg_set_source_color_name',['../vkvg_8h_a164da86a4b2636d58d39c45a857b7227.html#a164da86a4b2636d58d39c45a857b7227',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5frgb_394',['vkvg_set_source_rgb',['../group__context_ga89a8aa13acca2fdae86a6f94912513b4.html#ga89a8aa13acca2fdae86a6f94912513b4',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5frgba_395',['vkvg_set_source_rgba',['../group__context_ga7f1817e3b786b376348af666b2f0520a.html#ga7f1817e3b786b376348af666b2f0520a',1,'vkvg.h']]], + ['vkvg_5fset_5fsource_5fsurface_396',['vkvg_set_source_surface',['../group__context_ga7316a9d4a70cbc592923c8d3410df077.html#ga7316a9d4a70cbc592923c8d3410df077',1,'vkvg.h']]], + ['vkvg_5fshow_5ftext_397',['vkvg_show_text',['../group__context_ga2e3f3777b3ba1a6de1d54eb7c23737d9.html#ga2e3f3777b3ba1a6de1d54eb7c23737d9',1,'vkvg.h']]], + ['vkvg_5fshow_5ftext_5frun_398',['vkvg_show_text_run',['../group__context_ga2e5ac52635eb2745b9f28373689df0d9.html#ga2e5ac52635eb2745b9f28373689df0d9',1,'vkvg.h']]], + ['vkvg_5fstatus_399',['vkvg_status',['../group__context_gaa7a77d72856d41276186df5bb2299339.html#gaa7a77d72856d41276186df5bb2299339',1,'vkvg.h']]], + ['vkvg_5fstatus_5fto_5fstring_400',['vkvg_status_to_string',['../group__context_ga36fe35b2d255b66d379b70567d49eed2.html#ga36fe35b2d255b66d379b70567d49eed2',1,'vkvg.h']]], + ['vkvg_5fstroke_401',['vkvg_stroke',['../group__context_ga3590f94fe38df4f98f196d738827891c.html#ga3590f94fe38df4f98f196d738827891c',1,'vkvg.h']]], + ['vkvg_5fstroke_5fpreserve_402',['vkvg_stroke_preserve',['../group__context_ga3f64f9251bd63c229205115a214acfc1.html#ga3f64f9251bd63c229205115a214acfc1',1,'vkvg.h']]], + ['vkvg_5fsurface_5fclear_403',['vkvg_surface_clear',['../group__surface_gaed1d8ba342a78c0335647dca56e27174.html#gaed1d8ba342a78c0335647dca56e27174',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_404',['vkvg_surface_create',['../group__surface_gaebe02eedfc8d5af54c2962aa7227959d.html#gaebe02eedfc8d5af54c2962aa7227959d',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_5ffor_5fvkhimage_405',['vkvg_surface_create_for_VkhImage',['../group__surface_gab927868517986c317e393a1c874081b0.html#gab927868517986c317e393a1c874081b0',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_5ffrom_5fimage_406',['vkvg_surface_create_from_image',['../group__surface_ga1bc77fa0f6a6508d988ab2bc2f391190.html#ga1bc77fa0f6a6508d988ab2bc2f391190',1,'vkvg.h']]], + ['vkvg_5fsurface_5fcreate_5ffrom_5fsvg_407',['vkvg_surface_create_from_svg',['../vkvg-svg_8h_a1af810e3d7566e821d72e3096db9056a.html#a1af810e3d7566e821d72e3096db9056a',1,'vkvg-svg.h']]], + ['vkvg_5fsurface_5fcreate_5ffrom_5fsvg_5ffragment_408',['vkvg_surface_create_from_svg_fragment',['../vkvg-svg_8h_a326e6bec4bdf939b764e7d2c225f17d1.html#a326e6bec4bdf939b764e7d2c225f17d1',1,'vkvg-svg.h']]], + ['vkvg_5fsurface_5fdestroy_409',['vkvg_surface_destroy',['../group__surface_ga0c0097625ec8023049b2acfa92e25520.html#ga0c0097625ec8023049b2acfa92e25520',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fheight_410',['vkvg_surface_get_height',['../group__surface_ga09df17e6e7e62e6780c3f9330a6e60e6.html#ga09df17e6e7e62e6780c3f9330a6e60e6',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5freference_5fcount_411',['vkvg_surface_get_reference_count',['../group__surface_gaac3f496bfbf733894fb94eb48f1d1137.html#gaac3f496bfbf733894fb94eb48f1d1137',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fvk_5fformat_412',['vkvg_surface_get_vk_format',['../group__surface_ga3d8cf4052973109318bbb693b6d2800c.html#ga3d8cf4052973109318bbb693b6d2800c',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fvk_5fimage_413',['vkvg_surface_get_vk_image',['../group__surface_ga424dbcc7fcefea9cca5726347b2ee235.html#ga424dbcc7fcefea9cca5726347b2ee235',1,'vkvg.h']]], + ['vkvg_5fsurface_5fget_5fwidth_414',['vkvg_surface_get_width',['../group__surface_gaa4c4188ebc55afd246dcfa2b804a3d1d.html#gaa4c4188ebc55afd246dcfa2b804a3d1d',1,'vkvg.h']]], + ['vkvg_5fsurface_5freference_415',['vkvg_surface_reference',['../group__surface_ga21cf3c9f6ce1d7e509ab86d5107eeffc.html#ga21cf3c9f6ce1d7e509ab86d5107eeffc',1,'vkvg.h']]], + ['vkvg_5fsurface_5fstatus_416',['vkvg_surface_status',['../group__surface_gac105fa5f43e1785f2219252b9099365a.html#gac105fa5f43e1785f2219252b9099365a',1,'vkvg.h']]], + ['vkvg_5fsurface_5fwrite_5fto_5fmemory_417',['vkvg_surface_write_to_memory',['../group__surface_gac03b406f38c79c6812fdcff69d50fb7e.html#gac03b406f38c79c6812fdcff69d50fb7e',1,'vkvg.h']]], + ['vkvg_5fsurface_5fwrite_5fto_5fpng_418',['vkvg_surface_write_to_png',['../group__surface_ga7051fd62842ee526afc261b65f939c2d.html#ga7051fd62842ee526afc261b65f939c2d',1,'vkvg.h']]], + ['vkvg_5fsvg_5fdestroy_419',['vkvg_svg_destroy',['../vkvg-svg_8h_ae3f8d98287e9d883b21fac0e2ed96bad.html#ae3f8d98287e9d883b21fac0e2ed96bad',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5fget_5fdimensions_420',['vkvg_svg_get_dimensions',['../vkvg-svg_8h_a7696c29d5af1fadc95efb440cf041bda.html#a7696c29d5af1fadc95efb440cf041bda',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5fload_421',['vkvg_svg_load',['../vkvg-svg_8h_a8599df3d49203becccdaf3877a5e0b09.html#a8599df3d49203becccdaf3877a5e0b09',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5fload_5ffragment_422',['vkvg_svg_load_fragment',['../vkvg-svg_8h_a6a17b950c3750f494c655bc1b6757c3b.html#a6a17b950c3750f494c655bc1b6757c3b',1,'vkvg-svg.h']]], + ['vkvg_5fsvg_5frender_423',['vkvg_svg_render',['../vkvg-svg_8h_ad2e5314854a060a54924864c2c1cb489.html#ad2e5314854a060a54924864c2c1cb489',1,'vkvg-svg.h']]], + ['vkvg_5ftext_5fextents_424',['vkvg_text_extents',['../group__context_ga79802b5c678d1ab84a4f5ef560e77e29.html#ga79802b5c678d1ab84a4f5ef560e77e29',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fcreate_425',['vkvg_text_run_create',['../group__context_gaff5bbccf8cc53721ca2666c56272256e.html#gaff5bbccf8cc53721ca2666c56272256e',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fcreate_5fwith_5flength_426',['vkvg_text_run_create_with_length',['../group__context_gadfcb5fd125984c0399c5f6bc9619e56a.html#gadfcb5fd125984c0399c5f6bc9619e56a',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fdestroy_427',['vkvg_text_run_destroy',['../group__context_gaf177e82330cb95a71c9517f8aacd6365.html#gaf177e82330cb95a71c9517f8aacd6365',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fget_5fextents_428',['vkvg_text_run_get_extents',['../group__context_gafa8b8c1636cb6c479a851fc04f7741ad.html#gafa8b8c1636cb6c479a851fc04f7741ad',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fget_5fglyph_5fcount_429',['vkvg_text_run_get_glyph_count',['../group__context_ga01525d0d537d2e03d541ad57325f14d2.html#ga01525d0d537d2e03d541ad57325f14d2',1,'vkvg.h']]], + ['vkvg_5ftext_5frun_5fget_5fglyph_5fposition_430',['vkvg_text_run_get_glyph_position',['../group__context_gad8303a290f342f71dd233bef3f02441b.html#gad8303a290f342f71dd233bef3f02441b',1,'vkvg.h']]], + ['vkvg_5ftransform_431',['vkvg_transform',['../group__context_ga998ca7435dd87db6da6d30a5ee69f827.html#ga998ca7435dd87db6da6d30a5ee69f827',1,'vkvg.h']]], + ['vkvg_5ftranslate_432',['vkvg_translate',['../group__context_gacf62b2602170792417398c51511dee67.html#gacf62b2602170792417398c51511dee67',1,'vkvg.h']]] +]; diff --git a/search/groups_0.html b/search/groups_0.html new file mode 100644 index 0000000..c600b49 --- /dev/null +++ b/search/groups_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_0.js b/search/groups_0.js new file mode 100644 index 0000000..bd003e5 --- /dev/null +++ b/search/groups_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['context_540',['Context',['../group__context.html',1,'']]] +]; diff --git a/search/groups_1.html b/search/groups_1.html new file mode 100644 index 0000000..2eb3550 --- /dev/null +++ b/search/groups_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_1.js b/search/groups_1.js new file mode 100644 index 0000000..0017869 --- /dev/null +++ b/search/groups_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['device_541',['Device',['../group__device.html',1,'']]] +]; diff --git a/search/groups_2.html b/search/groups_2.html new file mode 100644 index 0000000..12f4af7 --- /dev/null +++ b/search/groups_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_2.js b/search/groups_2.js new file mode 100644 index 0000000..e192398 --- /dev/null +++ b/search/groups_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['matrices_542',['Matrices',['../group__matrix.html',1,'']]] +]; diff --git a/search/groups_3.html b/search/groups_3.html new file mode 100644 index 0000000..5e235b5 --- /dev/null +++ b/search/groups_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_3.js b/search/groups_3.js new file mode 100644 index 0000000..31a8be3 --- /dev/null +++ b/search/groups_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['path_20creation_20and_20manipulation_20reference_2e_543',['Path creation and manipulation reference.',['../group__path.html',1,'']]], + ['pattern_544',['Pattern',['../group__pattern.html',1,'']]] +]; diff --git a/search/groups_4.html b/search/groups_4.html new file mode 100644 index 0000000..99405e1 --- /dev/null +++ b/search/groups_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_4.js b/search/groups_4.js new file mode 100644 index 0000000..70db41d --- /dev/null +++ b/search/groups_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['surface_545',['Surface',['../group__surface.html',1,'']]] +]; diff --git a/search/mag_sel.svg b/search/mag_sel.svg new file mode 100644 index 0000000..03626f6 --- /dev/null +++ b/search/mag_sel.svg @@ -0,0 +1,74 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/search/nomatches.html b/search/nomatches.html new file mode 100644 index 0000000..2b9360b --- /dev/null +++ b/search/nomatches.html @@ -0,0 +1,13 @@ + + + + + + + + +
+
No Matches
+
+ + diff --git a/search/pages_0.html b/search/pages_0.html new file mode 100644 index 0000000..8517b48 --- /dev/null +++ b/search/pages_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/pages_0.js b/search/pages_0.js new file mode 100644 index 0000000..9c2d67c --- /dev/null +++ b/search/pages_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['vkvg_3a_20vulkan_20vector_20graphics_546',['VKVG: vulkan vector graphics',['../index.html',1,'']]] +]; diff --git a/search/search.css b/search/search.css new file mode 100644 index 0000000..a168661 --- /dev/null +++ b/search/search.css @@ -0,0 +1,273 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + float: none; + margin-top: 0px; + right: 0px; + width: 170px; + height: 24px; + z-index: 102; + display: inline; + position: absolute; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:111px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; + -webkit-border-radius: 0px; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #A6A8B6; + background-color: #FAFAFB; + z-index: 10001; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #595B6D; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #F1F1F4; + z-index:10000; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #606276; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #606276; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F3F3F5; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/search/search.js b/search/search.js new file mode 100644 index 0000000..fb226f7 --- /dev/null +++ b/search/search.js @@ -0,0 +1,816 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + this.extension; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches' + this.extension; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline-block'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_0.js b/search/typedefs_0.js new file mode 100644 index 0000000..141e920 --- /dev/null +++ b/search/typedefs_0.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['vkvgcontext_456',['VkvgContext',['../group__context_ga1027bada0ac47c81c3b0746158c3c5bc.html#ga1027bada0ac47c81c3b0746158c3c5bc',1,'vkvg.h']]], + ['vkvgdevice_457',['VkvgDevice',['../group__device_ga4410787cc120fdafe8cdc480a2b02e71.html#ga4410787cc120fdafe8cdc480a2b02e71',1,'vkvg.h']]], + ['vkvgpattern_458',['VkvgPattern',['../group__pattern_ga60d6d8608f15e96a087c8dafd69f28dc.html#ga60d6d8608f15e96a087c8dafd69f28dc',1,'vkvg.h']]], + ['vkvgsurface_459',['VkvgSurface',['../group__surface_gaf2e9eb0e48dd4533d4a5622c12e4d0e7.html#gaf2e9eb0e48dd4533d4a5622c12e4d0e7',1,'vkvg.h']]], + ['vkvgsvg_460',['VkvgSvg',['../vkvg-svg_8h_a0003abdfb8e71c30d01f61d21ccebb13.html#a0003abdfb8e71c30d01f61d21ccebb13',1,'vkvg-svg.h']]], + ['vkvgtext_461',['VkvgText',['../vkvg_8h_a4371df2f82cabd4963d913a094a06b35.html#a4371df2f82cabd4963d913a094a06b35',1,'vkvg.h']]] +]; diff --git a/search/variables_0.html b/search/variables_0.html new file mode 100644 index 0000000..1e477c0 --- /dev/null +++ b/search/variables_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_0.js b/search/variables_0.js new file mode 100644 index 0000000..f42e1cf --- /dev/null +++ b/search/variables_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['a_433',['a',['../structvkvg__color__t_a4aec1a5be9d9a4a394a2e49e9744286e.html#a4aec1a5be9d9a4a394a2e49e9744286e',1,'vkvg_color_t']]], + ['ascent_434',['ascent',['../structvkvg__font__extents__t_a31ebc425eeae55d11acd591bb46dd468.html#a31ebc425eeae55d11acd591bb46dd468',1,'vkvg_font_extents_t']]] +]; diff --git a/search/variables_1.html b/search/variables_1.html new file mode 100644 index 0000000..ea73d9a --- /dev/null +++ b/search/variables_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_1.js b/search/variables_1.js new file mode 100644 index 0000000..2e90f8c --- /dev/null +++ b/search/variables_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['b_435',['b',['../structvkvg__color__t_a83fc1af92e29717b4513d121b0c72c7d.html#a83fc1af92e29717b4513d121b0c72c7d',1,'vkvg_color_t']]] +]; diff --git a/search/variables_2.html b/search/variables_2.html new file mode 100644 index 0000000..0580462 --- /dev/null +++ b/search/variables_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_2.js b/search/variables_2.js new file mode 100644 index 0000000..4115c69 --- /dev/null +++ b/search/variables_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['codepoint_436',['codepoint',['../structvkvg__glyph__info__t_ac0a96cfe8a03a6dd0da3f7ca2313e5d8.html#ac0a96cfe8a03a6dd0da3f7ca2313e5d8',1,'vkvg_glyph_info_t']]] +]; diff --git a/search/variables_3.html b/search/variables_3.html new file mode 100644 index 0000000..0d69e76 --- /dev/null +++ b/search/variables_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_3.js b/search/variables_3.js new file mode 100644 index 0000000..e52f75b --- /dev/null +++ b/search/variables_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['descent_437',['descent',['../structvkvg__font__extents__t_a5984964357202018e67f64fd879af95b.html#a5984964357202018e67f64fd879af95b',1,'vkvg_font_extents_t']]] +]; diff --git a/search/variables_4.html b/search/variables_4.html new file mode 100644 index 0000000..a4b6506 --- /dev/null +++ b/search/variables_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_4.js b/search/variables_4.js new file mode 100644 index 0000000..2ddea9b --- /dev/null +++ b/search/variables_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['g_438',['g',['../structvkvg__color__t_a8cf17d727651616de6f2b79ef32170cd.html#a8cf17d727651616de6f2b79ef32170cd',1,'vkvg_color_t']]] +]; diff --git a/search/variables_5.html b/search/variables_5.html new file mode 100644 index 0000000..7e345d1 --- /dev/null +++ b/search/variables_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_5.js b/search/variables_5.js new file mode 100644 index 0000000..6f6d6bd --- /dev/null +++ b/search/variables_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['height_439',['height',['../structvkvg__font__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html#a48083b65ac9a863566dc3e3fff09a5b4',1,'vkvg_font_extents_t::height()'],['../structvkvg__text__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html#a48083b65ac9a863566dc3e3fff09a5b4',1,'vkvg_text_extents_t::height()']]] +]; diff --git a/search/variables_6.html b/search/variables_6.html new file mode 100644 index 0000000..7d48e75 --- /dev/null +++ b/search/variables_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_6.js b/search/variables_6.js new file mode 100644 index 0000000..5ac6f7d --- /dev/null +++ b/search/variables_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['max_5fx_5fadvance_440',['max_x_advance',['../structvkvg__font__extents__t_afef09feed3e6d406a79a4654bbfdf32e.html#afef09feed3e6d406a79a4654bbfdf32e',1,'vkvg_font_extents_t']]], + ['max_5fy_5fadvance_441',['max_y_advance',['../structvkvg__font__extents__t_a5a74d8c1db44409b96daa190fce554b1.html#a5a74d8c1db44409b96daa190fce554b1',1,'vkvg_font_extents_t']]] +]; diff --git a/search/variables_7.html b/search/variables_7.html new file mode 100644 index 0000000..5c26340 --- /dev/null +++ b/search/variables_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_7.js b/search/variables_7.js new file mode 100644 index 0000000..5bedd92 --- /dev/null +++ b/search/variables_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['r_442',['r',['../structvkvg__color__t_a4788d82c901b9367dd5c0daff8a7616b.html#a4788d82c901b9367dd5c0daff8a7616b',1,'vkvg_color_t']]] +]; diff --git a/search/variables_8.html b/search/variables_8.html new file mode 100644 index 0000000..dc9ec54 --- /dev/null +++ b/search/variables_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_8.js b/search/variables_8.js new file mode 100644 index 0000000..1e64bb3 --- /dev/null +++ b/search/variables_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['width_443',['width',['../structvkvg__text__extents__t_ae426f00e82704fa09578f5446e22d915.html#ae426f00e82704fa09578f5446e22d915',1,'vkvg_text_extents_t']]] +]; diff --git a/search/variables_9.html b/search/variables_9.html new file mode 100644 index 0000000..7b01475 --- /dev/null +++ b/search/variables_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_9.js b/search/variables_9.js new file mode 100644 index 0000000..01d09ce --- /dev/null +++ b/search/variables_9.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['x0_444',['x0',['../structvkvg__matrix__t_a3c9556645d92e863376a4063a3ad7001.html#a3c9556645d92e863376a4063a3ad7001',1,'vkvg_matrix_t']]], + ['x_5fadvance_445',['x_advance',['../structvkvg__text__extents__t_ae83c02c42c97888eca5532a98ed4e2e4.html#ae83c02c42c97888eca5532a98ed4e2e4',1,'vkvg_text_extents_t::x_advance()'],['../structvkvg__glyph__info__t_af4903d34c19de17bf3045668b429da05.html#af4903d34c19de17bf3045668b429da05',1,'vkvg_glyph_info_t::x_advance()']]], + ['x_5fbearing_446',['x_bearing',['../structvkvg__text__extents__t_a36152a2d5302d6860e555e77a4a8b456.html#a36152a2d5302d6860e555e77a4a8b456',1,'vkvg_text_extents_t']]], + ['x_5foffset_447',['x_offset',['../structvkvg__glyph__info__t_a302cc6391db771808cf9137cddb15a8a.html#a302cc6391db771808cf9137cddb15a8a',1,'vkvg_glyph_info_t']]], + ['xx_448',['xx',['../structvkvg__matrix__t_a9fb9d00fbbf390e0263bcc204b03c7c8.html#a9fb9d00fbbf390e0263bcc204b03c7c8',1,'vkvg_matrix_t']]], + ['xy_449',['xy',['../structvkvg__matrix__t_a83a7590defc35766f789fbbf7fc41590.html#a83a7590defc35766f789fbbf7fc41590',1,'vkvg_matrix_t']]] +]; diff --git a/search/variables_a.html b/search/variables_a.html new file mode 100644 index 0000000..52a724d --- /dev/null +++ b/search/variables_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_a.js b/search/variables_a.js new file mode 100644 index 0000000..a7e7ee7 --- /dev/null +++ b/search/variables_a.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['y0_450',['y0',['../structvkvg__matrix__t_adf19b8ba42d497d3093c3a51b1a32cca.html#adf19b8ba42d497d3093c3a51b1a32cca',1,'vkvg_matrix_t']]], + ['y_5fadvance_451',['y_advance',['../structvkvg__text__extents__t_a35b39603f2d8ae8c01b5cb9dfbfd20d3.html#a35b39603f2d8ae8c01b5cb9dfbfd20d3',1,'vkvg_text_extents_t::y_advance()'],['../structvkvg__glyph__info__t_ac8b0caa49832b5e674589cba5d72b905.html#ac8b0caa49832b5e674589cba5d72b905',1,'vkvg_glyph_info_t::y_advance()']]], + ['y_5fbearing_452',['y_bearing',['../structvkvg__text__extents__t_adb121426957cb2c536d442cb6fd1c90f.html#adb121426957cb2c536d442cb6fd1c90f',1,'vkvg_text_extents_t']]], + ['y_5foffset_453',['y_offset',['../structvkvg__glyph__info__t_a9ae348ed78a50e882b8167d83412d2b5.html#a9ae348ed78a50e882b8167d83412d2b5',1,'vkvg_glyph_info_t']]], + ['yx_454',['yx',['../structvkvg__matrix__t_a8e1608facba0c31efe99d65811fab570.html#a8e1608facba0c31efe99d65811fab570',1,'vkvg_matrix_t']]], + ['yy_455',['yy',['../structvkvg__matrix__t_a342cbf7f29a65a0d1a2949ef4675008e.html#a342cbf7f29a65a0d1a2949ef4675008e',1,'vkvg_matrix_t']]] +]; diff --git a/splitbar.png b/splitbar.png new file mode 100644 index 0000000..10d4c84 Binary files /dev/null and b/splitbar.png differ diff --git a/structvkvg__color__t.html b/structvkvg__color__t.html new file mode 100644 index 0000000..2b8e768 --- /dev/null +++ b/structvkvg__color__t.html @@ -0,0 +1,90 @@ + + + + + + + + + VKVG: vkvg_color_t Struct Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ +
+
+ +
+
vkvg_color_t Struct Reference
+
+
+ +

#include <vkvg.h>

+ + + + + + + + + + +

+Data Fields

float r
 
float g
 
float b
 
float a
 
+

Detailed Description

+
+

Definition at line 225 of file vkvg.h.

+

The documentation for this struct was generated from the following file:
    +
  • /mnt/devel/vkvg-master/include/vkvg.h
  • +
+
+ + + + + diff --git a/structvkvg__color__t_a4788d82c901b9367dd5c0daff8a7616b.html b/structvkvg__color__t_a4788d82c901b9367dd5c0daff8a7616b.html new file mode 100644 index 0000000..8a16865 --- /dev/null +++ b/structvkvg__color__t_a4788d82c901b9367dd5c0daff8a7616b.html @@ -0,0 +1,100 @@ + + + + + + + + + VKVG: vkvg_color_t::r + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ r

+ +
+
+ + + + +
float r
+
+ +

Definition at line 226 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__color__t_a4aec1a5be9d9a4a394a2e49e9744286e.html b/structvkvg__color__t_a4aec1a5be9d9a4a394a2e49e9744286e.html new file mode 100644 index 0000000..2681e38 --- /dev/null +++ b/structvkvg__color__t_a4aec1a5be9d9a4a394a2e49e9744286e.html @@ -0,0 +1,100 @@ + + + + + + + + + VKVG: vkvg_color_t::a + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ a

+ +
+
+ + + + +
float a
+
+ +

Definition at line 229 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__color__t_a83fc1af92e29717b4513d121b0c72c7d.html b/structvkvg__color__t_a83fc1af92e29717b4513d121b0c72c7d.html new file mode 100644 index 0000000..053d14d --- /dev/null +++ b/structvkvg__color__t_a83fc1af92e29717b4513d121b0c72c7d.html @@ -0,0 +1,100 @@ + + + + + + + + + VKVG: vkvg_color_t::b + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ b

+ +
+
+ + + + +
float b
+
+ +

Definition at line 228 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__color__t_a8cf17d727651616de6f2b79ef32170cd.html b/structvkvg__color__t_a8cf17d727651616de6f2b79ef32170cd.html new file mode 100644 index 0000000..029c9e8 --- /dev/null +++ b/structvkvg__color__t_a8cf17d727651616de6f2b79ef32170cd.html @@ -0,0 +1,100 @@ + + + + + + + + + VKVG: vkvg_color_t::g + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ g

+ +
+
+ + + + +
float g
+
+ +

Definition at line 227 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__font__extents__t.html b/structvkvg__font__extents__t.html new file mode 100644 index 0000000..3dbafaf --- /dev/null +++ b/structvkvg__font__extents__t.html @@ -0,0 +1,97 @@ + + + + + + + + + VKVG: vkvg_font_extents_t Struct Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ +
+
+ +
+
vkvg_font_extents_t Struct Reference
+
+
+ +

font metrics + More...

+ +

#include <vkvg.h>

+ + + + + + + + + + + + +

+Data Fields

float ascent
 
float descent
 
float height
 
float max_x_advance
 
float max_y_advance
 
+

Detailed Description

+

font metrics

+

structure defining global font metrics for a particular font. It can be retrieve by calling vkvg_font_extents on a valid context.

+ +

Definition at line 238 of file vkvg.h.

+

The documentation for this struct was generated from the following file:
    +
  • /mnt/devel/vkvg-master/include/vkvg.h
  • +
+
+ + + + + diff --git a/structvkvg__font__extents__t_a31ebc425eeae55d11acd591bb46dd468.html b/structvkvg__font__extents__t_a31ebc425eeae55d11acd591bb46dd468.html new file mode 100644 index 0000000..a61a899 --- /dev/null +++ b/structvkvg__font__extents__t_a31ebc425eeae55d11acd591bb46dd468.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_font_extents_t::ascent + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ ascent

+ +
+
+ + + + +
float ascent
+
+

the distance that the font extends above the baseline.

+ +

Definition at line 239 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__font__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html b/structvkvg__font__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html new file mode 100644 index 0000000..6e4c1a3 --- /dev/null +++ b/structvkvg__font__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_font_extents_t::height + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ height

+ +
+
+ + + + +
float height
+
+

the recommended vertical distance between baselines.

+ +

Definition at line 241 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__font__extents__t_a5984964357202018e67f64fd879af95b.html b/structvkvg__font__extents__t_a5984964357202018e67f64fd879af95b.html new file mode 100644 index 0000000..32e1879 --- /dev/null +++ b/structvkvg__font__extents__t_a5984964357202018e67f64fd879af95b.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_font_extents_t::descent + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ descent

+ +
+
+ + + + +
float descent
+
+

the distance that the font extends below the baseline.

+ +

Definition at line 240 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__font__extents__t_a5a74d8c1db44409b96daa190fce554b1.html b/structvkvg__font__extents__t_a5a74d8c1db44409b96daa190fce554b1.html new file mode 100644 index 0000000..73fbe7f --- /dev/null +++ b/structvkvg__font__extents__t_a5a74d8c1db44409b96daa190fce554b1.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_font_extents_t::max_y_advance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ max_y_advance

+ +
+
+ + + + +
float max_y_advance
+
+

the maximum distance in the Y direction that the origin is advanced for any glyph in the font. This will be zero for normal fonts used for horizontal writing.

+ +

Definition at line 243 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__font__extents__t_afef09feed3e6d406a79a4654bbfdf32e.html b/structvkvg__font__extents__t_afef09feed3e6d406a79a4654bbfdf32e.html new file mode 100644 index 0000000..3e76afb --- /dev/null +++ b/structvkvg__font__extents__t_afef09feed3e6d406a79a4654bbfdf32e.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_font_extents_t::max_x_advance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ max_x_advance

+ +
+
+ + + + +
float max_x_advance
+
+

the maximum distance in the X direction that the origin is advanced for any glyph in the font.

+ +

Definition at line 242 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__glyph__info__t.html b/structvkvg__glyph__info__t.html new file mode 100644 index 0000000..453c95c --- /dev/null +++ b/structvkvg__glyph__info__t.html @@ -0,0 +1,97 @@ + + + + + + + + + VKVG: vkvg_glyph_info_t Struct Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ +
+
+ +
+
vkvg_glyph_info_t Struct Reference
+
+
+ +

glyphs position in a VkvgText + More...

+ +

#include <vkvg.h>

+ + + + + + + + + + + + +

+Data Fields

int32_t x_advance
 
int32_t y_advance
 
int32_t x_offset
 
int32_t y_offset
 
uint32_t codepoint
 
+

Detailed Description

+

glyphs position in a VkvgText

+

structure defining glyph position as computed for rendering a text run. the codepoint field is for internal use only.

+ +

Definition at line 266 of file vkvg.h.

+

The documentation for this struct was generated from the following file:
    +
  • /mnt/devel/vkvg-master/include/vkvg.h
  • +
+
+ + + + + diff --git a/structvkvg__glyph__info__t_a302cc6391db771808cf9137cddb15a8a.html b/structvkvg__glyph__info__t_a302cc6391db771808cf9137cddb15a8a.html new file mode 100644 index 0000000..94b46f7 --- /dev/null +++ b/structvkvg__glyph__info__t_a302cc6391db771808cf9137cddb15a8a.html @@ -0,0 +1,101 @@ + + + + + + + + + VKVG: vkvg_glyph_info_t::x_offset + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ x_offset

+ +
+
+ + + + +
int32_t x_offset
+
+ +

Definition at line 269 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__glyph__info__t_a9ae348ed78a50e882b8167d83412d2b5.html b/structvkvg__glyph__info__t_a9ae348ed78a50e882b8167d83412d2b5.html new file mode 100644 index 0000000..d1bb5ba --- /dev/null +++ b/structvkvg__glyph__info__t_a9ae348ed78a50e882b8167d83412d2b5.html @@ -0,0 +1,101 @@ + + + + + + + + + VKVG: vkvg_glyph_info_t::y_offset + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ y_offset

+ +
+
+ + + + +
int32_t y_offset
+
+ +

Definition at line 270 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__glyph__info__t_ac0a96cfe8a03a6dd0da3f7ca2313e5d8.html b/structvkvg__glyph__info__t_ac0a96cfe8a03a6dd0da3f7ca2313e5d8.html new file mode 100644 index 0000000..689e8d7 --- /dev/null +++ b/structvkvg__glyph__info__t_ac0a96cfe8a03a6dd0da3f7ca2313e5d8.html @@ -0,0 +1,101 @@ + + + + + + + + + VKVG: vkvg_glyph_info_t::codepoint + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ codepoint

+ +
+
+ + + + +
uint32_t codepoint
+
+ +

Definition at line 272 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__glyph__info__t_ac8b0caa49832b5e674589cba5d72b905.html b/structvkvg__glyph__info__t_ac8b0caa49832b5e674589cba5d72b905.html new file mode 100644 index 0000000..b7a5280 --- /dev/null +++ b/structvkvg__glyph__info__t_ac8b0caa49832b5e674589cba5d72b905.html @@ -0,0 +1,101 @@ + + + + + + + + + VKVG: vkvg_glyph_info_t::y_advance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ y_advance

+ +
+
+ + + + +
int32_t y_advance
+
+ +

Definition at line 268 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__glyph__info__t_af4903d34c19de17bf3045668b429da05.html b/structvkvg__glyph__info__t_af4903d34c19de17bf3045668b429da05.html new file mode 100644 index 0000000..61f237e --- /dev/null +++ b/structvkvg__glyph__info__t_af4903d34c19de17bf3045668b429da05.html @@ -0,0 +1,101 @@ + + + + + + + + + VKVG: vkvg_glyph_info_t::x_advance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ x_advance

+ +
+
+ + + + +
int32_t x_advance
+
+ +

Definition at line 267 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__matrix__t.html b/structvkvg__matrix__t.html new file mode 100644 index 0000000..674f7c1 --- /dev/null +++ b/structvkvg__matrix__t.html @@ -0,0 +1,107 @@ + + + + + + + + + VKVG: vkvg_matrix_t Struct Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ +
+
+ +
+
vkvg_matrix_t Struct Reference
+
+
+ +

vkvg matrix structure + More...

+ +

#include <vkvg.h>

+ + + + + + + + + + + + + + +

+Data Fields

float xx
 
float yx
 
float xy
 
float yy
 
float x0
 
float y0
 
+

Detailed Description

+

vkvg matrix structure

+

A vkvg_matrix_t holds an affine transformation, such as a scale, rotation, shear, or a combination of those. The transformation of a point (x, y) is given by:

x_new = xx * x + xy * y + x0;
+
y_new = yx * x + yy * y + y0;
+
float yy
Definition: vkvg.h:376
+
float x0
Definition: vkvg.h:377
+
float xy
Definition: vkvg.h:376
+
float yx
Definition: vkvg.h:375
+
float xx
Definition: vkvg.h:375
+
float y0
Definition: vkvg.h:377
+

@xx: xx component of the affine transformation @yx: yx component of the affine transformation @xy: xy component of the affine transformation @yy: yy component of the affine transformation @x0: X translation component of the affine transformation @y0: Y translation component of the affine transformation

+ +

Definition at line 374 of file vkvg.h.

+

The documentation for this struct was generated from the following file:
    +
  • /mnt/devel/vkvg-master/include/vkvg.h
  • +
+
+ + + + + diff --git a/structvkvg__matrix__t_a342cbf7f29a65a0d1a2949ef4675008e.html b/structvkvg__matrix__t_a342cbf7f29a65a0d1a2949ef4675008e.html new file mode 100644 index 0000000..6a46340 --- /dev/null +++ b/structvkvg__matrix__t_a342cbf7f29a65a0d1a2949ef4675008e.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_matrix_t::yy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ yy

+ +
+
+ + + + +
float yy
+
+ +

Definition at line 376 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__matrix__t_a3c9556645d92e863376a4063a3ad7001.html b/structvkvg__matrix__t_a3c9556645d92e863376a4063a3ad7001.html new file mode 100644 index 0000000..8fb167e --- /dev/null +++ b/structvkvg__matrix__t_a3c9556645d92e863376a4063a3ad7001.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_matrix_t::x0 + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ x0

+ +
+
+ + + + +
float x0
+
+ +

Definition at line 377 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__matrix__t_a83a7590defc35766f789fbbf7fc41590.html b/structvkvg__matrix__t_a83a7590defc35766f789fbbf7fc41590.html new file mode 100644 index 0000000..6f3c375 --- /dev/null +++ b/structvkvg__matrix__t_a83a7590defc35766f789fbbf7fc41590.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_matrix_t::xy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ xy

+ +
+
+ + + + +
float xy
+
+ +

Definition at line 376 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__matrix__t_a8e1608facba0c31efe99d65811fab570.html b/structvkvg__matrix__t_a8e1608facba0c31efe99d65811fab570.html new file mode 100644 index 0000000..e7ed9be --- /dev/null +++ b/structvkvg__matrix__t_a8e1608facba0c31efe99d65811fab570.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_matrix_t::yx + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ yx

+ +
+
+ + + + +
float yx
+
+ +

Definition at line 375 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__matrix__t_a9fb9d00fbbf390e0263bcc204b03c7c8.html b/structvkvg__matrix__t_a9fb9d00fbbf390e0263bcc204b03c7c8.html new file mode 100644 index 0000000..c09d5fd --- /dev/null +++ b/structvkvg__matrix__t_a9fb9d00fbbf390e0263bcc204b03c7c8.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_matrix_t::xx + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ xx

+ +
+
+ + + + +
float xx
+
+ +

Definition at line 375 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__matrix__t_adf19b8ba42d497d3093c3a51b1a32cca.html b/structvkvg__matrix__t_adf19b8ba42d497d3093c3a51b1a32cca.html new file mode 100644 index 0000000..2fec2cc --- /dev/null +++ b/structvkvg__matrix__t_adf19b8ba42d497d3093c3a51b1a32cca.html @@ -0,0 +1,102 @@ + + + + + + + + + VKVG: vkvg_matrix_t::y0 + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ y0

+ +
+
+ + + + +
float y0
+
+ +

Definition at line 377 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__text__extents__t.html b/structvkvg__text__extents__t.html new file mode 100644 index 0000000..d5cfb07 --- /dev/null +++ b/structvkvg__text__extents__t.html @@ -0,0 +1,99 @@ + + + + + + + + + VKVG: vkvg_text_extents_t Struct Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ +
+
+ +
+
vkvg_text_extents_t Struct Reference
+
+
+ +

text metrics + More...

+ +

#include <vkvg.h>

+ + + + + + + + + + + + + + +

+Data Fields

float x_bearing
 
float y_bearing
 
float width
 
float height
 
float x_advance
 
float y_advance
 
+

Detailed Description

+

text metrics

+

structure defining metrics for a single or a string of glyphs. To measure text, call vkvg_text_extents on a valid context.

+ +

Definition at line 251 of file vkvg.h.

+

The documentation for this struct was generated from the following file:
    +
  • /mnt/devel/vkvg-master/include/vkvg.h
  • +
+
+ + + + + diff --git a/structvkvg__text__extents__t_a35b39603f2d8ae8c01b5cb9dfbfd20d3.html b/structvkvg__text__extents__t_a35b39603f2d8ae8c01b5cb9dfbfd20d3.html new file mode 100644 index 0000000..cf45b45 --- /dev/null +++ b/structvkvg__text__extents__t_a35b39603f2d8ae8c01b5cb9dfbfd20d3.html @@ -0,0 +1,103 @@ + + + + + + + + + VKVG: vkvg_text_extents_t::y_advance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ y_advance

+ +
+
+ + + + +
float y_advance
+
+

distance to advance in the Y direction after drawing these glyphs. Will typically be zero except for vertical text layout as found in East-Asian languages.

+ +

Definition at line 257 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__text__extents__t_a36152a2d5302d6860e555e77a4a8b456.html b/structvkvg__text__extents__t_a36152a2d5302d6860e555e77a4a8b456.html new file mode 100644 index 0000000..7ee01c5 --- /dev/null +++ b/structvkvg__text__extents__t_a36152a2d5302d6860e555e77a4a8b456.html @@ -0,0 +1,103 @@ + + + + + + + + + VKVG: vkvg_text_extents_t::x_bearing + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ x_bearing

+ +
+
+ + + + +
float x_bearing
+
+

the horizontal distance from the origin to the leftmost part of the glyphs as drawn. Positive if the glyphs lie entirely to the right of the origin.

+ +

Definition at line 252 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__text__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html b/structvkvg__text__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html new file mode 100644 index 0000000..23ce57a --- /dev/null +++ b/structvkvg__text__extents__t_a48083b65ac9a863566dc3e3fff09a5b4.html @@ -0,0 +1,103 @@ + + + + + + + + + VKVG: vkvg_text_extents_t::height + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ height

+ +
+
+ + + + +
float height
+
+

height of the glyphs as drawn

+ +

Definition at line 255 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__text__extents__t_adb121426957cb2c536d442cb6fd1c90f.html b/structvkvg__text__extents__t_adb121426957cb2c536d442cb6fd1c90f.html new file mode 100644 index 0000000..bb77802 --- /dev/null +++ b/structvkvg__text__extents__t_adb121426957cb2c536d442cb6fd1c90f.html @@ -0,0 +1,103 @@ + + + + + + + + + VKVG: vkvg_text_extents_t::y_bearing + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ y_bearing

+ +
+
+ + + + +
float y_bearing
+
+

the vertical distance from the origin to the topmost part of the glyphs as drawn. Positive only if the glyphs lie completely below the origin; will usually be negative.

+ +

Definition at line 253 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__text__extents__t_ae426f00e82704fa09578f5446e22d915.html b/structvkvg__text__extents__t_ae426f00e82704fa09578f5446e22d915.html new file mode 100644 index 0000000..b1835ed --- /dev/null +++ b/structvkvg__text__extents__t_ae426f00e82704fa09578f5446e22d915.html @@ -0,0 +1,103 @@ + + + + + + + + + VKVG: vkvg_text_extents_t::width + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ width

+ +
+
+ + + + +
float width
+
+

width of the glyphs as drawn

+ +

Definition at line 254 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/structvkvg__text__extents__t_ae83c02c42c97888eca5532a98ed4e2e4.html b/structvkvg__text__extents__t_ae83c02c42c97888eca5532a98ed4e2e4.html new file mode 100644 index 0000000..abf0c87 --- /dev/null +++ b/structvkvg__text__extents__t_ae83c02c42c97888eca5532a98ed4e2e4.html @@ -0,0 +1,103 @@ + + + + + + + + + VKVG: vkvg_text_extents_t::x_advance + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ x_advance

+ +
+
+ + + + +
float x_advance
+
+

distance to advance in the X direction after drawing these glyphs

+ +

Definition at line 256 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/sync_off.png b/sync_off.png new file mode 100644 index 0000000..6f48063 Binary files /dev/null and b/sync_off.png differ diff --git a/sync_on.png b/sync_on.png new file mode 100644 index 0000000..b5e9080 Binary files /dev/null and b/sync_on.png differ diff --git a/tab_a.png b/tab_a.png new file mode 100644 index 0000000..19e7468 Binary files /dev/null and b/tab_a.png differ diff --git a/tab_b.png b/tab_b.png new file mode 100644 index 0000000..36dc571 Binary files /dev/null and b/tab_b.png differ diff --git a/tab_h.png b/tab_h.png new file mode 100644 index 0000000..98455e2 Binary files /dev/null and b/tab_h.png differ diff --git a/tab_s.png b/tab_s.png new file mode 100644 index 0000000..86986bf Binary files /dev/null and b/tab_s.png differ diff --git a/tabs.css b/tabs.css new file mode 100644 index 0000000..7d45d36 --- /dev/null +++ b/tabs.css @@ -0,0 +1 @@ +.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} diff --git a/vkvg-svg_8h.html b/vkvg-svg_8h.html new file mode 100644 index 0000000..82da91c --- /dev/null +++ b/vkvg-svg_8h.html @@ -0,0 +1,107 @@ + + + + + + + + + VKVG: /mnt/devel/vkvg-master/include/vkvg-svg.h File Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ +
+
vkvg-svg.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Typedefs

typedef struct NSVGimage * VkvgSvg
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public VkvgSurface vkvg_surface_create_from_svg (VkvgDevice dev, uint32_t width, uint32_t height, const char *svgFilePath)
 load svg file into Surface More...
 
vkvg_public VkvgSurface vkvg_surface_create_from_svg_fragment (VkvgDevice dev, uint32_t width, uint32_t height, char *svgFragment)
 create surface from svg fragment More...
 
vkvg_public void vkvg_svg_get_dimensions (VkvgSvg svg, uint32_t *width, uint32_t *height)
 get svg dimensions. More...
 
vkvg_public VkvgSvg vkvg_svg_load (const char *svgFilePath)
 Load svg file in memory. More...
 
vkvg_public VkvgSvg vkvg_svg_load_fragment (char *svgFragment)
 Load svg from an svg source fragment. More...
 
vkvg_public void vkvg_svg_render (VkvgSvg svg, VkvgContext ctx, const char *id)
 render svg on a context. More...
 
vkvg_public void vkvg_svg_destroy (VkvgSvg svg)
 release VkvgSvg pointer resources. More...
 
+
+ + + + + diff --git a/vkvg-svg_8h_a0003abdfb8e71c30d01f61d21ccebb13.html b/vkvg-svg_8h_a0003abdfb8e71c30d01f61d21ccebb13.html new file mode 100644 index 0000000..819f605 --- /dev/null +++ b/vkvg-svg_8h_a0003abdfb8e71c30d01f61d21ccebb13.html @@ -0,0 +1,104 @@ + + + + + + + + + VKVG: VkvgSvg + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VkvgSvg

+ +
+
+ + + + +
typedef struct NSVGimage* VkvgSvg
+
+ +

Definition at line 32 of file vkvg-svg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_a1af810e3d7566e821d72e3096db9056a.html b/vkvg-svg_8h_a1af810e3d7566e821d72e3096db9056a.html new file mode 100644 index 0000000..8245c69 --- /dev/null +++ b/vkvg-svg_8h_a1af810e3d7566e821d72e3096db9056a.html @@ -0,0 +1,140 @@ + + + + + + + + + VKVG: vkvg_surface_create_from_svg + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_create_from_svg()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgSurface vkvg_surface_create_from_svg (VkvgDevice dev,
uint32_t width,
uint32_t height,
const char * svgFilePath 
)
+
+ +

load svg file into Surface

+

Create a new vkvg surface by loading a SVG file.

Parameters
+ + + + + +
devThe vkvg Device used for creating the surface.
svgFilePathThe path of the SVG file to load.
widthforce the rendering width, if 0 autosize from svg.
heightforce the rendering height, if 0 autosize from svg.
+
+
+
Returns
The new vkvg surface with the loaded SVG drawing as content, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_a326e6bec4bdf939b764e7d2c225f17d1.html b/vkvg-svg_8h_a326e6bec4bdf939b764e7d2c225f17d1.html new file mode 100644 index 0000000..e72059c --- /dev/null +++ b/vkvg-svg_8h_a326e6bec4bdf939b764e7d2c225f17d1.html @@ -0,0 +1,140 @@ + + + + + + + + + VKVG: vkvg_surface_create_from_svg_fragment + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_surface_create_from_svg_fragment()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public VkvgSurface vkvg_surface_create_from_svg_fragment (VkvgDevice dev,
uint32_t width,
uint32_t height,
char * svgFragment 
)
+
+ +

create surface from svg fragment

+

Create a new vkvg surface by parsing a string with a valid SVG fragment passed as argument.

Parameters
+ + + + + +
devThe vkvg device used for creating the surface.
widthforce the rendering width, if 0 autosize from svg.
heightforce the rendering height, if 0 autosize from svg.
svgFragmentThe SVG fragment to parse.
+
+
+
Returns
The new vkvg surface with the parsed SVG fragment as content, or null if an error occured.
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_a6a17b950c3750f494c655bc1b6757c3b.html b/vkvg-svg_8h_a6a17b950c3750f494c655bc1b6757c3b.html new file mode 100644 index 0000000..f54744e --- /dev/null +++ b/vkvg-svg_8h_a6a17b950c3750f494c655bc1b6757c3b.html @@ -0,0 +1,115 @@ + + + + + + + + + VKVG: vkvg_svg_load_fragment + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_svg_load_fragment()

+ +
+
+ + + + + + + + +
vkvg_public VkvgSvg vkvg_svg_load_fragment (char * svgFragment)
+
+ +

Load svg from an svg source fragment.

+
Parameters
+ + +
svgFragmentA valid svg code fragment.
+
+
+
Returns
a VkvgSvg pointer.
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_a7696c29d5af1fadc95efb440cf041bda.html b/vkvg-svg_8h_a7696c29d5af1fadc95efb440cf041bda.html new file mode 100644 index 0000000..bdd31ae --- /dev/null +++ b/vkvg-svg_8h_a7696c29d5af1fadc95efb440cf041bda.html @@ -0,0 +1,132 @@ + + + + + + + + + VKVG: vkvg_svg_get_dimensions + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_svg_get_dimensions()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_svg_get_dimensions (VkvgSvg svg,
uint32_t * width,
uint32_t * height 
)
+
+ +

get svg dimensions.

+

retrieve dimensions from svg parsing.

Parameters
+ + + + +
svga valid VkvgSvg handle.
widthpointer to a valid integer to receive the svg width.
heightpointer to a valid integer to receive the svg height.
+
+
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_a8599df3d49203becccdaf3877a5e0b09.html b/vkvg-svg_8h_a8599df3d49203becccdaf3877a5e0b09.html new file mode 100644 index 0000000..dd46a5a --- /dev/null +++ b/vkvg-svg_8h_a8599df3d49203becccdaf3877a5e0b09.html @@ -0,0 +1,115 @@ + + + + + + + + + VKVG: vkvg_svg_load + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_svg_load()

+ +
+
+ + + + + + + + +
vkvg_public VkvgSvg vkvg_svg_load (const char * svgFilePath)
+
+ +

Load svg file in memory.

+

Open a svg file and store source in memory, head is parsed to query the svg dimensions.

Parameters
+ + +
svgFilePatha valid file path to the svg to load.
+
+
+
Returns
a VkvgSvg pointer.
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_ad2e5314854a060a54924864c2c1cb489.html b/vkvg-svg_8h_ad2e5314854a060a54924864c2c1cb489.html new file mode 100644 index 0000000..13aa31f --- /dev/null +++ b/vkvg-svg_8h_ad2e5314854a060a54924864c2c1cb489.html @@ -0,0 +1,132 @@ + + + + + + + + + VKVG: vkvg_svg_render + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_svg_render()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_svg_render (VkvgSvg svg,
VkvgContext ctx,
const char * id 
)
+
+ +

render svg on a context.

+
Parameters
+ + + + +
svga valid VkvgSvg pointer.
ctxa valid vkvg context.
idan optional id to limit rendering to specific <g> elemnt.
+
+
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_ae3f8d98287e9d883b21fac0e2ed96bad.html b/vkvg-svg_8h_ae3f8d98287e9d883b21fac0e2ed96bad.html new file mode 100644 index 0000000..361cfc2 --- /dev/null +++ b/vkvg-svg_8h_ae3f8d98287e9d883b21fac0e2ed96bad.html @@ -0,0 +1,114 @@ + + + + + + + + + VKVG: vkvg_svg_destroy + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_svg_destroy()

+ +
+
+ + + + + + + + +
vkvg_public void vkvg_svg_destroy (VkvgSvg svg)
+
+ +

release VkvgSvg pointer resources.

+
Parameters
+ + +
svga valid VkvgSvg pointer to free.
+
+
+ +
+
+
+
+ + + + + diff --git a/vkvg-svg_8h_source.html b/vkvg-svg_8h_source.html new file mode 100644 index 0000000..d263486 --- /dev/null +++ b/vkvg-svg_8h_source.html @@ -0,0 +1,140 @@ + + + + + + + + + VKVG: /mnt/devel/vkvg-master/include/vkvg-svg.h Source File + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+
+
vkvg-svg.h
+
+
+Go to the documentation of this file.
1 /*
+
2  * Copyright (c) 2018-2022 Jean-Philippe Bruyère <jp_bruyere@hotmail.com>
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a copy of
+
5  * this software and associated documentation files (the "Software"), to deal in
+
6  * the Software without restriction, including without limitation the rights to use,
+
7  * copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
+
8  * Software, and to permit persons to whom the Software is furnished to do so, subject
+
9  * to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included in all
+
12  * copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+
19  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+
20  * THE SOFTWARE.
+
21  */
+
22 #ifndef VKVG_SVG_H
+
23 #define VKVG_SVG_H
+
24 
+
25 #ifdef __cplusplus
+
26 extern "C" {
+
27 #endif
+
28 
+
29 #ifdef VKVG_SVG
+
30 typedef struct _vkvg_svg_t* VkvgSvg;
+
31 #else
+
32 typedef struct NSVGimage* VkvgSvg;
+
33 #endif
+ +
45 VkvgSurface vkvg_surface_create_from_svg(VkvgDevice dev, uint32_t width, uint32_t height, const char* svgFilePath);
+ +
57 VkvgSurface vkvg_surface_create_from_svg_fragment(VkvgDevice dev, uint32_t width, uint32_t height, char* svgFragment);
+ +
67 void vkvg_svg_get_dimensions (VkvgSvg svg, uint32_t* width, uint32_t* height);
+
68 
+ +
77 VkvgSvg vkvg_svg_load (const char* svgFilePath);
+
78 
+ +
85 VkvgSvg vkvg_svg_load_fragment (char* svgFragment);
+
86 
+ +
94 void vkvg_svg_render (VkvgSvg svg, VkvgContext ctx, const char* id);
+
95 
+ + +
102 
+
103 #ifdef __cplusplus
+
104 }
+
105 #endif
+
106 #endif
+
struct _vkvg_context_t * VkvgContext
The Vkvg drawing Context.
Definition: vkvg.h:298
+
struct _vkvg_device_t * VkvgDevice
Opaque pointer on a Vkvg device structure.
Definition: vkvg.h:319
+
struct _vkvg_surface_t * VkvgSurface
Opaque pointer on a Vkvg Surface structure.
Definition: vkvg.h:312
+
struct NSVGimage * VkvgSvg
Definition: vkvg-svg.h:32
+
vkvg_public VkvgSurface vkvg_surface_create_from_svg(VkvgDevice dev, uint32_t width, uint32_t height, const char *svgFilePath)
load svg file into Surface
+
vkvg_public VkvgSurface vkvg_surface_create_from_svg_fragment(VkvgDevice dev, uint32_t width, uint32_t height, char *svgFragment)
create surface from svg fragment
+
vkvg_public VkvgSvg vkvg_svg_load_fragment(char *svgFragment)
Load svg from an svg source fragment.
+
vkvg_public void vkvg_svg_get_dimensions(VkvgSvg svg, uint32_t *width, uint32_t *height)
get svg dimensions.
+
vkvg_public VkvgSvg vkvg_svg_load(const char *svgFilePath)
Load svg file in memory.
+
vkvg_public void vkvg_svg_render(VkvgSvg svg, VkvgContext ctx, const char *id)
render svg on a context.
+
vkvg_public void vkvg_svg_destroy(VkvgSvg svg)
release VkvgSvg pointer resources.
+
#define vkvg_public
Definition: vkvg.h:78
+
+ + + + + diff --git a/vkvg.svg b/vkvg.svg new file mode 100644 index 0000000..df4f790 --- /dev/null +++ b/vkvg.svg @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/vkvg_8h.html b/vkvg_8h.html new file mode 100644 index 0000000..57f4ae2 --- /dev/null +++ b/vkvg_8h.html @@ -0,0 +1,604 @@ + + + + + + + + + VKVG: /mnt/devel/vkvg-master/include/vkvg.h File Reference + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ +
+
vkvg.h File Reference
+
+
+ +

The header of the VKVG library. +More...

+
#include <vulkan/vulkan.h>
+#include <math.h>
+#include <stdbool.h>
+
+Include dependency graph for vkvg.h:
+
+
+ + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + +

+Data Structures

struct  vkvg_color_t
 
struct  vkvg_font_extents_t
 font metrics More...
 
struct  vkvg_text_extents_t
 text metrics More...
 
struct  vkvg_glyph_info_t
 glyphs position in a VkvgText More...
 
struct  vkvg_matrix_t
 vkvg matrix structure More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define vkvg_public
 
#define VKVG_LOG_ERR   0x00000001
 
#define VKVG_LOG_DEBUG   0x00000002
 
#define VKVG_LOG_INFO_PTS   0x00000004
 
#define VKVG_LOG_INFO_PATH   0x00000008
 
#define VKVG_LOG_INFO_CMD   0x00000010
 
#define VKVG_LOG_INFO_VBO   0x00000020
 
#define VKVG_LOG_INFO_IBO   0x00000040
 
#define VKVG_LOG_INFO_VAO   (VKVG_LOG_INFO_VBO|VKVG_LOG_INFO_IBO)
 
#define VKVG_LOG_DBG_ARRAYS   0x00001000
 
#define VKVG_LOG_STROKE   0x00010000
 
#define VKVG_LOG_FULL   0xffffffff
 
#define VKVG_LOG_INFO   0x00008000
 
#define VKVG_IDENTITY_MATRIX   (vkvg_matrix_t){1,0,0,1,0,0}
 
+ + + + + + + + + + + + + + + + +

+Typedefs

typedef struct _vkvg_text_run_t * VkvgText
 Opaque pointer on a vkvg text run. More...
 
typedef struct _vkvg_context_t * VkvgContext
 The Vkvg drawing Context. More...
 
typedef struct _vkvg_surface_t * VkvgSurface
 Opaque pointer on a Vkvg Surface structure. More...
 
typedef struct _vkvg_device_t * VkvgDevice
 Opaque pointer on a Vkvg device structure. More...
 
typedef struct _vkvg_pattern_t * VkvgPattern
 Opaque pointer on a Vkvg pattern structure. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  vkvg_status_t
 vkvg operation status. More...
 
enum  vkvg_direction_t
 
enum  vkvg_format_t
 
enum  vkvg_extend_t
 pattern border policy More...
 
enum  vkvg_filter_t
 
enum  vkvg_pattern_type_t
 pattern types More...
 
enum  vkvg_line_cap_t
 line caps More...
 
enum  vkvg_line_join_t
 lines articulations More...
 
enum  vkvg_fill_rule_t
 shape fill method More...
 
enum  vkvg_operator_t
 compositing operators More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

vkvg_public void vkvg_matrix_init_identity (vkvg_matrix_t *matrix)
 Set matrix to identity. More...
 
vkvg_public void vkvg_matrix_init (vkvg_matrix_t *matrix, float xx, float yx, float xy, float yy, float x0, float y0)
 Matrix initialization. More...
 
vkvg_public void vkvg_matrix_init_translate (vkvg_matrix_t *matrix, float tx, float ty)
 Rotation matrix initialization. More...
 
vkvg_public void vkvg_matrix_init_scale (vkvg_matrix_t *matrix, float sx, float sy)
 scaling matrix initialization More...
 
vkvg_public void vkvg_matrix_init_rotate (vkvg_matrix_t *matrix, float radians)
 rotation matrix initialization More...
 
vkvg_public void vkvg_matrix_translate (vkvg_matrix_t *matrix, float tx, float ty)
 apply translation on matrix More...
 
vkvg_public void vkvg_matrix_scale (vkvg_matrix_t *matrix, float sx, float sy)
 apply scale on matrix More...
 
vkvg_public void vkvg_matrix_rotate (vkvg_matrix_t *matrix, float radians)
 apply rotation on matrix More...
 
vkvg_public void vkvg_matrix_multiply (vkvg_matrix_t *result, const vkvg_matrix_t *a, const vkvg_matrix_t *b)
 matrices multiplication More...
 
vkvg_public void vkvg_matrix_transform_distance (const vkvg_matrix_t *matrix, float *dx, float *dy)
 transform distances More...
 
vkvg_public void vkvg_matrix_transform_point (const vkvg_matrix_t *matrix, float *x, float *y)
 transform point More...
 
vkvg_public vkvg_status_t vkvg_matrix_invert (vkvg_matrix_t *matrix)
 invert matrix More...
 
vkvg_public void vkvg_matrix_get_scale (const vkvg_matrix_t *matrix, float *sx, float *sy)
 
vkvg_public void vkvg_device_set_thread_aware (VkvgDevice dev, uint32_t thread_awayre)
 
vkvg_public VkvgDevice vkvg_device_create (VkSampleCountFlags samples, bool deferredResolve)
 Create a new vkvg device. More...
 
vkvg_public VkvgDevice vkvg_device_create_from_vk (VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex)
 Create a new vkvg device from an existing vulkan logical device. More...
 
vkvg_public VkvgDevice vkvg_device_create_from_vk_multisample (VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex, VkSampleCountFlags samples, bool deferredResolve)
 Create a new multisampled vkvg device. More...
 
vkvg_public void vkvg_device_destroy (VkvgDevice dev)
 Decrement the reference count of the device by 1. Release all it's ressources if count reach 0. More...
 
vkvg_public vkvg_status_t vkvg_device_status (VkvgDevice dev)
 Get the current status of the device. More...
 
vkvg_public VkvgDevice vkvg_device_reference (VkvgDevice dev)
 Increment the reference count on this device. More...
 
vkvg_public uint32_t vkvg_device_get_reference_count (VkvgDevice dev)
 Query the reference count of the device. More...
 
vkvg_public void vkvg_device_set_dpy (VkvgDevice dev, int hdpy, int vdpy)
 Set the screen dot per inch for this device. More...
 
vkvg_public void vkvg_device_get_dpy (VkvgDevice dev, int *hdpy, int *vdpy)
 Get the current dpy values. More...
 
vkvg_public void vkvg_get_required_instance_extensions (const char **pExtensions, uint32_t *pExtCount)
 query required instance extensions for vkvg. More...
 
vkvg_public void vkvg_get_required_device_extensions (VkPhysicalDevice phy, const char **pExtensions, uint32_t *pExtCount)
 query required device extensions for vkvg. More...
 
vkvg_public const void * vkvg_get_device_requirements (VkPhysicalDeviceFeatures *pEnabledFeatures)
 get vulkan device creation requirement to fit vkvg needs. More...
 
vkvg_public VkvgSurface vkvg_surface_create (VkvgDevice dev, uint32_t width, uint32_t height)
 Create a new vkvg surface. More...
 
vkvg_public VkvgSurface vkvg_surface_create_from_image (VkvgDevice dev, const char *filePath)
 Create a new vkvg surface by loading an image file. The resulting surface will have the same dimension as the supplied image. More...
 
vkvg_public VkvgSurface vkvg_surface_create_for_VkhImage (VkvgDevice dev, void *vkhImg)
 Create a new vkvg surface using an existing vulkan texture as backend. More...
 
vkvg_public VkvgSurface vkvg_surface_reference (VkvgSurface surf)
 Increment reference count on the surface by one. More...
 
vkvg_public uint32_t vkvg_surface_get_reference_count (VkvgSurface surf)
 Get the current reference count on this surface. More...
 
vkvg_public void vkvg_surface_destroy (VkvgSurface surf)
 Decrement the reference count on the surface by one. Destroy it if count reach 0. More...
 
vkvg_public vkvg_status_t vkvg_surface_status (VkvgSurface surf)
 Query the current status of the surface. More...
 
vkvg_public void vkvg_surface_clear (VkvgSurface surf)
 Clear the surface content, alpha is also set to 0 resulting in a transparent image. More...
 
vkvg_public VkImage vkvg_surface_get_vk_image (VkvgSurface surf)
 Get the final single sampled vulkan image of this surface. More...
 
vkvg_public VkFormat vkvg_surface_get_vk_format (VkvgSurface surf)
 Get the vulkan format of the vulkan texture used as backend for this surface. More...
 
vkvg_public uint32_t vkvg_surface_get_width (VkvgSurface surf)
 Get the actual surface width. More...
 
vkvg_public uint32_t vkvg_surface_get_height (VkvgSurface surf)
 Get the actual surface height. More...
 
vkvg_public vkvg_status_t vkvg_surface_write_to_png (VkvgSurface surf, const char *path)
 Write surface content to a png file on disk. More...
 
vkvg_public vkvg_status_t vkvg_surface_write_to_memory (VkvgSurface surf, unsigned char *const bitmap)
 Save surface to memory. More...
 
vkvg_public void vkvg_multisample_surface_resolve (VkvgSurface surf)
 Explicitly resolve a multisampled surface. More...
 
vkvg_public VkvgContext vkvg_create (VkvgSurface surf)
 Create a new vkvg context used for drawing on surfaces. More...
 
vkvg_public void vkvg_destroy (VkvgContext ctx)
 Decrement the reference count on the context by one. Destroy it if count reach 0. More...
 
vkvg_public vkvg_status_t vkvg_status (VkvgContext ctx)
 Get context status. More...
 
vkvg_public const char * vkvg_status_to_string (vkvg_status_t status)
 
vkvg_public VkvgContext vkvg_reference (VkvgContext ctx)
 Increment by one the reference count on this context. More...
 
vkvg_public uint32_t vkvg_get_reference_count (VkvgContext ctx)
 Get the current reference count of this context. More...
 
vkvg_public void vkvg_flush (VkvgContext ctx)
 Perform all the pending drawing operations on a context. More...
 
vkvg_public void vkvg_new_path (VkvgContext ctx)
 Start a new empty path. More...
 
vkvg_public void vkvg_close_path (VkvgContext ctx)
 Close the current path. More...
 
vkvg_public void vkvg_new_sub_path (VkvgContext ctx)
 Start new sub path, no current point is defined. More...
 
vkvg_public void vkvg_path_extents (VkvgContext ctx, float *x1, float *y1, float *x2, float *y2)
 vkvg_path_extents More...
 
vkvg_public void vkvg_get_current_point (VkvgContext ctx, float *x, float *y)
 Get the current point of the context, return 0,0 if no point is defined. More...
 
vkvg_public void vkvg_line_to (VkvgContext ctx, float x, float y)
 Add a line to the current path from the current point to the coordinate given in arguments. More...
 
vkvg_public void vkvg_rel_line_to (VkvgContext ctx, float dx, float dy)
 Add a line to the current path from the current point to the coordinate relative to it. More...
 
vkvg_public void vkvg_move_to (VkvgContext ctx, float x, float y)
 Move the context pen to the position given in argument. More...
 
vkvg_public void vkvg_rel_move_to (VkvgContext ctx, float x, float y)
 Move the context pen relative to the current point. More...
 
vkvg_public void vkvg_arc (VkvgContext ctx, float xc, float yc, float radius, float a1, float a2)
 Adds a circular arc of the given radius to the current path. More...
 
vkvg_public void vkvg_arc_negative (VkvgContext ctx, float xc, float yc, float radius, float a1, float a2)
 Add a circular arc in counter clockwise order to the current path. More...
 
vkvg_public void vkvg_curve_to (VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3)
 Adds a cubic Bézier spline to the current path. More...
 
vkvg_public void vkvg_rel_curve_to (VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3)
 Adds a cubic Bézier spline to the current path relative to the current point. More...
 
vkvg_public void vkvg_quadratic_to (VkvgContext ctx, float x1, float y1, float x2, float y2)
 Add a quadratic Bezizer curve to the current path. More...
 
vkvg_public void vkvg_rel_quadratic_to (VkvgContext ctx, float x1, float y1, float x2, float y2)
 Add a quadratic Bezizer curve to the current path relative to the current point. More...
 
vkvg_public vkvg_status_t vkvg_rectangle (VkvgContext ctx, float x, float y, float w, float h)
 Add an axis aligned rectangle subpath to the current path. More...
 
vkvg_public vkvg_status_t vkvg_rounded_rectangle (VkvgContext ctx, float x, float y, float w, float h, float radius)
 Add an axis aligned rectangle with rounded corners to the current path. More...
 
vkvg_public void vkvg_rounded_rectangle2 (VkvgContext ctx, float x, float y, float w, float h, float rx, float ry)
 Add an axis aligned rectangle with rounded corners defined in both axis to the current path. More...
 
vkvg_public void vkvg_ellipse (VkvgContext ctx, float radiusX, float radiusY, float x, float y, float rotationAngle)
 
vkvg_public void vkvg_elliptic_arc_to (VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi)
 
vkvg_public void vkvg_rel_elliptic_arc_to (VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi)
 
vkvg_public void vkvg_stroke (VkvgContext ctx)
 Stroke command. More...
 
vkvg_public void vkvg_stroke_preserve (VkvgContext ctx)
 Stroke command that preserve current path. More...
 
vkvg_public void vkvg_fill (VkvgContext ctx)
 Fill command. More...
 
vkvg_public void vkvg_fill_preserve (VkvgContext ctx)
 Fill command that preserve current path. More...
 
vkvg_public void vkvg_paint (VkvgContext ctx)
 Paint command. More...
 
vkvg_public void vkvg_clear (VkvgContext ctx)
 Clear surface. More...
 
vkvg_public void vkvg_reset_clip (VkvgContext ctx)
 Reset the current clip region. More...
 
vkvg_public void vkvg_clip (VkvgContext ctx)
 Establishes a new clip region. More...
 
vkvg_public void vkvg_clip_preserve (VkvgContext ctx)
 Establishes a new clip region preserving the current path. More...
 
vkvg_public void vkvg_set_opacity (VkvgContext ctx, float opacity)
 
vkvg_public float vkvg_get_opacity (VkvgContext ctx)
 
vkvg_public void vkvg_set_source_color (VkvgContext ctx, uint32_t c)
 Set current source for drawing to the solid color defined by the supplied 32bit integer. More...
 
vkvg_public void vkvg_set_source_rgba (VkvgContext ctx, float r, float g, float b, float a)
 set color with alpha. More...
 
vkvg_public void vkvg_set_source_rgb (VkvgContext ctx, float r, float g, float b)
 set color as new source. More...
 
vkvg_public void vkvg_set_line_width (VkvgContext ctx, float width)
 set line width for the next draw command. More...
 
vkvg_public void vkvg_set_miter_limit (VkvgContext ctx, float limit)
 set line join miter size limit. More...
 
vkvg_public float vkvg_get_miter_limit (VkvgContext ctx)
 Gets the current miter limit, as set by vkvg_set_miter_limit(). More...
 
vkvg_public void vkvg_set_line_cap (VkvgContext ctx, vkvg_line_cap_t cap)
 set line terminations for the next draw command. More...
 
vkvg_public void vkvg_set_line_join (VkvgContext ctx, vkvg_line_join_t join)
 set line joins for the next draw command. More...
 
vkvg_public void vkvg_set_source_surface (VkvgContext ctx, VkvgSurface surf, float x, float y)
 use supplied surface as current pattern. More...
 
vkvg_public void vkvg_set_source (VkvgContext ctx, VkvgPattern pat)
 set supplied pattern as current source. More...
 
vkvg_public void vkvg_set_operator (VkvgContext ctx, vkvg_operator_t op)
 
vkvg_public void vkvg_set_fill_rule (VkvgContext ctx, vkvg_fill_rule_t fr)
 
vkvg_public void vkvg_set_dash (VkvgContext ctx, const float *dashes, uint32_t num_dashes, float offset)
 set the dash configuration for strokes More...
 
vkvg_public void vkvg_get_dash (VkvgContext ctx, const float *dashes, uint32_t *num_dashes, float *offset)
 get current dash settings. More...
 
vkvg_public float vkvg_get_line_width (VkvgContext ctx)
 get current line width More...
 
vkvg_public vkvg_line_cap_t vkvg_get_line_cap (VkvgContext ctx)
 
vkvg_public vkvg_line_join_t vkvg_get_line_join (VkvgContext ctx)
 
vkvg_public vkvg_operator_t vkvg_get_operator (VkvgContext ctx)
 
vkvg_public vkvg_fill_rule_t vkvg_get_fill_rule (VkvgContext ctx)
 
vkvg_public VkvgPattern vkvg_get_source (VkvgContext ctx)
 
vkvg_public VkvgSurface vkvg_get_target (VkvgContext ctx)
 
vkvg_public bool vkvg_has_current_point (VkvgContext ctx)
 Returns whether a current point is defined on the current path. See vkvg_get_current_point() for details on the current point. More...
 
vkvg_public void vkvg_save (VkvgContext ctx)
 
vkvg_public void vkvg_restore (VkvgContext ctx)
 
vkvg_public void vkvg_translate (VkvgContext ctx, float dx, float dy)
 
vkvg_public void vkvg_scale (VkvgContext ctx, float sx, float sy)
 
vkvg_public void vkvg_rotate (VkvgContext ctx, float radians)
 
vkvg_public void vkvg_transform (VkvgContext ctx, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_set_matrix (VkvgContext ctx, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_get_matrix (VkvgContext ctx, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_identity_matrix (VkvgContext ctx)
 Reset the current transformation matrix of the provided context to the identity matrix. More...
 
vkvg_public void vkvg_select_font_face (VkvgContext ctx, const char *name)
 Try find font with the specified name using the FontConfig library. More...
 
vkvg_public void vkvg_load_font_from_path (VkvgContext ctx, const char *path, const char *name)
 Select a new font by providing its file path. More...
 
vkvg_public void vkvg_load_font_from_memory (VkvgContext ctx, unsigned char *fontBuffer, long fontBufferByteSize, const char *name)
 Select a new font by providing a pointer on the font file loaded in memory and its size in byte. More...
 
vkvg_public void vkvg_set_font_size (VkvgContext ctx, uint32_t size)
 
vkvg_public void vkvg_show_text (VkvgContext ctx, const char *text)
 
vkvg_public void vkvg_text_extents (VkvgContext ctx, const char *text, vkvg_text_extents_t *extents)
 
vkvg_public void vkvg_font_extents (VkvgContext ctx, vkvg_font_extents_t *extents)
 
vkvg_public VkvgText vkvg_text_run_create (VkvgContext ctx, const char *text)
 Create a new text run. More...
 
vkvg_public VkvgText vkvg_text_run_create_with_length (VkvgContext ctx, const char *text, uint32_t length)
 Create a new text run for a non null terminated string. More...
 
vkvg_public void vkvg_text_run_destroy (VkvgText textRun)
 Release ressources holded by the text run. More...
 
vkvg_public void vkvg_show_text_run (VkvgContext ctx, VkvgText textRun)
 
vkvg_public void vkvg_text_run_get_extents (VkvgText textRun, vkvg_text_extents_t *extents)
 
vkvg_public uint32_t vkvg_text_run_get_glyph_count (VkvgText textRun)
 Get glyph count of text run. More...
 
vkvg_public void vkvg_text_run_get_glyph_position (VkvgText textRun, uint32_t index, vkvg_glyph_info_t *pGlyphInfo)
 retrieve glyph positions. More...
 
vkvg_public VkvgPattern vkvg_pattern_reference (VkvgPattern pat)
 add reference More...
 
vkvg_public uint32_t vkvg_pattern_get_reference_count (VkvgPattern pat)
 get reference count More...
 
vkvg_public VkvgPattern vkvg_pattern_create_for_surface (VkvgSurface surf)
 create a surface pattern More...
 
vkvg_public VkvgPattern vkvg_pattern_create_linear (float x0, float y0, float x1, float y1)
 create a new linear gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_edit_linear (VkvgPattern pat, float x0, float y0, float x1, float y1)
 edit an existing linear gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_get_linear_points (VkvgPattern pat, float *x0, float *y0, float *x1, float *y1)
 get the gradient end points for a linear gradient More...
 
vkvg_public VkvgPattern vkvg_pattern_create_radial (float cx0, float cy0, float radius0, float cx1, float cy1, float radius1)
 create a new radial gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_edit_radial (VkvgPattern pat, float cx0, float cy0, float radius0, float cx1, float cy1, float radius1)
 edit an existing radial gradient. More...
 
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_count (VkvgPattern pat, uint32_t *count)
 get color stop count. More...
 
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_rgba (VkvgPattern pat, uint32_t index, float *offset, float *r, float *g, float *b, float *a)
 get color stop. More...
 
vkvg_public void vkvg_pattern_destroy (VkvgPattern pat)
 dispose pattern. More...
 
vkvg_public vkvg_status_t vkvg_pattern_add_color_stop (VkvgPattern pat, float offset, float r, float g, float b, float a)
 add colors to gradients More...
 
vkvg_public void vkvg_pattern_set_extend (VkvgPattern pat, vkvg_extend_t extend)
 control the extend of the pattern More...
 
vkvg_public void vkvg_pattern_set_filter (VkvgPattern pat, vkvg_filter_t filter)
 control the filtering when using this pattern on a surface. More...
 
vkvg_public vkvg_extend_t vkvg_pattern_get_extend (VkvgPattern pat)
 query the current extend value for a pa More...
 
vkvg_public vkvg_filter_t vkvg_pattern_get_filter (VkvgPattern pat)
 
vkvg_public vkvg_pattern_type_t vkvg_pattern_get_type (VkvgPattern pat)
 get pattern type More...
 
vkvg_public void vkvg_pattern_set_matrix (VkvgPattern pat, const vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_pattern_get_matrix (VkvgPattern pat, vkvg_matrix_t *matrix)
 
vkvg_public void vkvg_set_source_color_name (VkvgContext ctx, const char *color)
 
+

Detailed Description

+

The header of the VKVG library.

+

This is the header file of the VKVG library. It defines all its types and declares all its functions.

+

For more information about how to use this file, see build_include.

+ +

Definition in file vkvg.h.

+
+ + + + + diff --git a/vkvg_8h__incl.map b/vkvg_8h__incl.map new file mode 100644 index 0000000..0638352 --- /dev/null +++ b/vkvg_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/vkvg_8h__incl.md5 b/vkvg_8h__incl.md5 new file mode 100644 index 0000000..873a569 --- /dev/null +++ b/vkvg_8h__incl.md5 @@ -0,0 +1 @@ +3fb7c0a7b47ade32c6ced3a9d4894d30 \ No newline at end of file diff --git a/vkvg_8h__incl.png b/vkvg_8h__incl.png new file mode 100644 index 0000000..483130a Binary files /dev/null and b/vkvg_8h__incl.png differ diff --git a/vkvg_8h_a040b130202d4c2e3e1a57dd8837ed919.html b/vkvg_8h_a040b130202d4c2e3e1a57dd8837ed919.html new file mode 100644 index 0000000..5645785 --- /dev/null +++ b/vkvg_8h_a040b130202d4c2e3e1a57dd8837ed919.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_DBG_ARRAYS + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_DBG_ARRAYS

+ +
+
+ + + + +
#define VKVG_LOG_DBG_ARRAYS   0x00001000
+
+ +

Definition at line 92 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a0411814a6919e5df693cf40dcfcbc4e3.html b/vkvg_8h_a0411814a6919e5df693cf40dcfcbc4e3.html new file mode 100644 index 0000000..44a3b08 --- /dev/null +++ b/vkvg_8h_a0411814a6919e5df693cf40dcfcbc4e3.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_DEBUG + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_DEBUG

+ +
+
+ + + + +
#define VKVG_LOG_DEBUG   0x00000002
+
+ +

Definition at line 84 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html b/vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html new file mode 100644 index 0000000..accb911 --- /dev/null +++ b/vkvg_8h_a0cf53c292fd50abe53343d71673c9354.html @@ -0,0 +1,308 @@ + + + + + + + + + VKVG: vkvg_status_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_status_t

+ +
+
+ + + + +
enum vkvg_status_t
+
+ +

vkvg operation status.

+

vkvg_status_t is used to indicates errors that can occur when using vkvg. Several vkvg function directely return result, but when using a Context, the last error is stored in the context and can be accessed with vkvg_status().

+

As soon as a status is not success, further operations will be canceled.

+ + + + + + + + + + + + + + + + + + + + + +
Enumerator
VKVG_STATUS_SUCCESS 

no error occurred.

+
VKVG_STATUS_NO_MEMORY 

out of memory

+
VKVG_STATUS_INVALID_RESTORE 

call to vkvg_restore without matching call to vkvg_save

+
VKVG_STATUS_NO_CURRENT_POINT 

path command expecting a current point to be defined failed

+
VKVG_STATUS_INVALID_MATRIX 

invalid matrix (not invertible)

+
VKVG_STATUS_INVALID_STATUS 
VKVG_STATUS_INVALID_INDEX 
VKVG_STATUS_NULL_POINTER 

NULL pointer

+
VKVG_STATUS_WRITE_ERROR 
VKVG_STATUS_PATTERN_TYPE_MISMATCH 
VKVG_STATUS_PATTERN_INVALID_GRADIENT 

occurs when stops count is zero

+
VKVG_STATUS_INVALID_FORMAT 
VKVG_STATUS_FILE_NOT_FOUND 
VKVG_STATUS_INVALID_DASH 

invalid value for a dash setting

+
VKVG_STATUS_INVALID_RECT 

rectangle with height or width equal to 0.

+
VKVG_STATUS_TIMEOUT 

waiting for a vulkan operation to finish resulted in a fence timeout (5 seconds)

+
VKVG_STATUS_DEVICE_ERROR 

vkvg device initialization error

+
VKVG_STATUS_INVALID_IMAGE 
VKVG_STATUS_INVALID_SURFACE 
VKVG_STATUS_INVALID_FONT 

Unresolved font name

+
+ +

Definition at line 120 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a13fb664af0ea69bff0f1fbc142b57f60.html b/vkvg_8h_a13fb664af0ea69bff0f1fbc142b57f60.html new file mode 100644 index 0000000..d37e03b --- /dev/null +++ b/vkvg_8h_a13fb664af0ea69bff0f1fbc142b57f60.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_FULL + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_FULL

+ +
+
+ + + + +
#define VKVG_LOG_FULL   0xffffffff
+
+ +

Definition at line 94 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a164da86a4b2636d58d39c45a857b7227.html b/vkvg_8h_a164da86a4b2636d58d39c45a857b7227.html new file mode 100644 index 0000000..8520915 --- /dev/null +++ b/vkvg_8h_a164da86a4b2636d58d39c45a857b7227.html @@ -0,0 +1,282 @@ + + + + + + + + + VKVG: vkvg_set_source_color_name + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_set_source_color_name()

+ +
+
+ + + + + + + + + + + + + + + + + + +
vkvg_public void vkvg_set_source_color_name (VkvgContext ctx,
const char * color 
)
+
+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a17d3944887e536639b7af4a12e7d657c.html b/vkvg_8h_a17d3944887e536639b7af4a12e7d657c.html new file mode 100644 index 0000000..40030fe --- /dev/null +++ b/vkvg_8h_a17d3944887e536639b7af4a12e7d657c.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO_CMD + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO_CMD

+ +
+
+ + + + +
#define VKVG_LOG_INFO_CMD   0x00000010
+
+ +

Definition at line 88 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a1cde27798744c6485ac522a843017513.html b/vkvg_8h_a1cde27798744c6485ac522a843017513.html new file mode 100644 index 0000000..3713a75 --- /dev/null +++ b/vkvg_8h_a1cde27798744c6485ac522a843017513.html @@ -0,0 +1,286 @@ + + + + + + + + + VKVG: vkvg_pattern_type_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_pattern_type_t

+ +
+
+ + + + +
enum vkvg_pattern_type_t
+
+ +

pattern types

+ + + + + + + +
Enumerator
VKVG_PATTERN_TYPE_SOLID 

single color pattern

+
VKVG_PATTERN_TYPE_SURFACE 

vkvg surface pattern

+
VKVG_PATTERN_TYPE_LINEAR 

linear gradient pattern

+
VKVG_PATTERN_TYPE_RADIAL 

radial gradient pattern

+
VKVG_PATTERN_TYPE_MESH 

not implemented

+
VKVG_PATTERN_TYPE_RASTER_SOURCE 

not implemented

+
+ +

Definition at line 182 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a2a55039902f51716c1ad337951ecf103.html b/vkvg_8h_a2a55039902f51716c1ad337951ecf103.html new file mode 100644 index 0000000..7ae2e6e --- /dev/null +++ b/vkvg_8h_a2a55039902f51716c1ad337951ecf103.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO_VBO + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO_VBO

+ +
+
+ + + + +
#define VKVG_LOG_INFO_VBO   0x00000020
+
+ +

Definition at line 89 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html b/vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html new file mode 100644 index 0000000..9316a1b --- /dev/null +++ b/vkvg_8h_a2d6938aad383b6f91bf6be7164b2a995.html @@ -0,0 +1,274 @@ + + + + + + + + + VKVG: vkvg_direction_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_direction_t

+ +
+
+ + + + +
enum vkvg_direction_t
+
+ + + +
Enumerator
VKVG_HORIZONTAL 
VKVG_VERTICAL 
+ +

Definition at line 143 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a3a67c32eb5d4216389d6e5305b49aa8a.html b/vkvg_8h_a3a67c32eb5d4216389d6e5305b49aa8a.html new file mode 100644 index 0000000..a389ca7 --- /dev/null +++ b/vkvg_8h_a3a67c32eb5d4216389d6e5305b49aa8a.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO_PTS + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO_PTS

+ +
+
+ + + + +
#define VKVG_LOG_INFO_PTS   0x00000004
+
+ +

Definition at line 86 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html b/vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html new file mode 100644 index 0000000..1fb37ce --- /dev/null +++ b/vkvg_8h_a4202eb97e7aaee0296c33f8a6b932252.html @@ -0,0 +1,280 @@ + + + + + + + + + VKVG: vkvg_operator_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_operator_t

+ +
+
+ + + + +
enum vkvg_operator_t
+
+ +

compositing operators

+

define the operation used to draw

+ + + + + + +
Enumerator
VKVG_OPERATOR_CLEAR 
VKVG_OPERATOR_SOURCE 
VKVG_OPERATOR_OVER 
VKVG_OPERATOR_DIFFERENCE 
VKVG_OPERATOR_MAX 
+ +

Definition at line 828 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a4371df2f82cabd4963d913a094a06b35.html b/vkvg_8h_a4371df2f82cabd4963d913a094a06b35.html new file mode 100644 index 0000000..b8f52cc --- /dev/null +++ b/vkvg_8h_a4371df2f82cabd4963d913a094a06b35.html @@ -0,0 +1,275 @@ + + + + + + + + + VKVG: VkvgText + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VkvgText

+ +
+
+ + + + +
typedef struct _vkvg_text_run_t* VkvgText
+
+ +

Opaque pointer on a vkvg text run.

+

A VkvgText is an intermediate representation of a text to be drawn on a VkvgSurface. It contains the measurments computed for character poisitioning.

+

This object is used to speed up the rendering of the same text with the same font multiple times by storing typographic computations.

+

Drawing text with vkvg_show_text() implicitly create such intermediate structure that is destroyed imediatly after the function call.

+ +

Definition at line 288 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html b/vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html new file mode 100644 index 0000000..a60500b --- /dev/null +++ b/vkvg_8h_a46afd254ec45cd6ecd9bd3e238b4698d.html @@ -0,0 +1,281 @@ + + + + + + + + + VKVG: vkvg_line_join_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_line_join_t

+ +
+
+ + + + +
enum vkvg_line_join_t
+
+ +

lines articulations

+

define the joins shape for the stroke command between consecutive lines or curves. This setting is holded in the context and may be accessed with vkvg_set_line_join and vkvg_get_line_join.

+ + + + +
Enumerator
VKVG_LINE_JOIN_MITER 

normal joins with sharp angles, this is the default.

+
VKVG_LINE_JOIN_ROUND 

joins are rounded on the exterior border of the line.

+
VKVG_LINE_JOIN_BEVEL 

beveled line joins.

+
+ +

Definition at line 208 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a6664f29e4f38fafb584188235b65718a.html b/vkvg_8h_a6664f29e4f38fafb584188235b65718a.html new file mode 100644 index 0000000..00fbc8c --- /dev/null +++ b/vkvg_8h_a6664f29e4f38fafb584188235b65718a.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_ERR + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_ERR

+ +
+
+ + + + +
#define VKVG_LOG_ERR   0x00000001
+
+ +

Definition at line 83 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html b/vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html new file mode 100644 index 0000000..31f0e55 --- /dev/null +++ b/vkvg_8h_a71071026a36a7427c364a8bdc9bccfb6.html @@ -0,0 +1,279 @@ + + + + + + + + + VKVG: vkvg_fill_rule_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_fill_rule_t

+ +
+
+ + + + +
enum vkvg_fill_rule_t
+
+ +

shape fill method

+

define technique used to fill a path with the vkvg_fill command. This setting can be accessed in the context with vkvg_set_fill_rule and vkvg_get_fill_rule.

+ + + +
Enumerator
VKVG_FILL_RULE_EVEN_ODD 

stencil even-odd technique

+
VKVG_FILL_RULE_NON_ZERO 

ear clipping filling

+
+ +

Definition at line 220 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html b/vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html new file mode 100644 index 0000000..af8cdc2 --- /dev/null +++ b/vkvg_8h_a9e76bb74a68a2e86a709ed7397cf1a40.html @@ -0,0 +1,283 @@ + + + + + + + + + VKVG: vkvg_extend_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_extend_t

+ +
+
+ + + + +
enum vkvg_extend_t
+
+ +

pattern border policy

+

when painting a pattern on a surface, if the input bounds are smaller than the target bounds, the extend defines how the pattern will be rendered outside its original bounds.

+ + + + + +
Enumerator
VKVG_EXTEND_NONE 

nothing will be outputed outside the pattern original bounds

+
VKVG_EXTEND_REPEAT 

pattern will be repeated to fill all the target bounds

+
VKVG_EXTEND_REFLECT 

pattern will be repeated but mirrored on each repeat

+
VKVG_EXTEND_PAD 

the last pixels making the borders of the pattern will be extended to the whole target

+
+ +

Definition at line 160 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_aadcfd9780144829f5db766b6c54d18ef.html b/vkvg_8h_aadcfd9780144829f5db766b6c54d18ef.html new file mode 100644 index 0000000..b3644c4 --- /dev/null +++ b/vkvg_8h_aadcfd9780144829f5db766b6c54d18ef.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: vkvg_public + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_public

+ +
+
+ + + + +
#define vkvg_public
+
+ +

Definition at line 78 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_aaee3dfb09930712dcbac4be383a3132d.html b/vkvg_8h_aaee3dfb09930712dcbac4be383a3132d.html new file mode 100644 index 0000000..7553ead --- /dev/null +++ b/vkvg_8h_aaee3dfb09930712dcbac4be383a3132d.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO_VAO + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO_VAO

+ +
+
+ + + + +
#define VKVG_LOG_INFO_VAO   (VKVG_LOG_INFO_VBO|VKVG_LOG_INFO_IBO)
+
+ +

Definition at line 91 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_ac04f8e80a8db5dd46bf75406ef8c1989.html b/vkvg_8h_ac04f8e80a8db5dd46bf75406ef8c1989.html new file mode 100644 index 0000000..61a4f96 --- /dev/null +++ b/vkvg_8h_ac04f8e80a8db5dd46bf75406ef8c1989.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO_IBO + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO_IBO

+ +
+
+ + + + +
#define VKVG_LOG_INFO_IBO   0x00000040
+
+ +

Definition at line 90 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html b/vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html new file mode 100644 index 0000000..c10d0cc --- /dev/null +++ b/vkvg_8h_ac8c85e867cfe90bfd43a2b2a75e688c5.html @@ -0,0 +1,276 @@ + + + + + + + + + VKVG: vkvg_format_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_format_t

+ +
+
+ + + + +
enum vkvg_format_t
+
+ + + + + +
Enumerator
VKVG_FORMAT_ARGB32 
VKVG_FORMAT_RGB24 
VKVG_FORMAT_A8 
VKVG_FORMAT_A1 
+ +

Definition at line 148 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html b/vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html new file mode 100644 index 0000000..ba187d9 --- /dev/null +++ b/vkvg_8h_adb45e5c6af26000f8dacd091679c0ca5.html @@ -0,0 +1,278 @@ + + + + + + + + + VKVG: vkvg_filter_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_filter_t

+ +
+
+ + + + +
enum vkvg_filter_t
+
+ + + + + + + +
Enumerator
VKVG_FILTER_FAST 
VKVG_FILTER_GOOD 
VKVG_FILTER_BEST 
VKVG_FILTER_NEAREST 
VKVG_FILTER_BILINEAR 
VKVG_FILTER_GAUSSIAN 
+ +

Definition at line 168 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_ae0b32f5daaea9a1c1031f237599b914a.html b/vkvg_8h_ae0b32f5daaea9a1c1031f237599b914a.html new file mode 100644 index 0000000..28e6c4c --- /dev/null +++ b/vkvg_8h_ae0b32f5daaea9a1c1031f237599b914a.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_STROKE + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_STROKE

+ +
+
+ + + + +
#define VKVG_LOG_STROKE   0x00010000
+
+ +

Definition at line 93 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html b/vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html new file mode 100644 index 0000000..c9d9495 --- /dev/null +++ b/vkvg_8h_ae63b94eb181f12347450efcc67cbf8f0.html @@ -0,0 +1,281 @@ + + + + + + + + + VKVG: vkvg_line_cap_t + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ vkvg_line_cap_t

+ +
+
+ + + + +
enum vkvg_line_cap_t
+
+ +

line caps

+

define the path ends shapes which may be rounded or squared. The context hold the current line cap configuration which may be accessed with vkvg_set_line_cap and vkvg_get_line_cap

+ + + + +
Enumerator
VKVG_LINE_CAP_BUTT 

normal line endings, this is the default.

+
VKVG_LINE_CAP_ROUND 

rounded line caps

+
VKVG_LINE_CAP_SQUARE 

extend the caps with squared terminations having border equal to current line width.

+
+ +

Definition at line 197 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_af23f274286a67543b606d4918bc87d9c.html b/vkvg_8h_af23f274286a67543b606d4918bc87d9c.html new file mode 100644 index 0000000..fe17fe1 --- /dev/null +++ b/vkvg_8h_af23f274286a67543b606d4918bc87d9c.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO_PATH + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO_PATH

+ +
+
+ + + + +
#define VKVG_LOG_INFO_PATH   0x00000008
+
+ +

Definition at line 87 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_af9445855626eb75472a91844db51e59e.html b/vkvg_8h_af9445855626eb75472a91844db51e59e.html new file mode 100644 index 0000000..d0324ab --- /dev/null +++ b/vkvg_8h_af9445855626eb75472a91844db51e59e.html @@ -0,0 +1,270 @@ + + + + + + + + + VKVG: VKVG_LOG_INFO + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ + + + + +
+ + + +

◆ VKVG_LOG_INFO

+ +
+
+ + + + +
#define VKVG_LOG_INFO   0x00008000
+
+ +

Definition at line 96 of file vkvg.h.

+ +
+
+
+
+ + + + + diff --git a/vkvg_8h_source.html b/vkvg_8h_source.html new file mode 100644 index 0000000..81a1e93 --- /dev/null +++ b/vkvg_8h_source.html @@ -0,0 +1,907 @@ + + + + + + + + + VKVG: /mnt/devel/vkvg-master/include/vkvg.h Source File + + + + + + + + + + +
+
+ + + + + +
+
VKVG  
+
Vulkan Vector Graphics
+
+
+ + +
+
+ + +
+ +
+ + +
+
+
+
vkvg.h
+
+
+Go to the documentation of this file.
1 /*
+
2  * Copyright (c) 2018-2020 Jean-Philippe Bruyère <jp_bruyere@hotmail.com>
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a copy of
+
5  * this software and associated documentation files (the "Software"), to deal in
+
6  * the Software without restriction, including without limitation the rights to use,
+
7  * copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
+
8  * Software, and to permit persons to whom the Software is furnished to do so, subject
+
9  * to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included in all
+
12  * copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+
19  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+
20  * THE SOFTWARE.
+
21  */
+
22 #ifndef VKVG_H
+
23 #define VKVG_H
+
24 
+
25 #ifdef __cplusplus
+
26 extern "C" {
+
27 #endif
+
28 
+
29 /*************************************************************************
+
30  * Doxygen documentation
+
31  *************************************************************************/
+
66 #include <vulkan/vulkan.h>
+
67 #include <math.h>
+
68 #include <stdbool.h>
+
69 
+
70 #ifndef vkvg_public
+
71  #ifdef VKVG_SHARED_BUILD
+
72  #if (defined(_WIN32) || defined(_WIN64))
+
73  #define vkvg_public __declspec(dllimport)
+
74  #else
+
75  #define vkvg_public __attribute__((visibility("default")))
+
76  #endif
+
77  #else
+
78  #define vkvg_public
+
79  #endif
+
80 #endif
+
81 
+
82 
+
83 #define VKVG_LOG_ERR 0x00000001
+
84 #define VKVG_LOG_DEBUG 0x00000002
+
85 
+
86 #define VKVG_LOG_INFO_PTS 0x00000004
+
87 #define VKVG_LOG_INFO_PATH 0x00000008
+
88 #define VKVG_LOG_INFO_CMD 0x00000010
+
89 #define VKVG_LOG_INFO_VBO 0x00000020
+
90 #define VKVG_LOG_INFO_IBO 0x00000040
+
91 #define VKVG_LOG_INFO_VAO (VKVG_LOG_INFO_VBO|VKVG_LOG_INFO_IBO)
+
92 #define VKVG_LOG_DBG_ARRAYS 0x00001000
+
93 #define VKVG_LOG_STROKE 0x00010000
+
94 #define VKVG_LOG_FULL 0xffffffff
+
95 
+
96 #define VKVG_LOG_INFO 0x00008000//(VKVG_LOG_INFO_PTS|VKVG_LOG_INFO_PATH|VKVG_LOG_INFO_CMD|VKVG_LOG_INFO_VAO)
+
97 #ifdef DEBUG
+
98  extern uint32_t vkvg_log_level;
+
99  #ifdef VKVG_WIRED_DEBUG
+
100  typedef enum {
+
101  vkvg_wired_debug_mode_normal = 0x01,
+
102  vkvg_wired_debug_mode_points = 0x02,
+
103  vkvg_wired_debug_mode_lines = 0x04,
+
104  vkvg_wired_debug_mode_both = vkvg_wired_debug_mode_points|vkvg_wired_debug_mode_lines,
+
105  vkvg_wired_debug_mode_all = 0xFFFFFFFF
+
106  }vkvg_wired_debug_mode;
+
107  extern vkvg_wired_debug_mode vkvg_wired_debug;
+
108  #endif
+
109 #endif
+
110 
+
120 typedef enum {
+ + + + + + + + + + + + + + + + + + + + + +
142 
+
143 typedef enum {
+ +
145  VKVG_VERTICAL = 1
+ +
147 
+
148 typedef enum {
+ + + + + +
160 typedef enum {
+ + + + + +
166 
+
167 
+
168 typedef enum {
+ + + + + + +
175 } vkvg_filter_t;
+
176 
+
182 typedef enum {
+ + + + + + + +
190 
+
197 typedef enum {
+ + + + +
208 typedef enum {
+ + + + +
213 
+
220 typedef enum {
+ + + +
224 
+
225 typedef struct {
+
226  float r;
+
227  float g;
+
228  float b;
+
229  float a;
+
230 } vkvg_color_t;
+
231 
+
238 typedef struct {
+
239  float ascent;
+
240  float descent;
+
241  float height;
+ + + +
251 typedef struct {
+
252  float x_bearing;
+
253  float y_bearing;
+
254  float width;
+
255  float height;
+
256  float x_advance;
+
257  float y_advance;
+ +
259 
+
266 typedef struct _glyph_info_t {
+
267  int32_t x_advance;
+
268  int32_t y_advance;
+
269  int32_t x_offset;
+
270  int32_t y_offset;
+
271  /* private */
+
272  uint32_t codepoint;//should be named glyphIndex, but for harfbuzz compatibility...
+ +
274 
+
288 typedef struct _vkvg_text_run_t* VkvgText;
+
289 
+
298 typedef struct _vkvg_context_t* VkvgContext;
+
312 typedef struct _vkvg_surface_t* VkvgSurface;
+
319 typedef struct _vkvg_device_t* VkvgDevice;
+
327 typedef struct _vkvg_pattern_t* VkvgPattern;
+
328 
+
329 #if VKVG_DBG_STATS
+
335 typedef struct {
+
336  uint32_t sizePoints;
+
337  uint32_t sizePathes;
+
338  uint32_t sizeVertices;
+
339  uint32_t sizeIndices;
+
340  uint32_t sizeVBO;
+
341  uint32_t sizeIBO;
+
342 } vkvg_debug_stats_t;
+
343 
+
344 vkvg_debug_stats_t vkvg_device_get_stats (VkvgDevice dev);
+
345 vkvg_debug_stats_t vkvg_device_reset_stats (VkvgDevice dev);
+
346 #endif
+
347 
+
348 
+
356 #define VKVG_IDENTITY_MATRIX (vkvg_matrix_t){1,0,0,1,0,0}
+
374 typedef struct {
+
375  float xx; float yx;
+
376  float xy; float yy;
+
377  float x0; float y0;
+
378 } vkvg_matrix_t;
+ + + + +
402  float xx, float yx,
+
403  float xy, float yy,
+
404  float x0, float y0);
+ +
414 void vkvg_matrix_init_translate (vkvg_matrix_t *matrix, float tx, float ty);
+ +
424 void vkvg_matrix_init_scale (vkvg_matrix_t *matrix, float sx, float sy);
+ +
437 void vkvg_matrix_init_rotate (vkvg_matrix_t *matrix, float radians);
+ +
449 void vkvg_matrix_translate (vkvg_matrix_t *matrix, float tx, float ty);
+ +
461 void vkvg_matrix_scale (vkvg_matrix_t *matrix, float sx, float sy);
+ +
474 void vkvg_matrix_rotate (vkvg_matrix_t *matrix, float radians);
+ + + +
501 void vkvg_matrix_transform_distance (const vkvg_matrix_t *matrix, float *dx, float *dy);
+ +
511 void vkvg_matrix_transform_point (const vkvg_matrix_t *matrix, float *x, float *y);
+ + + +
524 void vkvg_matrix_get_scale (const vkvg_matrix_t *matrix, float *sx, float *sy);
+ +
549 void vkvg_device_set_thread_aware (VkvgDevice dev, uint32_t thread_awayre);
+
550 
+ +
566 VkvgDevice vkvg_device_create (VkSampleCountFlags samples, bool deferredResolve);
+ +
587 VkvgDevice vkvg_device_create_from_vk (VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex);
+ +
607 VkvgDevice vkvg_device_create_from_vk_multisample (VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex, VkSampleCountFlags samples, bool deferredResolve);
+ + + + + + + + + +
655 void vkvg_device_set_dpy (VkvgDevice dev, int hdpy, int vdpy);
+ +
666 void vkvg_device_get_dpy (VkvgDevice dev, int* hdpy, int* vdpy);
+
667 
+ +
676 void vkvg_get_required_instance_extensions (const char** pExtensions, uint32_t* pExtCount);
+ +
685 void vkvg_get_required_device_extensions (VkPhysicalDevice phy, const char** pExtensions, uint32_t* pExtCount);
+ +
694 const void* vkvg_get_device_requirements (VkPhysicalDeviceFeatures* pEnabledFeatures);
+ +
707 VkvgSurface vkvg_surface_create (VkvgDevice dev, uint32_t width, uint32_t height);
+ + + + +
726 // VkvgSurface vkvg_surface_create_from_bitmap (VkvgDevice dev, unsigned char* img, uint32_t width, uint32_t height);
+ + + + + + + + + + + + + + + + + + + + + +
806 vkvg_status_t vkvg_surface_write_to_memory (VkvgSurface surf, unsigned char* const bitmap);
+ + +
821 //mimic from cairo, to facilitate usage of vkvg as cairo vulkan backend
+
822 
+
828 typedef enum _vkvg_operator {
+ +
830 
+ + +
833 /* VKVG_OPERATOR_IN,
+
834  VKVG_OPERATOR_OUT,
+
835  VKVG_OPERATOR_ATOP,
+
836 
+
837  VKVG_OPERATOR_DEST,
+
838  VKVG_OPERATOR_DEST_OVER,
+
839  VKVG_OPERATOR_DEST_IN,
+
840  VKVG_OPERATOR_DEST_OUT,
+
841  VKVG_OPERATOR_DEST_ATOP,
+
842 
+
843  VKVG_OPERATOR_XOR,
+
844  VKVG_OPERATOR_ADD,
+
845  VKVG_OPERATOR_SATURATE,
+
846 
+
847  VKVG_OPERATOR_MULTIPLY,
+
848  VKVG_OPERATOR_SCREEN,
+
849  VKVG_OPERATOR_OVERLAY,
+
850  VKVG_OPERATOR_DARKEN,
+
851  VKVG_OPERATOR_LIGHTEN,
+
852  VKVG_OPERATOR_COLOR_DODGE,
+
853  VKVG_OPERATOR_COLOR_BURN,
+
854  VKVG_OPERATOR_HARD_LIGHT,
+
855  VKVG_OPERATOR_SOFT_LIGHT,
+ +
857  VKVG_OPERATOR_EXCLUSION,
+
858  VKVG_OPERATOR_HSL_HUE,
+
859  VKVG_OPERATOR_HSL_SATURATION,
+
860  VKVG_OPERATOR_HSL_COLOR,
+
861  VKVG_OPERATOR_HSL_LUMINOSITY,*/
+ + +
864 
+ + + + + + + + + + + + + + + + + + + + + +
963 void vkvg_path_extents (VkvgContext ctx, float *x1, float *y1, float *x2, float *y2);
+ +
971 void vkvg_get_current_point (VkvgContext ctx, float* x, float* y);
+ +
983 void vkvg_line_to (VkvgContext ctx, float x, float y);
+ +
995 void vkvg_rel_line_to (VkvgContext ctx, float dx, float dy);
+ +
1009 void vkvg_move_to (VkvgContext ctx, float x, float y);
+ +
1022 void vkvg_rel_move_to (VkvgContext ctx, float x, float y);
+ +
1047 void vkvg_arc (VkvgContext ctx, float xc, float yc, float radius, float a1, float a2);
+ +
1065 void vkvg_arc_negative (VkvgContext ctx, float xc, float yc, float radius, float a1, float a2);
+ +
1082 void vkvg_curve_to (VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3);
+ +
1100 void vkvg_rel_curve_to (VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3);
+ +
1112 void vkvg_quadratic_to (VkvgContext ctx, float x1, float y1, float x2, float y2);
+ +
1123 void vkvg_rel_quadratic_to (VkvgContext ctx, float x1, float y1, float x2, float y2);
+ +
1136 vkvg_status_t vkvg_rectangle(VkvgContext ctx, float x, float y, float w, float h);
+ +
1150 vkvg_status_t vkvg_rounded_rectangle (VkvgContext ctx, float x, float y, float w, float h, float radius);
+ +
1165 void vkvg_rounded_rectangle2 (VkvgContext ctx, float x, float y, float w, float h, float rx, float ry);
+ +
1167 void vkvg_ellipse (VkvgContext ctx, float radiusX, float radiusY, float x, float y, float rotationAngle);
+ +
1169 void vkvg_elliptic_arc_to (VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi);
+ +
1171 void vkvg_rel_elliptic_arc_to (VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi);
+ + + + + + + + + + + +
1228 void vkvg_clear (VkvgContext ctx);//use vkClearAttachment to speed up clearing surf
+ + + + + + + +
1265 void vkvg_set_opacity (VkvgContext ctx, float opacity);
+ + + +
1274 void vkvg_set_source_color (VkvgContext ctx, uint32_t c);
+ +
1286 void vkvg_set_source_rgba (VkvgContext ctx, float r, float g, float b, float a);
+ +
1299 void vkvg_set_source_rgb (VkvgContext ctx, float r, float g, float b);
+ +
1310 void vkvg_set_line_width (VkvgContext ctx, float width);
+ +
1326 void vkvg_set_miter_limit (VkvgContext ctx, float limit);
+ + + + + + + +
1362 void vkvg_set_source_surface (VkvgContext ctx, VkvgSurface surf, float x, float y);
+ + + + + + + +
1401 void vkvg_set_dash (VkvgContext ctx, const float* dashes, uint32_t num_dashes, float offset);
+ +
1414 void vkvg_get_dash (VkvgContext ctx, const float *dashes, uint32_t* num_dashes, float* offset);
+
1415 
+ + + + + + + + + + + + +
1465 
+ + +
1468 
+ + +
1478 
+ + + + + +
1501 void vkvg_translate (VkvgContext ctx, float dx, float dy);
+ +
1510 void vkvg_scale (VkvgContext ctx, float sx, float sy);
+ +
1518 void vkvg_rotate (VkvgContext ctx, float radians);
+ +
1526 void vkvg_transform (VkvgContext ctx, const vkvg_matrix_t* matrix);
+ +
1534 void vkvg_set_matrix (VkvgContext ctx, const vkvg_matrix_t* matrix);
+ +
1542 void vkvg_get_matrix (VkvgContext ctx, const vkvg_matrix_t* matrix);
+ + +
1550 
+ +
1558 void vkvg_select_font_face (VkvgContext ctx, const char* name);
+ +
1567 void vkvg_load_font_from_path (VkvgContext ctx, const char* path, const char *name);
+ +
1577 void vkvg_load_font_from_memory (VkvgContext ctx, unsigned char* fontBuffer, long fontBufferByteSize, const char* name);
+ +
1585 void vkvg_set_font_size (VkvgContext ctx, uint32_t size);
+ +
1593 void vkvg_show_text (VkvgContext ctx, const char* text);
+ +
1602 void vkvg_text_extents (VkvgContext ctx, const char* text, vkvg_text_extents_t* extents);
+ + +
1611 
+
1612 //text run holds harfbuz datas, and prevent recreating them multiple times for the same line of text.
+ + + +
1631 VkvgText vkvg_text_run_create_with_length (VkvgContext ctx, const char* text, uint32_t length);
+ + + + + + + + + + +
1668  uint32_t index,
+
1669  vkvg_glyph_info_t* pGlyphInfo);
+ + + + + + + +
1724 VkvgPattern vkvg_pattern_create_linear (float x0, float y0, float x1, float y1);
+ +
1737 vkvg_status_t vkvg_pattern_edit_linear(VkvgPattern pat, float x0, float y0, float x1, float y1);
+ +
1750 vkvg_status_t vkvg_pattern_get_linear_points(VkvgPattern pat, float* x0, float* y0, float* x1, float* y1);
+ +
1766 VkvgPattern vkvg_pattern_create_radial (float cx0, float cy0, float radius0,
+
1767  float cx1, float cy1, float radius1);
+ + +
1784  float cx0, float cy0, float radius0,
+
1785  float cx1, float cy1, float radius1);
+ + + + +
1814  float* offset, float* r, float* g, float* b, float* a);
+
1815 
+ + + +
1839 vkvg_status_t vkvg_pattern_add_color_stop(VkvgPattern pat, float offset, float r, float g, float b, float a);
+ + + + + + + + + + + + + + +
1889 
+
1892 /********* EXPERIMENTAL **************/
+ +
1894 void vkvg_set_source_color_name (VkvgContext ctx, const char* color);
+
1895 
+
1896 #ifdef VKVG_RECORDING
+
1897 typedef struct _vkvg_recording_t* VkvgRecording;
+
1898 
+ +
1900 void vkvg_start_recording (VkvgContext ctx);
+ +
1902 VkvgRecording vkvg_stop_recording (VkvgContext ctx);
+ +
1904 void vkvg_replay (VkvgContext ctx, VkvgRecording rec);
+ +
1906 void vkvg_replay_command (VkvgContext ctx, VkvgRecording rec, uint32_t cmdIndex);
+ +
1908 void vkvg_recording_get_command (VkvgRecording rec, uint32_t cmdIndex, uint32_t* cmd, void** dataOffset);
+ +
1910 uint32_t vkvg_recording_get_count(VkvgRecording rec);
+ +
1912 void* vkvg_recording_get_data (VkvgRecording rec);
+ +
1914 void vkvg_recording_destroy (VkvgRecording rec);
+
1915 /*************************************/
+
1916 #endif
+
1917 
+
1918 #ifdef __cplusplus
+
1919 }
+
1920 #endif
+
1921 
+
1922 #endif
+
vkvg_public uint32_t vkvg_text_run_get_glyph_count(VkvgText textRun)
Get glyph count of text run.
+
vkvg_public void vkvg_font_extents(VkvgContext ctx, vkvg_font_extents_t *extents)
+
vkvg_public float vkvg_get_opacity(VkvgContext ctx)
+
vkvg_public void vkvg_close_path(VkvgContext ctx)
Close the current path.
+
struct _vkvg_context_t * VkvgContext
The Vkvg drawing Context.
Definition: vkvg.h:298
+
vkvg_public void vkvg_clip(VkvgContext ctx)
Establishes a new clip region.
+
vkvg_public void vkvg_rounded_rectangle2(VkvgContext ctx, float x, float y, float w, float h, float rx, float ry)
Add an axis aligned rectangle with rounded corners defined in both axis to the current path.
+
vkvg_public void vkvg_rel_curve_to(VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3)
Adds a cubic Bézier spline to the current path relative to the current point.
+
vkvg_public void vkvg_set_matrix(VkvgContext ctx, const vkvg_matrix_t *matrix)
+
vkvg_public void vkvg_set_miter_limit(VkvgContext ctx, float limit)
set line join miter size limit.
+
vkvg_public float vkvg_get_line_width(VkvgContext ctx)
get current line width
+
vkvg_public void vkvg_set_line_join(VkvgContext ctx, vkvg_line_join_t join)
set line joins for the next draw command.
+
vkvg_public void vkvg_set_line_cap(VkvgContext ctx, vkvg_line_cap_t cap)
set line terminations for the next draw command.
+
vkvg_public void vkvg_show_text(VkvgContext ctx, const char *text)
+
vkvg_public void vkvg_show_text_run(VkvgContext ctx, VkvgText textRun)
+
vkvg_public void vkvg_set_fill_rule(VkvgContext ctx, vkvg_fill_rule_t fr)
+
vkvg_public void vkvg_stroke(VkvgContext ctx)
Stroke command.
+
vkvg_public const char * vkvg_status_to_string(vkvg_status_t status)
+
vkvg_public void vkvg_set_dash(VkvgContext ctx, const float *dashes, uint32_t num_dashes, float offset)
set the dash configuration for strokes
+
vkvg_public void vkvg_stroke_preserve(VkvgContext ctx)
Stroke command that preserve current path.
+
vkvg_public vkvg_line_join_t vkvg_get_line_join(VkvgContext ctx)
+
vkvg_public void vkvg_move_to(VkvgContext ctx, float x, float y)
Move the context pen to the position given in argument.
+
vkvg_public void vkvg_clip_preserve(VkvgContext ctx)
Establishes a new clip region preserving the current path.
+
vkvg_public void vkvg_set_source_color(VkvgContext ctx, uint32_t c)
Set current source for drawing to the solid color defined by the supplied 32bit integer.
+
vkvg_public void vkvg_restore(VkvgContext ctx)
+
vkvg_public float vkvg_get_miter_limit(VkvgContext ctx)
Gets the current miter limit, as set by vkvg_set_miter_limit().
+
vkvg_public void vkvg_get_current_point(VkvgContext ctx, float *x, float *y)
Get the current point of the context, return 0,0 if no point is defined.
+
vkvg_public VkvgSurface vkvg_get_target(VkvgContext ctx)
+
vkvg_public VkvgContext vkvg_reference(VkvgContext ctx)
Increment by one the reference count on this context.
+
vkvg_public vkvg_fill_rule_t vkvg_get_fill_rule(VkvgContext ctx)
+
vkvg_public void vkvg_new_path(VkvgContext ctx)
Start a new empty path.
+
vkvg_public void vkvg_scale(VkvgContext ctx, float sx, float sy)
+
vkvg_public void vkvg_identity_matrix(VkvgContext ctx)
Reset the current transformation matrix of the provided context to the identity matrix.
+
vkvg_public void vkvg_new_sub_path(VkvgContext ctx)
Start new sub path, no current point is defined.
+
vkvg_public vkvg_status_t vkvg_rectangle(VkvgContext ctx, float x, float y, float w, float h)
Add an axis aligned rectangle subpath to the current path.
+
vkvg_public void vkvg_set_source_surface(VkvgContext ctx, VkvgSurface surf, float x, float y)
use supplied surface as current pattern.
+
vkvg_public void vkvg_set_source(VkvgContext ctx, VkvgPattern pat)
set supplied pattern as current source.
+
vkvg_public void vkvg_elliptic_arc_to(VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi)
+
vkvg_public void vkvg_set_opacity(VkvgContext ctx, float opacity)
+
vkvg_public void vkvg_text_extents(VkvgContext ctx, const char *text, vkvg_text_extents_t *extents)
+
vkvg_public void vkvg_get_matrix(VkvgContext ctx, const vkvg_matrix_t *matrix)
+
vkvg_public void vkvg_fill(VkvgContext ctx)
Fill command.
+
vkvg_public void vkvg_rel_line_to(VkvgContext ctx, float dx, float dy)
Add a line to the current path from the current point to the coordinate relative to it.
+
vkvg_public void vkvg_arc_negative(VkvgContext ctx, float xc, float yc, float radius, float a1, float a2)
Add a circular arc in counter clockwise order to the current path.
+
vkvg_public void vkvg_set_source_rgba(VkvgContext ctx, float r, float g, float b, float a)
set color with alpha.
+
vkvg_public void vkvg_reset_clip(VkvgContext ctx)
Reset the current clip region.
+
vkvg_public void vkvg_rel_elliptic_arc_to(VkvgContext ctx, float x2, float y2, bool largeArc, bool counterClockWise, float rx, float ry, float phi)
+
vkvg_public void vkvg_select_font_face(VkvgContext ctx, const char *name)
Try find font with the specified name using the FontConfig library.
+
vkvg_public void vkvg_set_source_rgb(VkvgContext ctx, float r, float g, float b)
set color as new source.
+
vkvg_public void vkvg_arc(VkvgContext ctx, float xc, float yc, float radius, float a1, float a2)
Adds a circular arc of the given radius to the current path.
+
vkvg_public void vkvg_load_font_from_memory(VkvgContext ctx, unsigned char *fontBuffer, long fontBufferByteSize, const char *name)
Select a new font by providing a pointer on the font file loaded in memory and its size in byte.
+
vkvg_public void vkvg_set_font_size(VkvgContext ctx, uint32_t size)
+
vkvg_public void vkvg_rel_quadratic_to(VkvgContext ctx, float x1, float y1, float x2, float y2)
Add a quadratic Bezizer curve to the current path relative to the current point.
+
vkvg_public void vkvg_paint(VkvgContext ctx)
Paint command.
+
vkvg_public vkvg_operator_t vkvg_get_operator(VkvgContext ctx)
+
vkvg_public void vkvg_transform(VkvgContext ctx, const vkvg_matrix_t *matrix)
+
vkvg_public vkvg_line_cap_t vkvg_get_line_cap(VkvgContext ctx)
+
vkvg_public void vkvg_fill_preserve(VkvgContext ctx)
Fill command that preserve current path.
+
vkvg_public void vkvg_set_line_width(VkvgContext ctx, float width)
set line width for the next draw command.
+
vkvg_public void vkvg_get_dash(VkvgContext ctx, const float *dashes, uint32_t *num_dashes, float *offset)
get current dash settings.
+
vkvg_public vkvg_status_t vkvg_rounded_rectangle(VkvgContext ctx, float x, float y, float w, float h, float radius)
Add an axis aligned rectangle with rounded corners to the current path.
+
vkvg_public uint32_t vkvg_get_reference_count(VkvgContext ctx)
Get the current reference count of this context.
+
vkvg_public vkvg_status_t vkvg_status(VkvgContext ctx)
Get context status.
+
vkvg_public void vkvg_line_to(VkvgContext ctx, float x, float y)
Add a line to the current path from the current point to the coordinate given in arguments.
+
vkvg_public void vkvg_load_font_from_path(VkvgContext ctx, const char *path, const char *name)
Select a new font by providing its file path.
+
vkvg_public void vkvg_rel_move_to(VkvgContext ctx, float x, float y)
Move the context pen relative to the current point.
+
vkvg_public void vkvg_ellipse(VkvgContext ctx, float radiusX, float radiusY, float x, float y, float rotationAngle)
+
vkvg_public void vkvg_set_operator(VkvgContext ctx, vkvg_operator_t op)
+
vkvg_public void vkvg_destroy(VkvgContext ctx)
Decrement the reference count on the context by one. Destroy it if count reach 0.
+
vkvg_public bool vkvg_has_current_point(VkvgContext ctx)
Returns whether a current point is defined on the current path. See vkvg_get_current_point() for deta...
+
vkvg_public void vkvg_clear(VkvgContext ctx)
Clear surface.
+
vkvg_public VkvgContext vkvg_create(VkvgSurface surf)
Create a new vkvg context used for drawing on surfaces.
+
vkvg_public VkvgPattern vkvg_get_source(VkvgContext ctx)
+
vkvg_public void vkvg_translate(VkvgContext ctx, float dx, float dy)
+
vkvg_public void vkvg_quadratic_to(VkvgContext ctx, float x1, float y1, float x2, float y2)
Add a quadratic Bezizer curve to the current path.
+
vkvg_public void vkvg_path_extents(VkvgContext ctx, float *x1, float *y1, float *x2, float *y2)
vkvg_path_extents
+
vkvg_public void vkvg_text_run_get_glyph_position(VkvgText textRun, uint32_t index, vkvg_glyph_info_t *pGlyphInfo)
retrieve glyph positions.
+
vkvg_public void vkvg_flush(VkvgContext ctx)
Perform all the pending drawing operations on a context.
+
vkvg_public VkvgText vkvg_text_run_create_with_length(VkvgContext ctx, const char *text, uint32_t length)
Create a new text run for a non null terminated string.
+
vkvg_public void vkvg_rotate(VkvgContext ctx, float radians)
+
vkvg_public void vkvg_curve_to(VkvgContext ctx, float x1, float y1, float x2, float y2, float x3, float y3)
Adds a cubic Bézier spline to the current path.
+
vkvg_public void vkvg_save(VkvgContext ctx)
+
vkvg_public void vkvg_text_run_destroy(VkvgText textRun)
Release ressources holded by the text run.
+
vkvg_public void vkvg_text_run_get_extents(VkvgText textRun, vkvg_text_extents_t *extents)
+
vkvg_public VkvgText vkvg_text_run_create(VkvgContext ctx, const char *text)
Create a new text run.
+
vkvg_public void vkvg_get_required_device_extensions(VkPhysicalDevice phy, const char **pExtensions, uint32_t *pExtCount)
query required device extensions for vkvg.
+
vkvg_public void vkvg_device_get_dpy(VkvgDevice dev, int *hdpy, int *vdpy)
Get the current dpy values.
+
vkvg_public VkvgDevice vkvg_device_create_from_vk(VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex)
Create a new vkvg device from an existing vulkan logical device.
+
vkvg_public void vkvg_device_destroy(VkvgDevice dev)
Decrement the reference count of the device by 1. Release all it's ressources if count reach 0.
+
vkvg_public VkvgDevice vkvg_device_create(VkSampleCountFlags samples, bool deferredResolve)
Create a new vkvg device.
+
struct _vkvg_device_t * VkvgDevice
Opaque pointer on a Vkvg device structure.
Definition: vkvg.h:319
+
vkvg_public uint32_t vkvg_device_get_reference_count(VkvgDevice dev)
Query the reference count of the device.
+
vkvg_public VkvgDevice vkvg_device_create_from_vk_multisample(VkInstance inst, VkPhysicalDevice phy, VkDevice vkdev, uint32_t qFamIdx, uint32_t qIndex, VkSampleCountFlags samples, bool deferredResolve)
Create a new multisampled vkvg device.
+
vkvg_public const void * vkvg_get_device_requirements(VkPhysicalDeviceFeatures *pEnabledFeatures)
get vulkan device creation requirement to fit vkvg needs.
+
vkvg_public VkvgDevice vkvg_device_reference(VkvgDevice dev)
Increment the reference count on this device.
+
vkvg_public vkvg_status_t vkvg_device_status(VkvgDevice dev)
Get the current status of the device.
+
vkvg_public void vkvg_get_required_instance_extensions(const char **pExtensions, uint32_t *pExtCount)
query required instance extensions for vkvg.
+
vkvg_public void vkvg_device_set_thread_aware(VkvgDevice dev, uint32_t thread_awayre)
+
vkvg_public void vkvg_device_set_dpy(VkvgDevice dev, int hdpy, int vdpy)
Set the screen dot per inch for this device.
+
vkvg_public void vkvg_matrix_scale(vkvg_matrix_t *matrix, float sx, float sy)
apply scale on matrix
+
vkvg_public vkvg_status_t vkvg_matrix_invert(vkvg_matrix_t *matrix)
invert matrix
+
vkvg_public void vkvg_matrix_transform_distance(const vkvg_matrix_t *matrix, float *dx, float *dy)
transform distances
+
vkvg_public void vkvg_matrix_get_scale(const vkvg_matrix_t *matrix, float *sx, float *sy)
+
vkvg_public void vkvg_matrix_init_identity(vkvg_matrix_t *matrix)
Set matrix to identity.
+
vkvg_public void vkvg_matrix_translate(vkvg_matrix_t *matrix, float tx, float ty)
apply translation on matrix
+
vkvg_public void vkvg_matrix_init_rotate(vkvg_matrix_t *matrix, float radians)
rotation matrix initialization
+
vkvg_public void vkvg_matrix_multiply(vkvg_matrix_t *result, const vkvg_matrix_t *a, const vkvg_matrix_t *b)
matrices multiplication
+
vkvg_public void vkvg_matrix_init_translate(vkvg_matrix_t *matrix, float tx, float ty)
Rotation matrix initialization.
+
vkvg_public void vkvg_matrix_init_scale(vkvg_matrix_t *matrix, float sx, float sy)
scaling matrix initialization
+
vkvg_public void vkvg_matrix_rotate(vkvg_matrix_t *matrix, float radians)
apply rotation on matrix
+
vkvg_public void vkvg_matrix_transform_point(const vkvg_matrix_t *matrix, float *x, float *y)
transform point
+
vkvg_public void vkvg_matrix_init(vkvg_matrix_t *matrix, float xx, float yx, float xy, float yy, float x0, float y0)
Matrix initialization.
+
vkvg_public void vkvg_pattern_get_matrix(VkvgPattern pat, vkvg_matrix_t *matrix)
+
vkvg_public void vkvg_pattern_destroy(VkvgPattern pat)
dispose pattern.
+
vkvg_public VkvgPattern vkvg_pattern_create_radial(float cx0, float cy0, float radius0, float cx1, float cy1, float radius1)
create a new radial gradient.
+
vkvg_public vkvg_status_t vkvg_pattern_get_linear_points(VkvgPattern pat, float *x0, float *y0, float *x1, float *y1)
get the gradient end points for a linear gradient
+
vkvg_public VkvgPattern vkvg_pattern_create_linear(float x0, float y0, float x1, float y1)
create a new linear gradient.
+
vkvg_public vkvg_status_t vkvg_pattern_edit_linear(VkvgPattern pat, float x0, float y0, float x1, float y1)
edit an existing linear gradient.
+
vkvg_public vkvg_filter_t vkvg_pattern_get_filter(VkvgPattern pat)
+
struct _vkvg_pattern_t * VkvgPattern
Opaque pointer on a Vkvg pattern structure.
Definition: vkvg.h:327
+
vkvg_public uint32_t vkvg_pattern_get_reference_count(VkvgPattern pat)
get reference count
+
vkvg_public VkvgPattern vkvg_pattern_reference(VkvgPattern pat)
add reference
+
vkvg_public void vkvg_pattern_set_extend(VkvgPattern pat, vkvg_extend_t extend)
control the extend of the pattern
+
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_rgba(VkvgPattern pat, uint32_t index, float *offset, float *r, float *g, float *b, float *a)
get color stop.
+
vkvg_public VkvgPattern vkvg_pattern_create_for_surface(VkvgSurface surf)
create a surface pattern
+
vkvg_public vkvg_status_t vkvg_pattern_get_color_stop_count(VkvgPattern pat, uint32_t *count)
get color stop count.
+
vkvg_public void vkvg_pattern_set_matrix(VkvgPattern pat, const vkvg_matrix_t *matrix)
+
vkvg_public void vkvg_pattern_set_filter(VkvgPattern pat, vkvg_filter_t filter)
control the filtering when using this pattern on a surface.
+
vkvg_public vkvg_pattern_type_t vkvg_pattern_get_type(VkvgPattern pat)
get pattern type
+
vkvg_public vkvg_status_t vkvg_pattern_edit_radial(VkvgPattern pat, float cx0, float cy0, float radius0, float cx1, float cy1, float radius1)
edit an existing radial gradient.
+
vkvg_public vkvg_status_t vkvg_pattern_add_color_stop(VkvgPattern pat, float offset, float r, float g, float b, float a)
add colors to gradients
+
vkvg_public vkvg_extend_t vkvg_pattern_get_extend(VkvgPattern pat)
query the current extend value for a pa
+
vkvg_public uint32_t vkvg_surface_get_height(VkvgSurface surf)
Get the actual surface height.
+
vkvg_public void vkvg_surface_destroy(VkvgSurface surf)
Decrement the reference count on the surface by one. Destroy it if count reach 0.
+
vkvg_public VkvgSurface vkvg_surface_create_from_image(VkvgDevice dev, const char *filePath)
Create a new vkvg surface by loading an image file. The resulting surface will have the same dimensio...
+
vkvg_public VkvgSurface vkvg_surface_reference(VkvgSurface surf)
Increment reference count on the surface by one.
+
vkvg_public VkFormat vkvg_surface_get_vk_format(VkvgSurface surf)
Get the vulkan format of the vulkan texture used as backend for this surface.
+
vkvg_public VkImage vkvg_surface_get_vk_image(VkvgSurface surf)
Get the final single sampled vulkan image of this surface.
+
vkvg_public vkvg_status_t vkvg_surface_write_to_png(VkvgSurface surf, const char *path)
Write surface content to a png file on disk.
+
vkvg_public uint32_t vkvg_surface_get_width(VkvgSurface surf)
Get the actual surface width.
+
vkvg_public void vkvg_multisample_surface_resolve(VkvgSurface surf)
Explicitly resolve a multisampled surface.
+
vkvg_public uint32_t vkvg_surface_get_reference_count(VkvgSurface surf)
Get the current reference count on this surface.
+
vkvg_public VkvgSurface vkvg_surface_create_for_VkhImage(VkvgDevice dev, void *vkhImg)
Create a new vkvg surface using an existing vulkan texture as backend.
+
vkvg_public vkvg_status_t vkvg_surface_write_to_memory(VkvgSurface surf, unsigned char *const bitmap)
Save surface to memory.
+
vkvg_public vkvg_status_t vkvg_surface_status(VkvgSurface surf)
Query the current status of the surface.
+
vkvg_public VkvgSurface vkvg_surface_create(VkvgDevice dev, uint32_t width, uint32_t height)
Create a new vkvg surface.
+
vkvg_public void vkvg_surface_clear(VkvgSurface surf)
Clear the surface content, alpha is also set to 0 resulting in a transparent image.
+
struct _vkvg_surface_t * VkvgSurface
Opaque pointer on a Vkvg Surface structure.
Definition: vkvg.h:312
+
float r
Definition: vkvg.h:226
+
float a
Definition: vkvg.h:229
+
float b
Definition: vkvg.h:228
+
float g
Definition: vkvg.h:227
+ + + + +
float max_y_advance
Definition: vkvg.h:243
+
float max_x_advance
Definition: vkvg.h:242
+
font metrics
Definition: vkvg.h:238
+
int32_t x_offset
Definition: vkvg.h:269
+
int32_t y_offset
Definition: vkvg.h:270
+
uint32_t codepoint
Definition: vkvg.h:272
+
int32_t y_advance
Definition: vkvg.h:268
+
int32_t x_advance
Definition: vkvg.h:267
+
glyphs position in a VkvgText
Definition: vkvg.h:266
+
float x0
Definition: vkvg.h:377
+
float xy
Definition: vkvg.h:376
+
float xx
Definition: vkvg.h:375
+
vkvg matrix structure
Definition: vkvg.h:374
+
float y_advance
Definition: vkvg.h:257
+
float x_bearing
Definition: vkvg.h:252
+ +
float y_bearing
Definition: vkvg.h:253
+ +
float x_advance
Definition: vkvg.h:256
+
text metrics
Definition: vkvg.h:251
+
vkvg_status_t
vkvg operation status.
Definition: vkvg.h:120
+
@ VKVG_STATUS_PATTERN_INVALID_GRADIENT
Definition: vkvg.h:131
+
@ VKVG_STATUS_INVALID_RECT
Definition: vkvg.h:135
+
@ VKVG_STATUS_PATTERN_TYPE_MISMATCH
Definition: vkvg.h:130
+
@ VKVG_STATUS_INVALID_INDEX
Definition: vkvg.h:127
+
@ VKVG_STATUS_NULL_POINTER
Definition: vkvg.h:128
+
@ VKVG_STATUS_DEVICE_ERROR
Definition: vkvg.h:137
+
@ VKVG_STATUS_INVALID_SURFACE
Definition: vkvg.h:139
+
@ VKVG_STATUS_TIMEOUT
Definition: vkvg.h:136
+
@ VKVG_STATUS_INVALID_MATRIX
Definition: vkvg.h:125
+
@ VKVG_STATUS_INVALID_IMAGE
Definition: vkvg.h:138
+
@ VKVG_STATUS_INVALID_FORMAT
Definition: vkvg.h:132
+
@ VKVG_STATUS_INVALID_FONT
Definition: vkvg.h:140
+
@ VKVG_STATUS_WRITE_ERROR
Definition: vkvg.h:129
+
@ VKVG_STATUS_INVALID_DASH
Definition: vkvg.h:134
+
@ VKVG_STATUS_INVALID_RESTORE
Definition: vkvg.h:123
+
@ VKVG_STATUS_NO_MEMORY
Definition: vkvg.h:122
+
@ VKVG_STATUS_SUCCESS
Definition: vkvg.h:121
+
@ VKVG_STATUS_FILE_NOT_FOUND
Definition: vkvg.h:133
+
@ VKVG_STATUS_NO_CURRENT_POINT
Definition: vkvg.h:124
+
@ VKVG_STATUS_INVALID_STATUS
Definition: vkvg.h:126
+
vkvg_public void vkvg_set_source_color_name(VkvgContext ctx, const char *color)
+
vkvg_pattern_type_t
pattern types
Definition: vkvg.h:182
+
@ VKVG_PATTERN_TYPE_LINEAR
Definition: vkvg.h:185
+
@ VKVG_PATTERN_TYPE_SURFACE
Definition: vkvg.h:184
+
@ VKVG_PATTERN_TYPE_MESH
Definition: vkvg.h:187
+
@ VKVG_PATTERN_TYPE_RADIAL
Definition: vkvg.h:186
+
@ VKVG_PATTERN_TYPE_RASTER_SOURCE
Definition: vkvg.h:188
+
@ VKVG_PATTERN_TYPE_SOLID
Definition: vkvg.h:183
+
vkvg_direction_t
Definition: vkvg.h:143
+
@ VKVG_VERTICAL
Definition: vkvg.h:145
+
@ VKVG_HORIZONTAL
Definition: vkvg.h:144
+
vkvg_operator_t
compositing operators
Definition: vkvg.h:828
+
@ VKVG_OPERATOR_OVER
Definition: vkvg.h:832
+
@ VKVG_OPERATOR_MAX
Definition: vkvg.h:862
+
@ VKVG_OPERATOR_CLEAR
Definition: vkvg.h:829
+
@ VKVG_OPERATOR_DIFFERENCE
Definition: vkvg.h:856
+
@ VKVG_OPERATOR_SOURCE
Definition: vkvg.h:831
+
struct _vkvg_text_run_t * VkvgText
Opaque pointer on a vkvg text run.
Definition: vkvg.h:288
+
vkvg_line_join_t
lines articulations
Definition: vkvg.h:208
+
@ VKVG_LINE_JOIN_ROUND
Definition: vkvg.h:210
+
@ VKVG_LINE_JOIN_BEVEL
Definition: vkvg.h:211
+
@ VKVG_LINE_JOIN_MITER
Definition: vkvg.h:209
+
vkvg_fill_rule_t
shape fill method
Definition: vkvg.h:220
+
@ VKVG_FILL_RULE_NON_ZERO
Definition: vkvg.h:222
+
@ VKVG_FILL_RULE_EVEN_ODD
Definition: vkvg.h:221
+
vkvg_extend_t
pattern border policy
Definition: vkvg.h:160
+
@ VKVG_EXTEND_NONE
Definition: vkvg.h:161
+
@ VKVG_EXTEND_PAD
Definition: vkvg.h:164
+
@ VKVG_EXTEND_REPEAT
Definition: vkvg.h:162
+
@ VKVG_EXTEND_REFLECT
Definition: vkvg.h:163
+
#define vkvg_public
Definition: vkvg.h:78
+
vkvg_format_t
Definition: vkvg.h:148
+
@ VKVG_FORMAT_A8
Definition: vkvg.h:151
+
@ VKVG_FORMAT_A1
Definition: vkvg.h:152
+
@ VKVG_FORMAT_ARGB32
Definition: vkvg.h:149
+
@ VKVG_FORMAT_RGB24
Definition: vkvg.h:150
+
vkvg_filter_t
Definition: vkvg.h:168
+
@ VKVG_FILTER_BEST
Definition: vkvg.h:171
+
@ VKVG_FILTER_FAST
Definition: vkvg.h:169
+
@ VKVG_FILTER_GAUSSIAN
Definition: vkvg.h:174
+
@ VKVG_FILTER_NEAREST
Definition: vkvg.h:172
+
@ VKVG_FILTER_GOOD
Definition: vkvg.h:170
+
@ VKVG_FILTER_BILINEAR
Definition: vkvg.h:173
+
vkvg_line_cap_t
line caps
Definition: vkvg.h:197
+
@ VKVG_LINE_CAP_SQUARE
Definition: vkvg.h:200
+
@ VKVG_LINE_CAP_ROUND
Definition: vkvg.h:199
+
@ VKVG_LINE_CAP_BUTT
Definition: vkvg.h:198
+
+ + + + +