Change Implementation->Drivers
Feedback from Khronos was that "Implementation" was for the entire set of Vulkan components underlying the application (including the loader, layers, and drivers). Instead, what I had been calling implementation should be called "Driver" including software implementations of Vulkan at that level. Also update the LOADER_DEBUG option "implem" to take "driver" as well. All images also updated.
@ -123,7 +123,7 @@ versus the call chain of a device functions.
|
||||
Remember, a [Vulkan instance is a high-level construct used to provide Vulkan
|
||||
system-level information](LoaderInterfaceArchitecture.md#instance-specific).
|
||||
Because of this, instance functions need to be broadcast to every available
|
||||
implementation on the system.
|
||||
driver on the system.
|
||||
The following diagram shows an approximate view of an instance call chain with
|
||||
three enabled layers:
|
||||
|
||||
@ -132,10 +132,10 @@ three enabled layers:
|
||||
This is also how a Vulkan device function call chain looks if queried
|
||||
using `vkGetInstanceProcAddr`.
|
||||
On the other hand, a device function doesn't need to worry about the broadcast
|
||||
because it knows specifically which associated implementation and which
|
||||
associated physical device the call should terminate at.
|
||||
because it knows specifically which associated driver and which associated
|
||||
physical device the call should terminate at.
|
||||
Because of this, the loader doesn't need to get involved between any enabled
|
||||
layers and the implementation.
|
||||
layers and the driver.
|
||||
Thus, using a loader-exported Vulkan device function, the call chain
|
||||
in the same scenario as above would look like:
|
||||
|
||||
@ -149,7 +149,7 @@ most scenarios:
|
||||
![Application Device Call Chain](./images/loader_device_chain_app.png)
|
||||
|
||||
Also, notice if no layers are enabled, the application function pointers point
|
||||
**directly to the implementation**.
|
||||
**directly to the driver**.
|
||||
With many function calls, the lack of indirection in each adds up to non-trivial
|
||||
performance savings.
|
||||
|
||||
@ -162,8 +162,8 @@ instance call chain.
|
||||
One example of a device function requiring a *terminator* is
|
||||
`vkCreateSwapchainKHR`.
|
||||
For that function, the loader needs to potentially convert the KHR_surface
|
||||
object into an implementation-specific KHR_surface object prior to passing down
|
||||
the rest of the function's information to the implementation.
|
||||
object into an driver-specific KHR_surface object prior to passing down the rest
|
||||
of the function's information to the driver.
|
||||
|
||||
Remember:
|
||||
* `vkGetInstanceProcAddr` is used to query instance and physical device
|
||||
@ -220,7 +220,7 @@ currently named `libvulkan.1.dylib`.
|
||||
|
||||
## Application Layer Usage
|
||||
|
||||
Applications desiring Vulkan functionality beyond what Vulkan implementations
|
||||
Applications desiring Vulkan functionality beyond what Vulkan drivers
|
||||
on their system already expose, may use various layers to augment the API.
|
||||
A layer cannot add new Vulkan core API entry-points that are not exposed in
|
||||
Vulkan.h.
|
||||
@ -518,12 +518,12 @@ make to function.
|
||||
|
||||
## Application Usage of Extensions
|
||||
|
||||
Extensions are optional functionality provided by a layer, the loader, or an
|
||||
implementation.
|
||||
Extensions are optional functionality provided by a layer, the loader, or a
|
||||
driver.
|
||||
Extensions can modify the behavior of the Vulkan API and need to be specified
|
||||
and registered with Khronos.
|
||||
These extensions can be implemented by a Vulkan implementation, the loader, or a
|
||||
layer to expose functionality not available in the core API.
|
||||
These extensions can be implemented by a Vulkan driver, the loader, or a layer
|
||||
to expose functionality not available in the core API.
|
||||
Information about various extensions can be found in the Vulkan Spec, and
|
||||
vulkan.h header file.
|
||||
|
||||
@ -550,7 +550,7 @@ extensions are enabled with `vkCreateDevice`.
|
||||
When calling `vkEnumerateInstanceExtensionProperties` and
|
||||
`vkEnumerateDeviceExtensionProperties`, the loader discovers and aggregates all
|
||||
extensions of their respective type from layers (both explicit and implicit),
|
||||
implementations, and the loader before reporting them to the application.
|
||||
drivers, and the loader before reporting them to the application.
|
||||
|
||||
Looking at `vulkan.h`, both functions are very similar,
|
||||
for example, the `vkEnumerateInstanceExtensionProperties` prototype looks as
|
||||
@ -578,17 +578,16 @@ VkResult
|
||||
The "pLayerName" parameter in these functions is used to select either a single
|
||||
layer or the Vulkan platform implementation.
|
||||
If "pLayerName" is NULL, extensions from Vulkan implementation components
|
||||
(including loader, implicit layers, and implementations) are enumerated.
|
||||
(including loader, implicit layers, and drivers) are enumerated.
|
||||
If "pLayerName" is equal to a discovered layer module name then only extensions
|
||||
from that layer (which may be implicit or explicit) are enumerated.
|
||||
|
||||
**Note:** While device layers are deprecated, the instance enabled layers are
|
||||
still present in the device call-chain.
|
||||
|
||||
Duplicate extensions (e.g. an implicit layer and implementation might report
|
||||
support for the same extension) are eliminated by the loader.
|
||||
For duplicates, the implementation version is reported and the layer version is
|
||||
culled.
|
||||
Duplicate extensions (e.g. an implicit layer and driver might report support for
|
||||
the same extension) are eliminated by the loader.
|
||||
For duplicates, the driver version is reported and the layer version is culled.
|
||||
|
||||
Also, extensions **must be enabled** (in `vkCreateInstance` or `vkCreateDevice`)
|
||||
before the functions associated with the extensions can be used.
|
||||
@ -646,7 +645,7 @@ With the ability to expand Vulkan so easily, extensions will be created that
|
||||
the loader knows nothing about.
|
||||
If the extension is a device extension, the loader will pass the unknown
|
||||
entry-point down the device call chain ending with the appropriate
|
||||
implementation entry-points.
|
||||
driver entry-points.
|
||||
The same thing will happen if the extension is an instance extension which
|
||||
takes a physical device parameter as its first component.
|
||||
However, for all other instance extensions the loader will fail to load it.
|
||||
@ -658,19 +657,19 @@ Let's look again at the instance call chain:
|
||||
![Instance call chain](./images/loader_instance_chain.png)
|
||||
|
||||
Notice that for a normal instance function call, the loader has to handle
|
||||
passing along the function call to the available implementations.
|
||||
passing along the function call to the available drivers.
|
||||
If the loader has no idea of the parameters or return value of the instance
|
||||
call, it can't properly pass information along to the implementations.
|
||||
call, it can't properly pass information along to the drivers.
|
||||
There may be ways to do this, which will be explored in the future.
|
||||
However, for now, the loader does not support instance extensions which don't
|
||||
expose entry points that take a physical device as their first parameter.
|
||||
|
||||
Because the device call-chain does not normally pass through the loader
|
||||
*terminator*, this is not a problem for device extensions.
|
||||
Additionally, since a physical device is associated with one implementation, we
|
||||
can use a generic *terminator* pointing to one implementation.
|
||||
Additionally, since a physical device is associated with one driver, the loader
|
||||
can use a generic *terminator* pointing to one driver.
|
||||
This is because both of these extensions terminate directly in the
|
||||
implementation they are associated with.
|
||||
driver they are associated with.
|
||||
|
||||
*Is this a big problem?*
|
||||
<br/>
|
||||
@ -682,8 +681,8 @@ loader support.
|
||||
|
||||
### Filtering Out Unknown Instance Extension Names
|
||||
|
||||
In some cases, an implementation may support instance extensions that are not
|
||||
supported by the loader.
|
||||
In some cases, a driver may support instance extensions that are not supported
|
||||
by the loader.
|
||||
For the above reasons, the loader will filter out the names of these unknown
|
||||
instance extensions when an application calls
|
||||
`vkEnumerateInstanceExtensionProperties`.
|
||||
|
@ -16,7 +16,7 @@
|
||||
* [Who Should Read This Document](#who-should-read-this-document)
|
||||
* [The Loader](#the-loader)
|
||||
* [Layers](#layers)
|
||||
* [Implementations](#implementations)
|
||||
* [Drivers](#drivers)
|
||||
* [VkConfig](#vkconfig)
|
||||
|
||||
* [Important Vulkan Concepts](#important-vulkan-concepts)
|
||||
@ -27,7 +27,7 @@
|
||||
|
||||
* [Application Interface to the Loader](#application-interface-to-the-loader)
|
||||
* [Layer Interface with the Loader](#layer-interface-with-the-loader)
|
||||
* [Implementation Interface with the Loader](#implementation-interface-with-the-loader)
|
||||
* [Driver Interface with the Loader](#driver-interface-with-the-loader)
|
||||
|
||||
* [Table of Debug Environment Variables](#table-of-debug-environment-variables)
|
||||
* [Glossary of Terms](#glossary-of-terms)
|
||||
@ -38,7 +38,7 @@ Vulkan is a layered architecture, made up of the following elements:
|
||||
* The Vulkan Application
|
||||
* [The Vulkan Loader](#the-loader)
|
||||
* [Vulkan Layers](#layers)
|
||||
* [Implementations](#implementations)
|
||||
* [Drivers](#drivers)
|
||||
* [VkConfig](#vkconfig)
|
||||
|
||||
![High Level View of Loader](./images/high_level_loader.png)
|
||||
@ -58,21 +58,21 @@ wanting a better understanding of the Vulkan runtime.
|
||||
|
||||
The application sits at the top and interfaces directly with the Vulkan
|
||||
loader.
|
||||
At the bottom of the stack sits the implementations.
|
||||
An implementation can control one or more physical devices capable of rendering
|
||||
Vulkan, implement a conversion from Vulkan into a native graphics API (like
|
||||
At the bottom of the stack sits the drivers.
|
||||
A driver can control one or more physical devices capable of rendering Vulkan,
|
||||
implement a conversion from Vulkan into a native graphics API (like
|
||||
[MoltenVk](https://github.com/KhronosGroup/MoltenVK], or implement a fully
|
||||
software path that can be executed on a CPU to simulate a Vulkan device (like
|
||||
[SwiftShader](https://github.com/google/swiftshader) or LavaPipe).
|
||||
Remember, Vulkan-capable hardware may be graphics-based, compute-based, or
|
||||
both.
|
||||
Between the application and the implementations the loader can inject any
|
||||
number of optional [layers](#layers) that provide special functionality.
|
||||
Between the application and the drivers, the loader can inject any number of
|
||||
optional [layers](#layers) that provide special functionality.
|
||||
The loader is critical to managing the proper dispatching of Vulkan
|
||||
functions to the appropriate set of layers and implementations.
|
||||
functions to the appropriate set of layers and drivers.
|
||||
The Vulkan object model allows the loader to insert layers into a call-chain
|
||||
so that the layers can process Vulkan functions prior to the implementation
|
||||
being called.
|
||||
so that the layers can process Vulkan functions prior to the driver being
|
||||
called.
|
||||
|
||||
This document is intended to provide an overview of the necessary interfaces
|
||||
between each of these.
|
||||
@ -81,8 +81,8 @@ between each of these.
|
||||
#### Goals of the Loader
|
||||
|
||||
The loader was designed with the following goals in mind:
|
||||
1. Support one or more Vulkan-capable implementations on a user's system
|
||||
without them interfering with one another.
|
||||
1. Support one or more Vulkan-capable drivers on a user's system without them
|
||||
interfering with one another.
|
||||
2. Support Vulkan Layers which are optional modules that can be enabled by an
|
||||
application, developer, or standard system settings.
|
||||
3. Keep the overall overhead of the loader to the minimum possible.
|
||||
@ -92,14 +92,14 @@ application, developer, or standard system settings.
|
||||
|
||||
Layers are optional components that augment the Vulkan development environment.
|
||||
They can intercept, evaluate, and modify existing Vulkan functions on their
|
||||
way from the application down to the implementations and back up.
|
||||
way from the application down to the drivers and back up.
|
||||
Layers are implemented as libraries that can be enabled in different ways
|
||||
and are loaded during CreateInstance.
|
||||
Each layer can choose to hook, or intercept, Vulkan functions which in
|
||||
turn can be ignored, inspected, or augmented.
|
||||
Any function a layer does not hook is simply skipped for that layer and the
|
||||
control flow will simply continue on to the next supporting layer or
|
||||
implementation.
|
||||
driver.
|
||||
Because of this, a layer can choose whether to intercept all known Vulkan
|
||||
functions or only a subset it is interested in.
|
||||
|
||||
@ -118,18 +118,16 @@ But when releasing the application, those layers are unnecessary
|
||||
and thus won't be enabled, increasing the speed of the application.
|
||||
|
||||
|
||||
### Implementations
|
||||
### Drivers
|
||||
|
||||
The library that implements Vulkan, either through supporting a physical
|
||||
hardware device directly, converting Vulkan commands into native graphics
|
||||
commands, or simulating Vulkan through software, is considered
|
||||
"an implementation".
|
||||
The most common type of implementation is still the Installable Client Driver
|
||||
(or ICD).
|
||||
The loader is responsible for discovering available Vulkan implementations on
|
||||
the system.
|
||||
Given a list of available implementations, the loader can enumerate all the
|
||||
available physical devices and provide this information for an application.
|
||||
commands, or simulating Vulkan through software, is considered "a driver".
|
||||
The most common type of driver is still the Installable Client Driver (or ICD).
|
||||
The loader is responsible for discovering available Vulkan drivers on the
|
||||
system.
|
||||
Given a list of available drivers, the loader can enumerate all the available
|
||||
physical devices and provide this information for an application.
|
||||
|
||||
|
||||
#### Installable Client Drivers
|
||||
@ -137,7 +135,7 @@ available physical devices and provide this information for an application.
|
||||
Vulkan allows multiple ICDs each supporting one or more devices.
|
||||
Each of these devices is represented by a Vulkan `VkPhysicalDevice` object.
|
||||
The loader is responsible for discovering available Vulkan ICDs via the standard
|
||||
implementation search on the system.
|
||||
driver search on the system.
|
||||
|
||||
|
||||
### VkConfig
|
||||
@ -281,7 +279,7 @@ These will be discussed in more detail later.
|
||||
|
||||
A Vulkan device (`VkDevice`), on the other-hand, is a logical identifier used
|
||||
to associate functions with a particular Vulkan physical device
|
||||
(`VkPhysicalDevice`) through a particular implementation on a user's system.
|
||||
(`VkPhysicalDevice`) through a particular driver on a user's system.
|
||||
|
||||
##### Device Objects
|
||||
|
||||
@ -358,7 +356,7 @@ These *trampoline* functions are small, simple functions that jump to the
|
||||
appropriate dispatch table entry for the object they are given.
|
||||
Additionally, for functions in the instance call chain, the loader has an
|
||||
additional function, called a *terminator*, which is called after all enabled
|
||||
layers to marshall the appropriate information to all available implementations.
|
||||
layers to marshall the appropriate information to all available drivers.
|
||||
|
||||
|
||||
#### Instance Call Chain Example
|
||||
@ -368,7 +366,7 @@ For example, the diagram below represents what happens in the call chain for
|
||||
After initializing the chain, the loader calls into the first layer's
|
||||
`vkCreateInstance`, which will call the next layer's `vkCreateInstance
|
||||
before finally terminating in the loader again where it will call
|
||||
every implementation's `vkCreateInstance`.
|
||||
every driver's `vkCreateInstance`.
|
||||
This allows every enabled layer in the chain to set up what it needs based on
|
||||
the `VkInstanceCreateInfo` structure from the application.
|
||||
|
||||
@ -377,7 +375,7 @@ the `VkInstanceCreateInfo` structure from the application.
|
||||
This also highlights some of the complexity the loader must manage when using
|
||||
instance call chains.
|
||||
As shown here, the loader's *terminator* must aggregate information to and from
|
||||
multiple implementations when they are present.
|
||||
multiple drivers when they are present.
|
||||
This implies that the loader has to be aware of any instance-level extensions
|
||||
which work on a `VkInstance` to aggregate them correctly.
|
||||
|
||||
@ -386,8 +384,8 @@ which work on a `VkInstance` to aggregate them correctly.
|
||||
|
||||
Device call chains are created in `vkCreateDevice` and are generally simpler
|
||||
because they deal with only a single device.
|
||||
This allows for the specific implementation exposing this device to always be
|
||||
the *terminator* of the chain.
|
||||
This allows for the specific driver exposing this device to always be the
|
||||
*terminator* of the chain.
|
||||
|
||||
![Loader Device Call Chain](./images/loader_device_chain_loader.png)
|
||||
<br/>
|
||||
@ -416,7 +414,7 @@ These behaviors also result in ignoring certain environment variables, such as:
|
||||
|
||||
For more information on the affected search paths, refer to
|
||||
[Layer Discovery](LoaderLayerInterface.md#layer-discovery) and
|
||||
[Implementation Discovery](LoaderImplementationInterface.md#implementation-discovery).
|
||||
[Driver Discovery](LoadeDriverInterface.md#driver-discovery).
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
@ -439,11 +437,11 @@ directory as this file.
|
||||
<br/>
|
||||
|
||||
|
||||
## Implementation Interface With the Loader
|
||||
## Driver Interface With the Loader
|
||||
|
||||
The Implementation interface to the Vulkan loader is detailed in the
|
||||
[LoaderImplementationInterface.md](LoaderImplementationInterface.md) document
|
||||
found in the same directory as this file.
|
||||
The Driver interface to the Vulkan loader is detailed in the
|
||||
[LoadeDriverInterface.md](LoadeDriverInterface.md) document found in the same
|
||||
directory as this file.
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
@ -465,7 +463,7 @@ discovery.
|
||||
<td><small><i>VK_ICD_FILENAMES</i></small></td>
|
||||
<td>Force the loader to use the specific ICD JSON files.
|
||||
The value contains a list of delimited full path listings to
|
||||
implementation JSON Manifest files.<br/>
|
||||
driver JSON Manifest files.<br/>
|
||||
<b>NOTE:</b> If a global path to the JSON file is not used, issues
|
||||
may be encountered.<br/>
|
||||
<b>Ignored when running Vulkan application in executing with
|
||||
@ -522,7 +520,7 @@ discovery.
|
||||
<td>Disable the filtering out of instance extensions that the loader doesn't
|
||||
know about.
|
||||
This will allow applications to enable instance extensions exposed by
|
||||
implementations but that the loader has no support for.<br/>
|
||||
drivers but that the loader has no support for.<br/>
|
||||
<b>NOTE:</b> This may cause the loader or application to crash.</td>
|
||||
<td><small>export<br/>
|
||||
VK_LOADER_DISABLE_INST_EXT_FILTER=1<br/><br/>
|
||||
@ -539,7 +537,7 @@ discovery.
|
||||
* info (only info)<br/>
|
||||
* debug (only debug)<br/>
|
||||
* layer (layer-specific output)<br/>
|
||||
* implement (implementation-specific output)<br/>
|
||||
* driver (driver-specific output)<br/>
|
||||
* all (report out all messages)<br/><br/>
|
||||
To enable multiple options (outside of "all") like info, warning and
|
||||
error messages, set the value to "error,warn,info".
|
||||
@ -590,8 +588,8 @@ discovery.
|
||||
<td>The call chain of functions followed for device functions.
|
||||
This call chain for a device function is usually as follows: first the
|
||||
application calls into a loader trampoline, then the loader trampoline
|
||||
calls enabled layers, and the final layer calls into the implementation
|
||||
specific to the device. <br/>
|
||||
calls enabled layers, and the final layer calls into the driver specific
|
||||
to the device. <br/>
|
||||
See the
|
||||
<a href="#dispatch-tables-and-call-chains">Dispatch Tables and Call
|
||||
Chains</a> section for more information.
|
||||
@ -612,8 +610,8 @@ discovery.
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Discovery</td>
|
||||
<td>The process of the loader searching for implementation and layer files
|
||||
to set up the internal list of Vulkan objects available.<br/>
|
||||
<td>The process of the loader searching for driver and layer files to set up
|
||||
the internal list of Vulkan objects available.<br/>
|
||||
On <i>Windows/Linux/macOS</i>, the discovery process typically focuses on
|
||||
searching for Manifest files.<br/>
|
||||
On <i>Android</i>, the process focuses on searching for library files.
|
||||
@ -623,11 +621,19 @@ discovery.
|
||||
<td>Dispatch Table</td>
|
||||
<td>An array of function pointers (including core and possibly extension
|
||||
functions) used to step to the next entity in a call chain.
|
||||
The entity could be the loader, a layer or an implementation.<br/>
|
||||
The entity could be the loader, a layer or a driver.<br/>
|
||||
See <a href="#dispatch-tables-and-call-chains">Dispatch Tables and Call
|
||||
Chains</a> for more information.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Driver</td>
|
||||
<td>The underlying library which provides support for the Vulkan API.
|
||||
This support can be implemented as either an ICD, API translation
|
||||
library, or pure software.<br/>
|
||||
See <a href="#drivers">Drivers</a> section for more information.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Extension</td>
|
||||
<td>A concept of Vulkan used to expand the core Vulkan functionality.
|
||||
@ -664,7 +670,7 @@ discovery.
|
||||
<td>Acronym for "Installable Client Driver".
|
||||
These are drivers that are provided by IHVs to interact with the
|
||||
hardware they provide. <br/>
|
||||
These are the most common type of Vulkan implementations. <br/>
|
||||
These are the most common type of Vulkan drivers. <br/>
|
||||
See <a href="#installable-client-drivers">Installable Client Drivers</a>
|
||||
section for more information.
|
||||
</td>
|
||||
@ -678,15 +684,6 @@ discovery.
|
||||
AMD, ARM, Imagination, Intel, Nvidia, Qualcomm
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Implementation</td>
|
||||
<td>The underlying library which provides support for the Vulkan API.
|
||||
This support can be implemented as either an ICD, API translation
|
||||
library, or pure software.<br/>
|
||||
See <a href="#implementations">Implementations</a> section for more
|
||||
information.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Instance Call Chain</td>
|
||||
<td>The call chain of functions followed for instance functions.
|
||||
@ -694,7 +691,7 @@ discovery.
|
||||
the application calls into a loader trampoline, then the loader
|
||||
trampoline calls enabled layers, the final layer calls a loader
|
||||
terminator, and the loader terminator calls all available
|
||||
implementations. <br/>
|
||||
drivers. <br/>
|
||||
See the <a href="#dispatch-tables-and-call-chains">Dispatch Tables and
|
||||
Call Chains</a> section for more information.
|
||||
</td>
|
||||
@ -717,7 +714,7 @@ discovery.
|
||||
<td>Layer</td>
|
||||
<td>Layers are optional components that augment the Vulkan system.
|
||||
They can intercept, evaluate, and modify existing Vulkan functions on
|
||||
their way from the application down to the implementation.<br/>
|
||||
their way from the application down to the driver.<br/>
|
||||
See the <a href="#layers">Layers</a> section for more information.
|
||||
</td>
|
||||
</tr>
|
||||
@ -736,7 +733,7 @@ discovery.
|
||||
<tr>
|
||||
<td>Loader</td>
|
||||
<td>The middleware program which acts as the mediator between Vulkan
|
||||
applications, Vulkan layers, and Vulkan implementations.<br/>
|
||||
applications, Vulkan layers, and Vulkan drivers.<br/>
|
||||
See <a href="#the-loader">The Loader</a> section for more information.
|
||||
</td>
|
||||
</tr>
|
||||
@ -745,19 +742,19 @@ discovery.
|
||||
<td>Data files in JSON format used by the desktop loader.
|
||||
These files contain specific information for either a
|
||||
<a href="LoaderLayerInterface.md#layer-manifest-file-format">Layer</a>
|
||||
or an
|
||||
<a href="LoaderImplementationInterface.md#icd-manifest-file-format">Implementation</a>
|
||||
or a
|
||||
<a href="LoaderDriverInterface.md#icd-manifest-file-format">Driver</a>
|
||||
and define necessary information such as where to find files and default
|
||||
settings.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Terminator Function</td>
|
||||
<td>The last function in the instance call chain above the implementation
|
||||
and owned by the loader.
|
||||
<td>The last function in the instance call chain above the driver and owned
|
||||
by the loader.
|
||||
This function is required in the instance call chain because all
|
||||
instance functionality must be communicated to all implementations
|
||||
capable of receiving the call. <br/>
|
||||
instance functionality must be communicated to all drivers capable of
|
||||
receiving the call. <br/>
|
||||
See <a href="#dispatch-tables-and-call-chains">Dispatch Tables and Call
|
||||
Chains</a> for more information.
|
||||
</td>
|
||||
|
@ -261,16 +261,16 @@ variable is not defined:
|
||||
<td>2</td>
|
||||
<td>SYSCONFDIR</td>
|
||||
<td>/etc</td>
|
||||
<td>Compile-time option set to possible location of implementations
|
||||
installed from non-Linux-distribution-provided packages.
|
||||
<td>Compile-time option set to possible location of layers installed from
|
||||
non-Linux-distribution-provided packages.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3</td>
|
||||
<td>EXTRASYSCONFDIR</td>
|
||||
<td>/etc</td>
|
||||
<td>Compile-time option set to possible location of implementations
|
||||
installed from non-Linux-distribution-provided packages.
|
||||
<td>Compile-time option set to possible location of layers installed from
|
||||
non-Linux-distribution-provided packages.
|
||||
Typically only set if SYSCONFDIR is set to something other than /etc
|
||||
</td>
|
||||
</tr>
|
||||
@ -566,8 +566,7 @@ result in the following behavior:
|
||||
- If it returned non-NULL, treat it as an unknown logical device command.
|
||||
- This meant setting up a generic trampoline function that takes in a
|
||||
VkDevice as the first parameter and adjusting the dispatch table to call the
|
||||
Implementation/Layers function after getting the dispatch table from the
|
||||
VkDevice.
|
||||
Driver/Layer's function after getting the dispatch table from the `VkDevice`.
|
||||
4. If all the above failed, the loader would return NULL to the application.
|
||||
|
||||
This caused problems when a layer attempted to expose new physical device
|
||||
@ -634,16 +633,15 @@ The new behavior of the loader's `vkGetInstanceProcAddr` with support for the
|
||||
- If it is, return the function pointer
|
||||
2. Check if known instance or device extension function:
|
||||
- If it is, return the function pointer
|
||||
3. Call the layer/implementation `GetPhysicalDeviceProcAddr`
|
||||
3. Call the layer/driver `GetPhysicalDeviceProcAddr`
|
||||
- If it returns non-NULL, return a trampoline to a generic physical device
|
||||
function, and set up a generic terminator which will pass it to the proper
|
||||
implementation.
|
||||
driver.
|
||||
4. Call down using `GetInstanceProcAddr`
|
||||
- If it returns non-NULL, treat it as an unknown logical device command.
|
||||
This means setting up a generic trampoline function that takes in a VkDevice as
|
||||
This means setting up a generic trampoline function that takes in a `VkDevice` as
|
||||
the first parameter and adjusting the dispatch table to call the
|
||||
implementation/layer's function after getting the dispatch table from the
|
||||
VkDevice.
|
||||
driver/layer's function after getting the dispatch table from the `VkDevice`.
|
||||
Then, return the pointer to corresponding trampoline function.
|
||||
5. Return NULL
|
||||
|
||||
@ -673,7 +671,7 @@ corresponding Vulkan function in the next entity.
|
||||
behavior, then pass it down to the next entity.
|
||||
* If a layer doesn't pass the information down, undefined behavior may occur.
|
||||
* This is because the function will not be received by layers further
|
||||
down the chain, or any implementations.
|
||||
down the chain, or any drivers.
|
||||
* One function that **must never call down the chain** is:
|
||||
* `vkNegotiateLoaderLayerInterfaceVersion`
|
||||
* Three common functions that **may not call down the chain** are:
|
||||
@ -720,8 +718,8 @@ non-intercepted) functions.
|
||||
|
||||
## Layer Conventions and Rules
|
||||
|
||||
A layer, when inserted into an otherwise compliant Vulkan implementation,
|
||||
<b>must</b> still result in a compliant Vulkan implementation.
|
||||
A layer, when inserted into an otherwise compliant Vulkan driver, <b>must</b>
|
||||
still result in a compliant Vulkan driver.
|
||||
The intention is for layers to have a well-defined baseline behavior.
|
||||
Therefore, it must follow some conventions and rules defined below.
|
||||
|
||||
@ -1167,7 +1165,7 @@ For functions that return object handles, each layer does not touch the value
|
||||
passed down the call chain.
|
||||
This is because lower items may need to use the original value.
|
||||
However, when the value is returned from a lower-level layer (possibly the
|
||||
implementation), the layer saves the handle and returns its own handle to the
|
||||
driver), the layer saves the handle and returns its own handle to the
|
||||
layer above it (possibly the application).
|
||||
When a layer receives a Vulkan function using something that it previously
|
||||
returned a handle for, the layer is required to unwrap the handle and pass
|
||||
@ -1209,8 +1207,8 @@ If a new extension is created which has functions that take `VkImage` objects
|
||||
as parameters, and if the layer does not support those new functions, an
|
||||
application that uses both the layer and the new extension will have undefined
|
||||
behavior when those new functions are called (e.g. the application may crash).
|
||||
This is because the lower-level layers and implementations won't receive the
|
||||
handle that they generated.
|
||||
This is because the lower-level layers and drivers won't receive the handle that
|
||||
they generated.
|
||||
Instead, they will receive a handle that is only known by the layer that is
|
||||
wrapping the object.
|
||||
|
||||
@ -1246,13 +1244,13 @@ Remember that loader *trampoline* code normally fills in the dispatch table
|
||||
pointer in the newly created object.
|
||||
Thus, the layer must fill in the dispatch table pointer if the loader
|
||||
*trampoline* will not do so.
|
||||
Common cases where a layer (or implementation) may create a dispatchable object
|
||||
without loader *trampoline* code is as follows:
|
||||
Common cases where a layer (or driver) may create a dispatchable object without
|
||||
loader *trampoline* code is as follows:
|
||||
- Layers that wrap dispatchable objects
|
||||
- Layers which add extensions that create dispatchable objects
|
||||
- Layers which insert extra Vulkan functions in the stream of functions they
|
||||
intercept from the application
|
||||
- Implementations which add extensions that create dispatchable objects
|
||||
- Drivers which add extensions that create dispatchable objects
|
||||
|
||||
The desktop loader provides a callback that can be used for initializing a
|
||||
dispatchable object.
|
||||
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 126 KiB |
Before Width: | Height: | Size: 206 KiB After Width: | Height: | Size: 200 KiB |
Before Width: | Height: | Size: 194 KiB After Width: | Height: | Size: 188 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 99 KiB |
Before Width: | Height: | Size: 109 KiB After Width: | Height: | Size: 103 KiB |
@ -1,20 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1091.6482"
|
||||
height="317.07022"
|
||||
viewBox="0 0 1091.6482 317.07022"
|
||||
id="svg23732"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
sodipodi:docname="function_device_chain.svg">
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="function_device_chain.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs23734">
|
||||
<marker
|
||||
@ -1831,22 +1831,23 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="627.79152"
|
||||
inkscape:cy="-102.5041"
|
||||
inkscape:cx="628"
|
||||
inkscape:cy="-102"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1901"
|
||||
inkscape:window-height="1181"
|
||||
inkscape:window-x="292"
|
||||
inkscape:window-y="250"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="222"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
inkscape:document-rotation="0"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata23737">
|
||||
<rdf:RDF>
|
||||
@ -1855,7 +1856,7 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -2363,7 +2364,7 @@
|
||||
y="808.34442"
|
||||
x="955.59668"
|
||||
sodipodi:role="line"
|
||||
id="tspan25382-1-7">Implementation</tspan></text>
|
||||
id="tspan25382-1-7">Driver</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 114 KiB |
@ -1,20 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1340.6732"
|
||||
height="623.03601"
|
||||
viewBox="0 0 1340.6733 623.03601"
|
||||
id="svg23732"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
sodipodi:docname="function_instance_chain.svg">
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="function_instance_chain.svg"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/function_instance_chain.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs23734">
|
||||
<marker
|
||||
@ -2111,22 +2114,23 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.70710678"
|
||||
inkscape:cx="662.80579"
|
||||
inkscape:cy="331.5596"
|
||||
inkscape:cx="662.55906"
|
||||
inkscape:cy="330.92597"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2114"
|
||||
inkscape:window-height="1181"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="277"
|
||||
inkscape:window-y="222"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
inkscape:document-rotation="0"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata23737">
|
||||
<rdf:RDF>
|
||||
@ -2135,7 +2139,7 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -3095,7 +3099,7 @@
|
||||
y="950.69391"
|
||||
x="1208.207"
|
||||
sodipodi:role="line"
|
||||
id="tspan25382-1-7-9">Implementation</tspan></text>
|
||||
id="tspan25382-1-7-9">Driver</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
@ -3268,7 +3272,7 @@
|
||||
y="646.96521"
|
||||
x="1208.207"
|
||||
sodipodi:role="line"
|
||||
id="tspan25382-1-7-9-2">Implementation</tspan></text>
|
||||
id="tspan25382-1-7-9-2">Driver</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
|
Before Width: | Height: | Size: 148 KiB After Width: | Height: | Size: 148 KiB |
@ -1,23 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1384.5461"
|
||||
height="609.22845"
|
||||
viewBox="0 0 1384.5461 609.22847"
|
||||
id="svg11653"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="high_level_loader.svg"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/Vulkan-Loader/loader/images/high_level_loader.png"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/high_level_loader.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96">
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs11655">
|
||||
<marker
|
||||
@ -1008,14 +1008,14 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.50000001"
|
||||
inkscape:cx="1007.0149"
|
||||
inkscape:cy="495.28207"
|
||||
inkscape:cx="1008"
|
||||
inkscape:cy="493.99999"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1941"
|
||||
inkscape:window-height="1137"
|
||||
inkscape:window-x="619"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="54"
|
||||
inkscape:window-maximized="0"
|
||||
showguides="false"
|
||||
@ -1024,7 +1024,8 @@
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata11658">
|
||||
<rdf:RDF>
|
||||
@ -1176,15 +1177,15 @@
|
||||
style="fill:url(#linearGradient1299);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.24643;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="708.56763"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="805.53418"
|
||||
y="1189.4299"
|
||||
id="text4811"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813"
|
||||
x="708.56763"
|
||||
x="805.53418"
|
||||
y="1189.4299"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,750.41316,1077.1193)"
|
||||
id="g4455-3-0-2-5-6-7">
|
||||
@ -1581,14 +1582,14 @@
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="708.56763"
|
||||
x="764.56763"
|
||||
y="1189.4299"
|
||||
id="text4811-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-9"
|
||||
x="708.56763"
|
||||
x="764.56763"
|
||||
y="1189.4299"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,750.41316,1077.1193)"
|
||||
id="g4455-3-0-2-5-6-7-1">
|
||||
@ -2535,14 +2536,14 @@
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="708.56763"
|
||||
x="805.53418"
|
||||
y="1189.4299"
|
||||
id="text4811-9"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-2"
|
||||
x="708.56763"
|
||||
x="805.53418"
|
||||
y="1189.4299"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,750.41316,1077.1193)"
|
||||
id="g4455-3-0-2-5-6-7-5">
|
||||
|
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 164 KiB |
@ -1,20 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1088.248"
|
||||
width="1022.3574"
|
||||
height="110.89859"
|
||||
viewBox="0 0 1088.248 110.89859"
|
||||
viewBox="0 0 1022.3574 110.89859"
|
||||
id="svg16410"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
sodipodi:docname="loader_device_chain_app.svg">
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="loader_device_chain_app.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs16412">
|
||||
<marker
|
||||
@ -379,7 +379,7 @@
|
||||
y2="1014.3622"
|
||||
gradientTransform="matrix(1.3793103,0,0,1.4285704,7.2413791,-458.15411)" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,728.17828,677.41729)"
|
||||
gradientTransform="matrix(0.38627411,0,0,0.4,765.01969,677.41729)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0"
|
||||
@ -393,7 +393,7 @@
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,846.18069,-458.15511)"
|
||||
gradientTransform="matrix(1.3319798,0,0,1.4285715,847.33573,-458.15511)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
@ -467,14 +467,14 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="517.74214"
|
||||
inkscape:cy="-66.604255"
|
||||
inkscape:cx="399"
|
||||
inkscape:cy="-67"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2271"
|
||||
inkscape:window-height="1253"
|
||||
inkscape:window-x="129"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="95"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
@ -482,7 +482,8 @@
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata16415">
|
||||
<rdf:RDF>
|
||||
@ -491,7 +492,6 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -501,13 +501,16 @@
|
||||
inkscape:label="Background"
|
||||
transform="translate(3.4650574,6.7620392)">
|
||||
<rect
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:1.14552;stroke-miterlimit:4;stroke-dasharray:3.43655, 3.43655;stroke-dashoffset:0;stroke-opacity:1"
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:1.1103;stroke-miterlimit:4;stroke-dasharray:3.33089, 3.33089;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect3742"
|
||||
width="1088.248"
|
||||
width="1022.3574"
|
||||
height="110.89859"
|
||||
x="-3.4650574"
|
||||
y="-6.7620392"
|
||||
ry="5.5910091" />
|
||||
ry="5.5910091"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_device_chain_app.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
@ -591,7 +594,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -640,30 +643,30 @@
|
||||
y="962.36218"
|
||||
x="850"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="154.50964"
|
||||
id="rect3336-9-5-9-0-5-3"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.982694;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="962.36218"
|
||||
x="850"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="154.50964"
|
||||
id="rect4775"
|
||||
style="fill:url(#linearGradient4815);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4815);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.02106;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="863"
|
||||
x="923.96655"
|
||||
y="1025.8622"
|
||||
id="text4811"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813"
|
||||
x="863"
|
||||
x="923.96655"
|
||||
y="1025.8622"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,911.7707,910.64132)"
|
||||
transform="matrix(0.08921554,0,0,0.08921554,875.7707,910.64132)"
|
||||
id="g4455-3-0-2-5-6-7">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
@ -688,7 +691,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
id="polygon13-6-7-1-6-4-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -785,7 +788,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -882,7 +885,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -979,7 +982,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
@ -1,20 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1295.5498"
|
||||
width="1220.1553"
|
||||
height="133.5504"
|
||||
viewBox="0 0 1295.5498 133.5504"
|
||||
viewBox="0 0 1220.1553 133.5504"
|
||||
id="svg16410"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
sodipodi:docname="loader_device_chain_loader.svg">
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="loader_device_chain_loader.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs16412">
|
||||
<marker
|
||||
@ -385,7 +385,7 @@
|
||||
id="stop5705" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,940.17282,-233.06923)"
|
||||
gradientTransform="matrix(0.37034179,0,0,0.4,980.51933,-233.06923)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3"
|
||||
@ -399,7 +399,7 @@
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1058.1752,-1368.6416)"
|
||||
gradientTransform="matrix(1.2770411,0,0,1.4285715,1059.4401,-1368.6416)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
@ -413,22 +413,23 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1.0606602"
|
||||
inkscape:cx="638.73554"
|
||||
inkscape:cy="8.5075681"
|
||||
inkscape:cx="638.75311"
|
||||
inkscape:cy="8.4852811"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2346"
|
||||
inkscape:window-height="817"
|
||||
inkscape:window-x="204"
|
||||
inkscape:window-y="328"
|
||||
inkscape:window-x="738"
|
||||
inkscape:window-y="333"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
inkscape:document-rotation="0"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata16415">
|
||||
<rdf:RDF>
|
||||
@ -437,7 +438,6 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -447,42 +447,45 @@
|
||||
inkscape:label="Background"
|
||||
transform="translate(0.62160975,-24.977066)">
|
||||
<rect
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:1.3716;stroke-miterlimit:4;stroke-dasharray:4.11477, 4.11477;stroke-dashoffset:0;stroke-opacity:1"
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:1.33109;stroke-miterlimit:4;stroke-dasharray:3.99325, 3.99325;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect3742"
|
||||
width="1295.5498"
|
||||
width="1220.1553"
|
||||
height="133.5504"
|
||||
x="-0.62160975"
|
||||
y="24.977066"
|
||||
ry="6.7330122" />
|
||||
ry="6.7330122"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_device_chain_loader.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="51.87566"
|
||||
x="1061.9945"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="148.13672"
|
||||
id="rect3336-9-5-9-0-5-3-6"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.962214;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="51.87566"
|
||||
x="1061.9945"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="148.13675"
|
||||
id="rect4775-2"
|
||||
style="fill:url(#linearGradient4815-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4815-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.999784;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1074.9945"
|
||||
x="1135.9611"
|
||||
y="115.37566"
|
||||
id="text4811-9"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1"
|
||||
x="1074.9945"
|
||||
x="1135.9611"
|
||||
y="115.37566"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1123.7652,0.15479296)"
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1087.7652,0.15479296)"
|
||||
id="g4455-3-0-2-5-6-7-2">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
@ -507,7 +510,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -640,7 +643,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
id="polygon13-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -737,7 +740,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -834,7 +837,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -931,7 +934,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1033,7 +1036,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
id="polygon13-6-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
@ -1,20 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1496.0494"
|
||||
width="1418.7369"
|
||||
height="130.34535"
|
||||
viewBox="0 0 1496.0494 130.34535"
|
||||
viewBox="0 0 1418.7369 130.34535"
|
||||
id="svg16410"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
sodipodi:docname="loader_device_surface_chain.svg">
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="loader_device_surface_chain.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs16412">
|
||||
<marker
|
||||
@ -415,7 +415,7 @@
|
||||
id="stop5705" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1138.8651,-232.4172)"
|
||||
gradientTransform="matrix(0.36274597,0,0,0.4,1180.8827,-232.4172)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3-2"
|
||||
@ -429,7 +429,7 @@
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1256.8674,-1367.9896)"
|
||||
gradientTransform="matrix(1.2508484,0,0,1.4285715,1258.1847,-1367.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
@ -463,22 +463,23 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1.0606602"
|
||||
inkscape:cx="736.93241"
|
||||
inkscape:cy="120.10226"
|
||||
inkscape:cx="1013.0483"
|
||||
inkscape:cy="119.26534"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2377"
|
||||
inkscape:window-height="1034"
|
||||
inkscape:window-x="183"
|
||||
inkscape:window-y="402"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="369"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
inkscape:document-rotation="0"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata16415">
|
||||
<rdf:RDF>
|
||||
@ -487,7 +488,6 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -497,42 +497,45 @@
|
||||
inkscape:label="Background"
|
||||
transform="translate(0.62160975,-22.390835)">
|
||||
<rect
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:1.45612;stroke-miterlimit:4;stroke-dasharray:4.36834, 4.36834;stroke-dashoffset:0;stroke-opacity:1"
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:1.418;stroke-miterlimit:4;stroke-dasharray:4.25397, 4.25397;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect3742"
|
||||
width="1496.0494"
|
||||
width="1418.7369"
|
||||
height="130.34535"
|
||||
x="-0.62160975"
|
||||
y="22.390835"
|
||||
ry="6.5714278" />
|
||||
ry="6.5714278"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_device_surface_chain.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="52.527683"
|
||||
x="1260.6868"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="145.09839"
|
||||
id="rect3336-9-5-9-0-5-3-6-2"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3-2);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3-2);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.952296;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="52.527683"
|
||||
x="1260.6868"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="145.0984"
|
||||
id="rect4775-2-8"
|
||||
style="fill:url(#linearGradient4815-5-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4815-5-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.989478;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1273.6868"
|
||||
x="1328.6533"
|
||||
y="116.02768"
|
||||
id="text4811-9-9"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-7"
|
||||
x="1273.6868"
|
||||
x="1328.6533"
|
||||
y="116.02768"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1322.4574,0.806815)"
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1280.4574,0.806815)"
|
||||
id="g4455-3-0-2-5-6-7-2-3">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
@ -557,7 +560,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0-1" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -659,7 +662,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
id="polygon13-6-3-2" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -796,7 +799,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
id="polygon13-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -893,7 +896,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -990,7 +993,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1087,7 +1090,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1189,7 +1192,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
id="polygon13-6-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
@ -1,20 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1496.0494"
|
||||
width="1412.4003"
|
||||
height="288.00507"
|
||||
viewBox="0 0 1496.0494 288.00507"
|
||||
viewBox="0 0 1412.4002 288.00507"
|
||||
id="svg16410"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
sodipodi:docname="loader_instance_chain.svg">
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="loader_instance_chain.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs16412">
|
||||
<marker
|
||||
@ -415,7 +415,7 @@
|
||||
id="stop5705" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1138.8651,-322.41721)"
|
||||
gradientTransform="matrix(0.34414123,0,0,0.4,1184.9757,-322.41721)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3"
|
||||
@ -429,51 +429,11 @@
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1256.8674,-1457.9896)"
|
||||
gradientTransform="matrix(1.1866942,0,0,1.4285715,1258.3131,-1457.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1138.8651,-232.4172)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3-2"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1256.8674,-1367.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5-5-1"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1256.8674,-1277.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1138.8651,-142.41719)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3-2-3"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.4,0,0,0.53747337,974.68676,-346.34807)"
|
||||
inkscape:collect="always"
|
||||
@ -494,6 +454,46 @@
|
||||
y2="1014.3622"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.3793103,0,0,1.9195479,1059.9281,-1872.1979)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient12227"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.34414123,0,0,0.4,1184.6228,-233.76587)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient12229"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.1866942,0,0,1.4285715,1257.9602,-1369.3383)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient12336"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.34414123,0,0,0.4,1184.8205,-146.9652)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient12338"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.1866942,0,0,1.4285715,1258.1579,-1282.5376)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
@ -503,22 +503,23 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1.0606602"
|
||||
inkscape:cx="736.93241"
|
||||
inkscape:cy="199.39397"
|
||||
inkscape:cx="988.06385"
|
||||
inkscape:cy="11.313708"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2399"
|
||||
inkscape:window-height="863"
|
||||
inkscape:window-x="161"
|
||||
inkscape:window-y="573"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="540"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
inkscape:document-rotation="0"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata16415">
|
||||
<rdf:RDF>
|
||||
@ -527,7 +528,6 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -537,42 +537,45 @@
|
||||
inkscape:label="Background"
|
||||
transform="translate(0.62160975,56.900871)">
|
||||
<rect
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:2.16446;stroke-miterlimit:4;stroke-dasharray:6.49335, 6.49335;stroke-dashoffset:0;stroke-opacity:1"
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:2.10308;stroke-miterlimit:4;stroke-dasharray:6.30921, 6.30921;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect3742"
|
||||
width="1496.0494"
|
||||
width="1412.4003"
|
||||
height="288.00507"
|
||||
x="-0.62160975"
|
||||
y="-56.900871"
|
||||
ry="14.519924" />
|
||||
ry="14.519924"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_instance_chain.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="-37.472317"
|
||||
x="1260.6868"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="137.65649"
|
||||
id="rect3336-9-5-9-0-5-3-6"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.927553;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="-37.472317"
|
||||
x="1260.6868"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="137.65652"
|
||||
id="rect4775-2"
|
||||
style="fill:url(#linearGradient4815-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4815-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.96377;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1273.6868"
|
||||
x="1330.6533"
|
||||
y="26.027687"
|
||||
id="text4811-9"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1"
|
||||
x="1273.6868"
|
||||
x="1330.6533"
|
||||
y="26.027687"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1322.4574,-89.19318)"
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1278.4574,-89.19318)"
|
||||
id="g4455-3-0-2-5-6-7-2">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
@ -597,7 +600,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -643,58 +646,155 @@
|
||||
</g>
|
||||
<rect
|
||||
ry="13"
|
||||
y="52.527683"
|
||||
x="1260.6868"
|
||||
y="51.17902"
|
||||
x="1260.3339"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect3336-9-5-9-0-5-3-6-2"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3-2);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="137.65649"
|
||||
id="rect3336-9-5-9-0-5-3-6-3"
|
||||
style="fill:url(#linearGradient12227);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.927553;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="52.527683"
|
||||
x="1260.6868"
|
||||
y="51.17902"
|
||||
x="1260.3339"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect4775-2-8"
|
||||
style="fill:url(#linearGradient4815-5-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="137.65652"
|
||||
id="rect4775-2-5"
|
||||
style="fill:url(#linearGradient12229);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.96377;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1273.6868"
|
||||
y="116.02768"
|
||||
id="text4811-9-9"><tspan
|
||||
x="1330.3004"
|
||||
y="114.67902"
|
||||
id="text4811-9-6"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-7"
|
||||
x="1273.6868"
|
||||
y="116.02768"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
id="tspan4813-1-2"
|
||||
x="1330.3004"
|
||||
y="114.67902"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1322.4574,0.806815)"
|
||||
id="g4455-3-0-2-5-6-7-2-3">
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1278.1045,-0.541843)"
|
||||
id="g4455-3-0-2-5-6-7-2-9">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-7-6">
|
||||
id="g3-6-6-8-0-5-8-7-1">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0-1" />
|
||||
id="path5-7-2-9-3-6-6-0-2" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-9-2">
|
||||
id="g7-5-6-7-6-9-8-9-7">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-3-9" />
|
||||
id="path9-3-1-3-1-3-8-3-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6-3" />
|
||||
id="path11-5-8-6-0-7-4-6-9" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-2-0" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-6-6">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-1-2" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-8-6" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-7-1">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-9-8" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-2-7">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-0-9" />
|
||||
</g>
|
||||
</g>
|
||||
<rect
|
||||
ry="13"
|
||||
y="137.97969"
|
||||
x="1260.5315"
|
||||
height="80"
|
||||
width="137.65649"
|
||||
id="rect3336-9-5-9-0-5-3-6-7"
|
||||
style="fill:url(#linearGradient12336);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.927553;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="137.97969"
|
||||
x="1260.5315"
|
||||
height="80"
|
||||
width="137.65652"
|
||||
id="rect4775-2-59"
|
||||
style="fill:url(#linearGradient12338);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.96377;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1330.498"
|
||||
y="201.47971"
|
||||
id="text4811-9-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-28"
|
||||
x="1330.498"
|
||||
y="201.47971"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1278.3022,86.258831)"
|
||||
id="g4455-3-0-2-5-6-7-2-97">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-7-3">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0-6" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-9-1">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-3-2" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6-93" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0-1" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -738,103 +838,6 @@
|
||||
id="path31-6-2-4-7-0-2-0-6" />
|
||||
</g>
|
||||
</g>
|
||||
<rect
|
||||
ry="13"
|
||||
y="142.52768"
|
||||
x="1260.6868"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect3336-9-5-9-0-5-3-6-2-6"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3-2-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="142.52768"
|
||||
x="1260.6868"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect4775-2-8-1"
|
||||
style="fill:url(#linearGradient4815-5-5-1);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1273.6868"
|
||||
y="206.02766"
|
||||
id="text4811-9-9-5"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-7-5"
|
||||
x="1273.6868"
|
||||
y="206.02766"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1322.4574,90.806811)"
|
||||
id="g4455-3-0-2-5-6-7-2-3-4">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-7-6-7">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0-1-6" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-9-2-5">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-3-9-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6-3-9" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-7-1-6-4-3-0-1-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-6-9-7" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-2-4-4" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-6-7-5">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-1-8-2" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-8-4-5" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-7-5-4">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-9-0-7" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-2-3-4">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-0-6-4" />
|
||||
</g>
|
||||
</g>
|
||||
<rect
|
||||
ry="17.467884"
|
||||
y="36.527683"
|
||||
@ -893,7 +896,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
id="polygon13-6-3-2" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -943,7 +946,7 @@
|
||||
id="path1535" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1543)"
|
||||
d="m 1221.9501,86.326981 h 40.1301"
|
||||
d="m 1221.9501,88.326981 h 40.1301"
|
||||
id="path1537" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1553)"
|
||||
@ -1038,7 +1041,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1135,7 +1138,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
id="polygon13-6-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1232,7 +1235,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
id="polygon13-6-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1329,7 +1332,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
id="polygon13-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1431,7 +1434,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
@ -1,23 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1184.9259"
|
||||
width="1121.6842"
|
||||
height="464.72107"
|
||||
viewBox="0 0 1184.9259 464.72108"
|
||||
viewBox="0 0 1121.6842 464.72108"
|
||||
id="svg11653"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="loader_layer_order.svg"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_layer_order.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96">
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs11655">
|
||||
<marker
|
||||
@ -452,32 +452,12 @@
|
||||
x2="401"
|
||||
y2="909.36218"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.5474222,0,0,0.42058992,576.20962,827.22783)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient1299"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.8876627,0,0,1.5021058,692.86661,-366.7969)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient1415"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.5474222,0,0,0.42058992,576.20962,827.22783)"
|
||||
gradientTransform="matrix(0.36369004,0,0,0.42058992,616.63068,827.22783)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
@ -487,7 +467,7 @@
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient1417"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.8876627,0,0,1.5021058,692.86661,-366.7969)"
|
||||
gradientTransform="matrix(1.2541037,0,0,1.5021058,694.1339,-366.7969)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
@ -572,26 +552,6 @@
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient3576"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.5474222,0,0,0.42058992,576.20962,827.22783)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient3578"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.8876627,0,0,1.5021058,692.86661,-366.7969)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
@ -718,6 +678,46 @@
|
||||
transform="matrix(-0.8,0,0,-0.8,-10,0)"
|
||||
inkscape:connector-curvature="0" />
|
||||
</marker>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient3337"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.36369004,0,0,0.42058992,616.63068,827.22783)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient3339"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.2541037,0,0,1.5021058,694.1339,-366.7969)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient3450"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.36369004,0,0,0.42058992,616.63068,827.22783)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient3452"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.2541037,0,0,1.5021058,694.1339,-366.7969)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
@ -727,14 +727,14 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.7071068"
|
||||
inkscape:cx="606.47927"
|
||||
inkscape:cy="48.339241"
|
||||
inkscape:cx="605.9905"
|
||||
inkscape:cy="48.08326"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer3"
|
||||
inkscape:current-layer="layer2"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2086"
|
||||
inkscape:window-height="1137"
|
||||
inkscape:window-x="619"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="54"
|
||||
inkscape:window-maximized="0"
|
||||
showguides="false"
|
||||
@ -743,7 +743,8 @@
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata11658">
|
||||
<rdf:RDF>
|
||||
@ -752,7 +753,6 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -762,15 +762,16 @@
|
||||
inkscape:label="Background"
|
||||
transform="translate(11.848806,7.6125679)">
|
||||
<rect
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:2.4469;stroke-miterlimit:4;stroke-dasharray:7.34068, 7.34068;stroke-dashoffset:0;stroke-opacity:1"
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:2.38071;stroke-miterlimit:4;stroke-dasharray:7.1421, 7.1421;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect3742"
|
||||
width="1184.9259"
|
||||
width="1121.6842"
|
||||
height="464.72107"
|
||||
x="-11.848806"
|
||||
y="-7.6125679"
|
||||
ry="23.42915"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_layer_order.png" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
@ -830,7 +831,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
id="polygon13" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -874,107 +875,6 @@
|
||||
id="path31" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1322"
|
||||
transform="translate(241.70024,-329.29098)">
|
||||
<rect
|
||||
ry="13.669172"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.117981"
|
||||
width="218.96887"
|
||||
id="rect3336-9-5-9-0-5-3"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.19958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13.669162"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.11792"
|
||||
width="218.96887"
|
||||
id="rect4775"
|
||||
style="fill:url(#linearGradient1299);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.24643;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="708.56763"
|
||||
y="1189.4299"
|
||||
id="text4811"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813"
|
||||
x="708.56763"
|
||||
y="1189.4299"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,750.41316,1077.1193)"
|
||||
id="g4455-3-0-2-5-6-7">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
id="polygon13-6-7-1-6-4-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1322-3"
|
||||
transform="translate(240.70234,-458.672)">
|
||||
@ -983,30 +883,30 @@
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.117981"
|
||||
width="218.96887"
|
||||
width="145.47601"
|
||||
id="rect3336-9-5-9-0-5-3-5"
|
||||
style="fill:url(#linearGradient1415);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.19958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient1415);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.977763;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13.669162"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.11792"
|
||||
width="218.96887"
|
||||
width="145.47603"
|
||||
id="rect4775-6"
|
||||
style="fill:url(#linearGradient1417);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.24643;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient1417);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.01595;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="708.56763"
|
||||
y="1189.4299"
|
||||
x="775.53418"
|
||||
y="1193.4299"
|
||||
id="text4811-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-9"
|
||||
x="708.56763"
|
||||
y="1189.4299"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
x="775.53418"
|
||||
y="1193.4299"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,750.41316,1077.1193)"
|
||||
transform="matrix(0.08921554,0,0,0.08921554,720.41316,1081.1193)"
|
||||
id="g4455-3-0-2-5-6-7-1">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
@ -1031,7 +931,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
id="polygon13-6-7-1-6-4-3-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1076,6 +976,208 @@
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1322-3-3"
|
||||
transform="translate(240.4948,-342.92913)">
|
||||
<rect
|
||||
ry="13.669172"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.117981"
|
||||
width="145.47601"
|
||||
id="rect3336-9-5-9-0-5-3-5-5"
|
||||
style="fill:url(#linearGradient3337);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.977763;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13.669162"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.11792"
|
||||
width="145.47603"
|
||||
id="rect4775-6-6"
|
||||
style="fill:url(#linearGradient3339);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.01595;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="775.53418"
|
||||
y="1193.4299"
|
||||
id="text4811-2-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-9-9"
|
||||
x="775.53418"
|
||||
y="1193.4299"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,720.41316,1081.1193)"
|
||||
id="g4455-3-0-2-5-6-7-1-1">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-2-2">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-7-7" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-0-0">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-9-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-3-3" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-7-1-6-4-3-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-0-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-6-6" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-2-2">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-6-6" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-1-1" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-8-8">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-7-7" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-9-9">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-2-2" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1322-3-5"
|
||||
transform="translate(240.4948,-230.92913)">
|
||||
<rect
|
||||
ry="13.669172"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.117981"
|
||||
width="145.47601"
|
||||
id="rect3336-9-5-9-0-5-3-5-9"
|
||||
style="fill:url(#linearGradient3450);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.977763;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13.669162"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.11792"
|
||||
width="145.47603"
|
||||
id="rect4775-6-2"
|
||||
style="fill:url(#linearGradient3452);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.01595;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="775.53418"
|
||||
y="1193.4299"
|
||||
id="text4811-2-28"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-9-97"
|
||||
x="775.53418"
|
||||
y="1193.4299"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,720.41316,1081.1193)"
|
||||
id="g4455-3-0-2-5-6-7-1-3">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-2-6">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-7-1" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-0-2">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-9-93" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-3-1" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-7-1-6-4-3-6-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-0-4" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-6-7" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-2-8">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-6-4" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-1-5" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-8-0">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-7-3" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-9-6">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-2-1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1241"
|
||||
transform="translate(134.15673,-76.742015)">
|
||||
@ -1147,7 +1249,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-7-1-6-4-7" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1263,7 +1365,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-7-1-6-6-7" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1366,7 +1468,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-7-1-6-68-5" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1466,7 +1568,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1566,7 +1668,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
points="774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 "
|
||||
id="polygon13-6-7" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1611,107 +1713,6 @@
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g1322-30"
|
||||
transform="translate(240.92707,-218.96562)">
|
||||
<rect
|
||||
ry="13.669172"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.117981"
|
||||
width="218.96887"
|
||||
id="rect3336-9-5-9-0-5-3-3"
|
||||
style="fill:url(#linearGradient3576);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.19958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13.669162"
|
||||
y="1126.8401"
|
||||
x="696.64246"
|
||||
height="84.11792"
|
||||
width="218.96887"
|
||||
id="rect4775-0"
|
||||
style="fill:url(#linearGradient3578);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.24643;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="708.56763"
|
||||
y="1189.4299"
|
||||
id="text4811-9"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-2"
|
||||
x="708.56763"
|
||||
y="1189.4299"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,750.41316,1077.1193)"
|
||||
id="g4455-3-0-2-5-6-7-5">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-4">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-5">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-94" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 "
|
||||
id="polygon13-6-7-1-6-4-3-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-2" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-2" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-4">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-7" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-7" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-5">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-4" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-8">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 94 KiB |
@ -1,23 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1704.0886"
|
||||
width="1640.5771"
|
||||
height="277.24231"
|
||||
viewBox="0 0 1704.0886 277.24231"
|
||||
viewBox="0 0 1640.5771 277.24231"
|
||||
id="svg16410"
|
||||
version="1.1"
|
||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="loader_layer_order_calls.svg"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/Vulkan-Loader/loader/images/loader_layer_order_calls.png"
|
||||
inkscape:export-filename="/home/marky/dev/khronos/hub/loader/docs/images/loader_layer_order_calls.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96">
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs16412">
|
||||
<marker
|
||||
@ -418,7 +418,7 @@
|
||||
id="stop5705" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1352.8736,-322.41721)"
|
||||
gradientTransform="matrix(0.36535919,0,0,0.4,1396.3162,-322.41721)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3"
|
||||
@ -432,51 +432,11 @@
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1470.8759,-1457.9896)"
|
||||
gradientTransform="matrix(1.2598591,0,0,1.4285715,1474.1752,-1457.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1352.8736,-232.4172)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3-2"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1470.8759,-1367.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient4815-5-5-1"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.9094313,0,0,1.4285715,1470.8759,-1277.9896)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.55373504,0,0,0.4,1352.8736,-142.41719)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient4620-0-16-5-1-0-3-2-3"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientTransform="matrix(0.4,0,0,0.53747337,1188.6953,-346.34807)"
|
||||
inkscape:collect="always"
|
||||
@ -533,6 +493,46 @@
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient2678"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.36535919,0,0,0.4,1395.2815,-235.23188)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient2680"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.2598591,0,0,1.4285715,1473.1405,-1370.8043)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Blue-2"
|
||||
id="linearGradient2787"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.36535919,0,0,0.4,1395.2815,-147.23188)"
|
||||
x1="402"
|
||||
y1="711.36218"
|
||||
x2="401"
|
||||
y2="909.36218" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#Shine-2"
|
||||
id="linearGradient2789"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.2598591,0,0,1.4285715,1473.1405,-1282.8043)"
|
||||
x1="55.75"
|
||||
y1="994.11218"
|
||||
x2="55.75"
|
||||
y2="1014.3622" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
@ -542,22 +542,23 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1.0606602"
|
||||
inkscape:cx="445.73334"
|
||||
inkscape:cy="188.63121"
|
||||
inkscape:cx="1497.1807"
|
||||
inkscape:cy="188.5618"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer2"
|
||||
showgrid="false"
|
||||
inkscape:window-width="2399"
|
||||
inkscape:window-height="863"
|
||||
inkscape:window-x="161"
|
||||
inkscape:window-y="573"
|
||||
inkscape:window-x="750"
|
||||
inkscape:window-y="540"
|
||||
inkscape:window-maximized="0"
|
||||
units="px"
|
||||
inkscape:document-rotation="0"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" />
|
||||
fit-margin-bottom="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<metadata
|
||||
id="metadata16415">
|
||||
<rdf:RDF>
|
||||
@ -566,7 +567,6 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -576,9 +576,9 @@
|
||||
inkscape:label="Background"
|
||||
transform="translate(0.62160975,46.138115)">
|
||||
<rect
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:2.26649;stroke-miterlimit:4;stroke-dasharray:6.79942, 6.79942;stroke-dashoffset:0;stroke-opacity:1"
|
||||
style="opacity:1;fill:#e2dbe3;fill-opacity:1;stroke:none;stroke-width:2.22385;stroke-miterlimit:4;stroke-dasharray:6.67151, 6.67151;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect3742"
|
||||
width="1704.0886"
|
||||
width="1640.5771"
|
||||
height="277.24231"
|
||||
x="-0.62160975"
|
||||
y="-46.138115"
|
||||
@ -586,32 +586,32 @@
|
||||
<rect
|
||||
ry="13"
|
||||
y="-37.472317"
|
||||
x="1474.6952"
|
||||
x="1476.6952"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="146.14368"
|
||||
id="rect3336-9-5-9-0-5-3-6"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.95572;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="-37.472317"
|
||||
x="1474.6952"
|
||||
x="1476.6952"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
width="146.14365"
|
||||
id="rect4775-2"
|
||||
style="fill:url(#linearGradient4815-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
style="fill:url(#linearGradient4815-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.993036;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1487.6952"
|
||||
x="1548.6617"
|
||||
y="26.027687"
|
||||
id="text4811-9"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1"
|
||||
x="1487.6952"
|
||||
x="1548.6617"
|
||||
y="26.027687"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1536.4659,-89.19318)"
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1500.4659,-89.19318)"
|
||||
id="g4455-3-0-2-5-6-7-2">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
@ -636,7 +636,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -682,58 +682,155 @@
|
||||
</g>
|
||||
<rect
|
||||
ry="13"
|
||||
y="52.527683"
|
||||
x="1474.6952"
|
||||
y="49.713013"
|
||||
x="1475.6605"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect3336-9-5-9-0-5-3-6-2"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3-2);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="146.14368"
|
||||
id="rect3336-9-5-9-0-5-3-6-3"
|
||||
style="fill:url(#linearGradient2678);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.95572;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="52.527683"
|
||||
x="1474.6952"
|
||||
y="49.713013"
|
||||
x="1475.6605"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect4775-2-8"
|
||||
style="fill:url(#linearGradient4815-5-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
width="146.14365"
|
||||
id="rect4775-2-5"
|
||||
style="fill:url(#linearGradient2680);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.993036;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1487.6952"
|
||||
y="116.02768"
|
||||
id="text4811-9-9"><tspan
|
||||
x="1547.6271"
|
||||
y="113.21301"
|
||||
id="text4811-9-6"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-7"
|
||||
x="1487.6952"
|
||||
y="116.02768"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
id="tspan4813-1-2"
|
||||
x="1547.6271"
|
||||
y="113.21301"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1536.4659,0.806815)"
|
||||
id="g4455-3-0-2-5-6-7-2-3">
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1499.4312,-2.007851)"
|
||||
id="g4455-3-0-2-5-6-7-2-9">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-7-6">
|
||||
id="g3-6-6-8-0-5-8-7-1">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0-1" />
|
||||
id="path5-7-2-9-3-6-6-0-2" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-9-2">
|
||||
id="g7-5-6-7-6-9-8-9-7">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-3-9" />
|
||||
id="path9-3-1-3-1-3-8-3-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6-3" />
|
||||
id="path11-5-8-6-0-7-4-6-9" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
id="polygon13-6-7-1-6-4-3-0-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-2-0" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-6-6">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-1-2" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-8-6" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-7-1">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-9-8" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-2-7">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-0-9" />
|
||||
</g>
|
||||
</g>
|
||||
<rect
|
||||
ry="13"
|
||||
y="137.71301"
|
||||
x="1475.6605"
|
||||
height="80"
|
||||
width="146.14368"
|
||||
id="rect3336-9-5-9-0-5-3-6-7"
|
||||
style="fill:url(#linearGradient2787);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.95572;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="137.71301"
|
||||
x="1475.6605"
|
||||
height="80"
|
||||
width="146.14365"
|
||||
id="rect4775-2-59"
|
||||
style="fill:url(#linearGradient2789);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.993036;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1547.6271"
|
||||
y="201.21301"
|
||||
id="text4811-9-2"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-28"
|
||||
x="1547.6271"
|
||||
y="201.21301"
|
||||
style="font-size:25px;line-height:1.25;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1">Driver</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1499.4312,85.992149)"
|
||||
id="g4455-3-0-2-5-6-7-2-97">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-7-3">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0-6" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-9-1">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-3-2" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6-93" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-7-1-6-4-3-0-1" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -777,103 +874,6 @@
|
||||
id="path31-6-2-4-7-0-2-0-6" />
|
||||
</g>
|
||||
</g>
|
||||
<rect
|
||||
ry="13"
|
||||
y="142.52768"
|
||||
x="1474.6952"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect3336-9-5-9-0-5-3-6-2-6"
|
||||
style="fill:url(#linearGradient4620-0-16-5-1-0-3-2-3);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.17658;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
ry="13"
|
||||
y="142.52768"
|
||||
x="1474.6952"
|
||||
height="80"
|
||||
width="221.49402"
|
||||
id="rect4775-2-8-1"
|
||||
style="fill:url(#linearGradient4815-5-5-1);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.22252;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="1487.6952"
|
||||
y="206.02766"
|
||||
id="text4811-9-9-5"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4813-1-7-5"
|
||||
x="1487.6952"
|
||||
y="206.02766"
|
||||
style="font-size:25px;line-height:1.25;fill:#ffffff;fill-opacity:1">Implementation</tspan></text>
|
||||
<g
|
||||
transform="matrix(0.08921554,0,0,0.08921554,1536.4659,90.806811)"
|
||||
id="g4455-3-0-2-5-6-7-2-3-4">
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g3-6-6-8-0-5-8-7-6-7">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.1,385.06 h -40.57 c 0,0 0,-98.97 0,-129.66 12.96,7.22 30.09,20.54 40.57,33.32 z"
|
||||
id="path5-7-2-9-3-6-6-0-1-6" />
|
||||
<g
|
||||
id="g7-5-6-7-6-9-8-9-2-5">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 381.75,385.06 H 331.17 L 265.16,181.03 h 46.01 l 45.44,143.45 h 0.57 l 46,-143.45 h 46.29 z"
|
||||
id="path9-3-1-3-1-3-8-3-9-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 585.51,385.06 h -38.58 v -20.57 h -0.85 c -5.15,8.58 -11.81,14.77 -20.01,18.58 -8.19,3.81 -16.57,5.71 -25.15,5.71 -10.86,0 -19.76,-1.43 -26.72,-4.28 -6.95,-2.85 -12.43,-6.91 -16.43,-12.14 -4.01,-5.24 -6.82,-11.62 -8.44,-19.15 -1.61,-7.52 -2.42,-15.86 -2.42,-25 v -90.88 h 40.58 v 83.44 c 0,12.19 1.91,21.29 5.72,27.29 3.81,6.01 10.57,9 20.29,9 11.05,0 19.05,-3.28 24,-9.86 4.96,-6.58 7.43,-17.39 7.43,-32.44 v -77.44 h 40.59 v 147.74 z"
|
||||
id="path11-5-8-6-0-7-4-6-3-9" />
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
id="polygon13-6-7-1-6-4-3-0-1-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 843.62,282.76 c 0.57,-9.52 2.96,-17.43 7.15,-23.72 4.19,-6.29 9.52,-11.33 16,-15.14 6.48,-3.81 13.77,-6.53 21.87,-8.14 8.09,-1.62 16.24,-2.43 24.43,-2.43 7.43,0 14.95,0.52 22.57,1.57 7.63,1.05 14.57,3.1 20.86,6.15 6.28,3.05 11.43,7.29 15.44,12.71 4,5.43 6,12.62 6,21.58 v 76.87 c 0,6.67 0.38,13.06 1.14,19.15 0.76,6.1 2.1,10.67 4.01,13.72 h -41.15 c -0.76,-2.28 -1.38,-4.62 -1.86,-7 -0.47,-2.38 -0.81,-4.8 -1,-7.29 -6.48,6.68 -14.11,11.34 -22.87,14.01 -8.76,2.66 -17.72,4 -26.86,4 -7.05,0 -13.63,-0.86 -19.71,-2.57 -6.1,-1.71 -11.44,-4.38 -16,-8 -4.58,-3.62 -8.16,-8.19 -10.72,-13.72 -2.57,-5.52 -3.86,-12.09 -3.86,-19.71 0,-8.38 1.48,-15.29 4.43,-20.72 2.96,-5.43 6.76,-9.76 11.44,-13 4.67,-3.24 10,-5.67 16,-7.29 6,-1.62 12.05,-2.91 18.14,-3.86 6.1,-0.94 12.1,-1.71 18.01,-2.28 5.91,-0.57 11.14,-1.43 15.71,-2.57 4.58,-1.15 8.19,-2.81 10.86,-5.01 2.67,-2.19 3.91,-5.38 3.72,-9.57 0,-4.38 -0.72,-7.86 -2.15,-10.43 -1.43,-2.57 -3.33,-4.57 -5.71,-6 -2.38,-1.43 -5.14,-2.38 -8.29,-2.86 -3.15,-0.48 -6.52,-0.72 -10.14,-0.72 -8,0 -14.29,1.71 -18.86,5.15 -4.57,3.43 -7.24,9.14 -8,17.15 h -40.6 z m 93.73,30.01 c -1.72,1.53 -3.86,2.71 -6.43,3.57 -2.57,0.87 -5.33,1.58 -8.29,2.15 -2.95,0.57 -6.05,1.05 -9.28,1.43 -3.24,0.38 -6.48,0.85 -9.72,1.43 -3.05,0.57 -6.05,1.34 -9,2.28 -2.95,0.96 -5.53,2.24 -7.72,3.86 -2.19,1.62 -3.95,3.67 -5.29,6.14 -1.33,2.48 -2,5.62 -2,9.43 0,3.62 0.67,6.67 2,9.14 1.34,2.48 3.15,4.43 5.43,5.86 2.29,1.43 4.95,2.43 8,3 3.05,0.57 6.19,0.85 9.43,0.85 8,0 14.2,-1.33 18.58,-3.99 4.38,-2.67 7.63,-5.86 9.71,-9.58 2.09,-3.71 3.39,-7.47 3.85,-11.28 0.48,-3.81 0.71,-6.86 0.72,-9.14 v -15.15 z"
|
||||
id="path15-2-9-2-3-5-1-6-9-7" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1004.21,237.33 h 38.59 v 20.57 h 0.85 c 5.14,-8.57 11.81,-14.81 20,-18.71 8.19,-3.91 16.58,-5.86 25.14,-5.86 10.87,0 19.77,1.48 26.73,4.43 6.95,2.96 12.42,7.05 16.43,12.29 4,5.24 6.81,11.62 8.43,19.14 1.62,7.53 2.43,15.86 2.43,25.01 v 90.87 h -40.57 v -83.44 c 0,-12.2 -1.91,-21.29 -5.71,-27.29 -3.82,-6 -10.58,-9 -20.3,-9 -11.05,0 -19.04,3.29 -24,9.86 -4.96,6.56 -7.43,17.38 -7.43,32.43 v 77.44 h -40.58 V 237.33 Z"
|
||||
id="path17-9-2-9-2-2-4-2-4-4" />
|
||||
<g
|
||||
id="g19-1-0-3-0-5-9-6-7-5">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 612.37,211.84 v 173.23 h 40.58 V 234.21 c -13.02,-7.98 -26.59,-15.47 -40.58,-22.37 z"
|
||||
id="path21-2-2-1-6-4-2-1-8-2" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 198.43,219.21 c 23.52,-68.89 164.15,-94.16 314.15,-56.43 89.97,22.62 163.49,66.5 211.51,109.89 C 702.3,215.12 596.65,133.08 451.18,104.96 286.7,73.16 124.47,101.11 104.39,174.1 89.89,226.83 153.57,288.6 252.05,330.84 207.81,295.02 186.29,254.78 198.43,219.21 Z"
|
||||
id="path23-7-3-9-1-7-0-8-4-5" />
|
||||
<g
|
||||
id="g25-0-7-4-5-4-6-7-5-4">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 724.16,247.62 v -66.59 h -40.59 v 20.22 c 17.31,15.46 31.04,31.2 40.59,46.37 z"
|
||||
id="path27-9-5-7-5-4-8-9-0-7" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-72.428508,584.97477)"
|
||||
id="g29-3-9-8-4-3-9-2-3-4">
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1214.52,363.68 c 0,12.26 -9.63,21.89 -22.15,21.89 -12.4,0 -22.29,-9.63 -22.29,-21.89 0,-12 9.89,-21.63 22.29,-21.63 12.53,0.01 22.15,9.63 22.15,21.63 z m -38.9,0 c 0,9.63 7.12,17.27 16.88,17.27 9.49,0 16.48,-7.65 16.48,-17.14 0,-9.63 -6.99,-17.41 -16.62,-17.41 -9.62,0.01 -16.74,7.79 -16.74,17.28 z m 13.32,11.34 h -5.01 V 353.4 c 1.98,-0.4 4.75,-0.66 8.31,-0.66 4.09,0 5.93,0.66 7.52,1.58 1.19,0.92 2.11,2.64 2.11,4.75 0,2.37 -1.85,4.22 -4.48,5.01 v 0.26 c 2.11,0.79 3.3,2.37 3.96,5.27 0.66,3.3 1.05,4.62 1.58,5.41 h -5.41 c -0.66,-0.79 -1.05,-2.77 -1.71,-5.27 -0.4,-2.37 -1.71,-3.43 -4.48,-3.43 h -2.37 v 8.7 z m 0.13,-12.26 h 2.37 c 2.77,0 5.01,-0.92 5.01,-3.17 0,-1.98 -1.45,-3.3 -4.62,-3.3 -1.32,0 -2.24,0.13 -2.77,0.26 v 6.21 z"
|
||||
id="path31-6-2-4-7-0-2-0-6-4" />
|
||||
</g>
|
||||
</g>
|
||||
<rect
|
||||
ry="17.467884"
|
||||
y="36.527683"
|
||||
@ -932,7 +932,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 "
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
id="polygon13-6-3-2" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1077,7 +1077,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1179,7 +1179,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
id="polygon13-6-0" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1291,7 +1291,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-9" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1403,7 +1403,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 "
|
||||
points="730.84,296.19 730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 "
|
||||
id="polygon13-6-6" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1505,7 +1505,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-3" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
@ -1613,7 +1613,7 @@
|
||||
</g>
|
||||
<polygon
|
||||
style="fill:#ffffff"
|
||||
points="730.74,290.47 781.89,237.33 829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 "
|
||||
points="829.91,237.33 774.18,291.62 836.19,385.06 787.04,385.06 730.84,296.19 730.74,290.47 781.89,237.33 "
|
||||
id="polygon13-6-0-1" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
@ -3142,8 +3142,8 @@ static VkResult read_data_files_in_search_paths(const struct loader_instance *in
|
||||
strncpy(tmp_search_path, search_path, search_path_size);
|
||||
tmp_search_path[search_path_size] = '\0';
|
||||
if (data_file_type == LOADER_DATA_FILE_MANIFEST_ICD) {
|
||||
log_flags = VULKAN_LOADER_IMPLEMENTATION_BIT;
|
||||
loader_log(inst, VULKAN_LOADER_IMPLEMENTATION_BIT, 0, "Searching for implementation manifest files");
|
||||
log_flags = VULKAN_LOADER_DRIVER_BIT;
|
||||
loader_log(inst, VULKAN_LOADER_DRIVER_BIT, 0, "Searching for driver manifest files");
|
||||
} else {
|
||||
log_flags = VULKAN_LOADER_LAYER_BIT;
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, "Searching for layer manifest files");
|
||||
@ -3365,7 +3365,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
if (num_good_icds == 0) {
|
||||
res = VK_ERROR_INITIALIZATION_FAILED;
|
||||
}
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: ICD JSON %s does not have a \'file_format_version\' field. Skipping ICD JSON.", file_str);
|
||||
cJSON_Delete(inst, json);
|
||||
json = NULL;
|
||||
@ -3378,7 +3378,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
if (num_good_icds == 0) {
|
||||
res = VK_ERROR_OUT_OF_HOST_MEMORY;
|
||||
}
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Failed retrieving ICD JSON %s \'file_format_version\' field. Skipping ICD JSON",
|
||||
file_str);
|
||||
cJSON_Delete(inst, json);
|
||||
@ -3402,7 +3402,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
}
|
||||
|
||||
if (file_major_vers != 1 || file_minor_vers != 0 || file_patch_vers > 1) {
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Unexpected manifest file version (expected 1.0.0 or 1.0.1), may cause errors");
|
||||
}
|
||||
cJSON_Free(inst, file_vers);
|
||||
@ -3416,7 +3416,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
if (num_good_icds == 0) {
|
||||
res = VK_ERROR_OUT_OF_HOST_MEMORY;
|
||||
}
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Failed retrieving ICD JSON %s \'library_path\' field. Skipping ICD JSON.",
|
||||
file_str);
|
||||
cJSON_Free(inst, temp);
|
||||
@ -3441,7 +3441,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
strcpy(library_path, &temp[1]);
|
||||
cJSON_Free(inst, temp);
|
||||
if (strlen(library_path) == 0) {
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: ICD JSON %s \'library_path\' field is empty. Skipping ICD JSON.", file_str);
|
||||
cJSON_Delete(inst, json);
|
||||
json = NULL;
|
||||
@ -3471,7 +3471,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
if (item != NULL) {
|
||||
temp = cJSON_Print(inst, item);
|
||||
if (NULL == temp) {
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Failed retrieving ICD JSON %s \'api_version\' field. Skipping ICD JSON.",
|
||||
file_str);
|
||||
|
||||
@ -3489,7 +3489,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
vers = loader_make_version(temp);
|
||||
cJSON_Free(inst, temp);
|
||||
} else {
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: ICD JSON %s does not have an \'api_version\' field.", file_str);
|
||||
}
|
||||
VkResult icd_add_res = VK_SUCCESS;
|
||||
@ -3498,7 +3498,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
res = icd_add_res;
|
||||
goto out;
|
||||
} else if (VK_SUCCESS != icd_add_res) {
|
||||
loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Failed to add ICD JSON %s. Skipping ICD JSON.", fullpath);
|
||||
cJSON_Delete(inst, json);
|
||||
json = NULL;
|
||||
@ -3506,12 +3506,12 @@ VkResult loader_icd_scan(const struct loader_instance *inst, struct loader_icd_t
|
||||
}
|
||||
num_good_icds++;
|
||||
} else {
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Failed to find \'library_path\' object in ICD JSON file %s. Skipping ICD JSON.",
|
||||
file_str);
|
||||
}
|
||||
} else {
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"loader_icd_scan: Can not find \'ICD\' object in ICD JSON file %s. Skipping ICD JSON", file_str);
|
||||
}
|
||||
|
||||
@ -4934,7 +4934,7 @@ VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo, c
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, " Library: %s", activated_layers[index].library);
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, " ||");
|
||||
}
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, " <Implementations>\n");
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, " <Drivers>\n");
|
||||
}
|
||||
|
||||
res = fpCreateInstance(&loader_create_info, pAllocator, created_instance);
|
||||
@ -5446,7 +5446,7 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateInstance(const VkInstanceCreateI
|
||||
icd_result = icd_enumerate_instance_version(&icd_version);
|
||||
if (icd_result != VK_SUCCESS) {
|
||||
icd_version = VK_API_VERSION_1_0;
|
||||
loader_log(ptr_instance, VULKAN_LOADER_DEBUG_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(ptr_instance, VULKAN_LOADER_DEBUG_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"terminator_CreateInstance: ICD \"%s\" vkEnumerateInstanceVersion returned error. The ICD will be "
|
||||
"treated as a 1.0 ICD",
|
||||
icd_term->scanned_icd->lib_name);
|
||||
@ -5604,7 +5604,7 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDevice(VkPhysicalDevice physical
|
||||
icd_exts.list = NULL;
|
||||
|
||||
if (fpCreateDevice == NULL) {
|
||||
loader_log(icd_term->this_instance, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(icd_term->this_instance, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"terminator_CreateDevice: No vkCreateDevice command exposed by ICD %s", icd_term->scanned_icd->lib_name);
|
||||
res = VK_ERROR_INITIALIZATION_FAILED;
|
||||
goto out;
|
||||
@ -5652,7 +5652,7 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDevice(VkPhysicalDevice physical
|
||||
filtered_extension_names[localCreateInfo.enabledExtensionCount] = (char *)extension_name;
|
||||
localCreateInfo.enabledExtensionCount++;
|
||||
} else {
|
||||
loader_log(icd_term->this_instance, VULKAN_LOADER_DEBUG_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(icd_term->this_instance, VULKAN_LOADER_DEBUG_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"vkCreateDevice extension %s not available for devices associated with ICD %s", extension_name,
|
||||
icd_term->scanned_icd->lib_name);
|
||||
}
|
||||
@ -5800,7 +5800,7 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateDevice(VkPhysicalDevice physical
|
||||
|
||||
res = fpCreateDevice(phys_dev_term->phys_dev, &localCreateInfo, pAllocator, &dev->icd_device);
|
||||
if (res != VK_SUCCESS) {
|
||||
loader_log(icd_term->this_instance, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(icd_term->this_instance, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"terminator_CreateDevice: Failed in ICD %s vkCreateDevice call", icd_term->scanned_icd->lib_name);
|
||||
goto out;
|
||||
}
|
||||
|
@ -695,10 +695,10 @@ VkResult windows_read_data_files_in_registry(const struct loader_instance *inst,
|
||||
char *search_path = NULL;
|
||||
|
||||
if (data_file_type == LOADER_DATA_FILE_MANIFEST_ICD) {
|
||||
loader_log(inst, VULKAN_LOADER_IMPLEMENTATION_BIT, 0, "Checking for Implementation Manifest files in Registry at %s",
|
||||
loader_log(inst, VULKAN_LOADER_DRIVER_BIT, 0, "Checking for Driver Manifest files in Registry at %s",
|
||||
registry_location);
|
||||
} else {
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, "Checking for Implementation Manifest files in Registry at %s",
|
||||
loader_log(inst, VULKAN_LOADER_LAYER_BIT, 0, "Checking for Driver Manifest files in Registry at %s",
|
||||
registry_location);
|
||||
}
|
||||
|
||||
@ -738,7 +738,7 @@ VkResult windows_read_data_files_in_registry(const struct loader_instance *inst,
|
||||
|
||||
if ((VK_SUCCESS != reg_result && VK_SUCCESS != regHKR_result) || NULL == search_path) {
|
||||
if (data_file_type == LOADER_DATA_FILE_MANIFEST_ICD) {
|
||||
loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"windows_read_data_files_in_registry: Registry lookup failed to get ICD manifest files. Possibly missing "
|
||||
"Vulkan driver?");
|
||||
vk_result = VK_ERROR_INCOMPATIBLE_DRIVER;
|
||||
@ -746,11 +746,11 @@ VkResult windows_read_data_files_in_registry(const struct loader_instance *inst,
|
||||
if (warn_if_not_present) {
|
||||
if (data_file_type == LOADER_DATA_FILE_MANIFEST_LAYER) {
|
||||
// This is only a warning for layers
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"windows_read_data_files_in_registry: Registry lookup failed to get layer manifest files.");
|
||||
} else {
|
||||
// This is only a warning for general data files
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_IMPLEMENTATION_BIT, 0,
|
||||
loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
|
||||
"windows_read_data_files_in_registry: Registry lookup failed to get data files.");
|
||||
}
|
||||
}
|
||||
|
10
loader/log.c
@ -70,8 +70,8 @@ void loader_debug_init(void) {
|
||||
g_loader_debug |= VULKAN_LOADER_DEBUG_BIT;
|
||||
} else if (strncmp(env, "layer", len) == 0) {
|
||||
g_loader_debug |= VULKAN_LOADER_LAYER_BIT;
|
||||
} else if (strncmp(env, "implem", len) == 0 || strncmp(env, "icd", len) == 0) {
|
||||
g_loader_debug |= VULKAN_LOADER_IMPLEMENTATION_BIT;
|
||||
} else if (strncmp(env, "driver", len) == 0 || strncmp(env, "implem", len) == 0 || strncmp(env, "icd", len) == 0) {
|
||||
g_loader_debug |= VULKAN_LOADER_DRIVER_BIT;
|
||||
}
|
||||
}
|
||||
|
||||
@ -106,7 +106,7 @@ void loader_log(const struct loader_instance *inst, VkFlags msg_type, int32_t ms
|
||||
VkDebugUtilsObjectNameInfoEXT object_name;
|
||||
|
||||
if ((msg_type & VULKAN_LOADER_INFO_BIT) != 0 || (msg_type & VULKAN_LOADER_LAYER_BIT) != 0 ||
|
||||
(msg_type & VULKAN_LOADER_IMPLEMENTATION_BIT) != 0) {
|
||||
(msg_type & VULKAN_LOADER_DRIVER_BIT) != 0) {
|
||||
severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT;
|
||||
} else if ((msg_type & VULKAN_LOADER_WARN_BIT) != 0) {
|
||||
severity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT;
|
||||
@ -171,12 +171,12 @@ void loader_log(const struct loader_instance *inst, VkFlags msg_type, int32_t ms
|
||||
strncat(cmd_line_msg, "LAYER", cmd_line_size);
|
||||
cmd_line_size -= 5;
|
||||
}
|
||||
if ((msg_type & VULKAN_LOADER_IMPLEMENTATION_BIT) != 0) {
|
||||
if ((msg_type & VULKAN_LOADER_DRIVER_BIT) != 0) {
|
||||
if (cmd_line_size != original_size) {
|
||||
strncat(cmd_line_msg, " | ", cmd_line_size);
|
||||
cmd_line_size -= 3;
|
||||
}
|
||||
strncat(cmd_line_msg, "IMPLEM", cmd_line_size);
|
||||
strncat(cmd_line_msg, "DRIVER", cmd_line_size);
|
||||
cmd_line_size -= 6;
|
||||
}
|
||||
if ((msg_type & VULKAN_LOADER_PERF_BIT) != 0) {
|
||||
|
@ -35,7 +35,7 @@ enum vulkan_loader_debug_flags {
|
||||
VULKAN_LOADER_ERROR_BIT = 0x08,
|
||||
VULKAN_LOADER_DEBUG_BIT = 0x10,
|
||||
VULKAN_LOADER_LAYER_BIT = 0x20,
|
||||
VULKAN_LOADER_IMPLEMENTATION_BIT = 0x40,
|
||||
VULKAN_LOADER_DRIVER_BIT = 0x40,
|
||||
};
|
||||
|
||||
// Checks for the environment variable VK_LOADER_DEBUG and sets up the current debug level accordingly
|
||||
|