Initial commit

This commit is contained in:
Apalak Dutta 2023-05-12 10:25:25 +05:30
parent c0e4c3fa69
commit 1d8d8cd45e
1468 changed files with 161921 additions and 0 deletions

BIN
.DS_Store vendored Normal file

Binary file not shown.

3
.idea/.gitignore generated vendored Normal file
View File

@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

BIN
QuickStartGuide.pdf Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

40
data/bestshotmobile.conf Normal file
View File

@ -0,0 +1,40 @@
<?xml version="1.0"?>
<settings>
<section name="BestShotMobile::Settings">
<!-- 0 - None, 1 - Online, 2 - Offline -->
<param name="LivenessType" type="Value::Int1" x="0" />
</section>
<section name="LivenessNone::Settings">
<param name="AGSThreshold" type="Value::Float1" x="0.2" />
<!-- x - pitch, y - yaw, z - roll -->
<param name="HeadPoseThreshold" type="Value::Float3" x="20.0" y="20.0" z="30.0" />
</section>
<section name="LivenessOnline::Settings">
<param name="AGSThreshold" type="Value::Float1" x="0.2" />
<!-- x - pitch, y - yaw, z - roll -->
<param name="HeadPoseThreshold" type="Value::Float3" x="20.0" y="20.0" z="30.0" />
<param name="MinFaceSize" type="Value::Int1" x="220" />
<param name="MinFrameSize" type="Value::Int1" x="480" />
<param name="MinBorderPaddings" type="Value::Int1" x="25" />
<param name="URL" type="Value::String" text="" />
<param name="Luna-Account-Id" type="Value::String" text="" />
</section>
<section name="LivenessOffline::Settings">
<param name="AGSThreshold" type="Value::Float1" x="0.2" />
<!-- x - pitch, y - yaw, z - roll -->
<param name="HeadPoseThreshold" type="Value::Float3" x="20.0" y="20.0" z="30.0" />
<param name="MinCheckCount" type="Value::Int1" x="3" />
</section>
<section name="LivenessOfflineOSL::Settings">
<param name="AGSThreshold" type="Value::Float1" x="0.2" />
<!-- x - pitch, y - yaw, z - roll -->
<param name="HeadPoseThreshold" type="Value::Float3" x="25.0" y="25.0" z="25.0" />
<param name="MinFaceSize" type="Value::Int1" x="200" />
<param name="MinBorderPaddings" type="Value::Int1" x="10" />
</section>
</settings>

BIN
data/cnn59m_arm.plan Normal file

Binary file not shown.

BIN
data/cnn59m_cpu.plan Normal file

Binary file not shown.

View File

@ -0,0 +1,25 @@
<?xml version="1.0"?>
<settings>
<section name="descriptor">
<param name="type" type="Value::String" text="face" />
<param name="numCrops" type="Value::Int1" x="1" />
<param name="length" type="Value::Int1" x="512" />
<param name="payloadLength" type="Value::Int1" x="512" />
<param name="centerROI" type="Value::Int4" x="13" y="13" z="224" w="224" />
<param name="mean" type="Value::Float3" x="0.485" y="0.456" z="0.406" />
<param name="sigma" type="Value::Float3" x="0.229" y="0.224" z="0.225" />
<param name="inputSize" type="Value::Int2" x="112" y="112" />
<param name="planName" type="Value::String" text="cnn59b" />
<param name="planNameMobileNet" type="Value::String" text="cnn59m" />
<param name="filterAggregation" type="Value::Int1" x="1" />
<param name="garbageScorePlatt" type="Value::Float2" x="-0.1" y="2.52" />
<param name="gpuInt8" type="Value::String" text="off" />
</section>
<section name="crop_0">
<param name="ROI" type="Value::Int4" x="0" y="0" z="250" w="250" />
</section>
<section name="PlattScaling">
<param name="params_L2" type="Value::Float2" x="15.82862185" y="-18.53282296" />
</section>
</settings>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

77
data/faceengine.conf Normal file
View File

@ -0,0 +1,77 @@
<?xml version="1.0"?>
<settings>
<section name="system">
<param name="verboseLogging" type="Value::Int1" x="2" />
</section>
<section name="DescriptorFactory::Settings">
<param name="model" type="Value::Int1" x="59" />
<param name="useMobileNet" type="Value::Int1" x="1" />
<param name="distance" type="Value::String" text="L2" />
<param name="descriptorCountWarningLevel" type="Value::Float1" x="0.9" />
</section>
<section name="FaceDetV2::Settings">
<param name="FirstThreshold" type="Value::Float1" x="0.51385"/>
<param name="SecondThreshold" type="Value::Float1" x="0.248"/>
<param name="ThirdThreshold" type="Value::Float1" x="0.76"/>
<param name="minFaceSize" type="Value::Int1" x="50" />
<param name="scaleFactor" type="Value::Float1" x="0.7" />
<param name="paddings" type="Value::Float4" x="-0.20099958" y="0.10210337" z="0.20363552" w="0.08490226" />
<param name="redetectTolerance" type="Value::Int1" x="0" />
<param name="useLNet" type="Value::Int1" x="0" />
</section>
<section name="LNet::Settings">
<param name="planName" type="Value::String" text="LNet_fast_v2" />
<param name="size" type="Value::Int1" x="96" />
<param name="mean" type="Value::Float3" x="0.0" y="0.0" z="0.0" />
<param name="sigma" type="Value::Float3" x="0.0" y="0.0" z="0.0" />
</section>
<section name="HeadPoseEstimator::Settings">
<param name="useEstimationByImage" type="Value::Int1" x="1"/>
<param name="useEstimationByLandmarks" type="Value::Int1" x="0"/>
</section>
<section name="EyeEstimator::Settings">
<param name="useStatusPlan" type="Value::Int1" x="1"/>
</section>
<section name="LivenessOneShotRGBEstimator::Settings">
<param name="useMobileNet" type="Value::Int1" x="1" />
<!--Parameters for backend version (useMobileNet == 0) -->
<param name="realThreshold" type="Value::Float1" x="0.5"/>
<param name="qualityThreshold" type="Value::Float1" x="0.5" />
<param name="calibrationCoeff" type="Value::Float1" x="0.94"/>
<!--Parameters for mobile version (useMobileNet == 1) -->
<param name="mobileRealThreshold" type="Value::Float1" x="0.5"/>
<param name="mobileQualityThreshold" type="Value::Float1" x="0.5" />
<param name="mobileCalibrationCoeff" type="Value::Float1" x="0.99"/>
</section>
<section name="MedicalMaskEstimatorV3::Settings">
<param name="maskExtendedThreshold" type="Value::Float1" x="0.65"/>
<param name="noMaskExtendedThreshold" type="Value::Float1" x="0.65"/>
<param name="maskNotInPlaceExtendedThreshold" type="Value::Float1" x="0.65"/>
<param name="occludedFaceExtendedThreshold" type="Value::Float1" x="0.5"/>
<param name="maskThreshold" type="Value::Float1" x="0.65"/>
<param name="noMaskThreshold" type="Value::Float1" x="0.65"/>
<param name="occludedFaceThreshold" type="Value::Float1" x="0.65"/>
</section>
<section name="QualityEstimator::Settings">
<param name="blurThreshold" type="Value::Float1" x="0.61"/>
<param name="lightThreshold" type="Value::Float1" x="0.57"/>
<param name="darknessThreshold" type="Value::Float1" x="0.50"/>
<param name="illuminationThreshold" type="Value::Float1" x="0.1"/>
<param name="specularityThreshold" type="Value::Float1" x="0.1"/>
</section>
<section name="GlassesEstimator::Settings">
<param name="noGlassesThreshold" type="Value::Float1" x="0.986"/>
<param name="eyeGlassesThreshold" type="Value::Float1" x="0.57"/>
<param name="sunGlassesThreshold" type="Value::Float1" x="0.506"/>
</section>
</settings>

Binary file not shown.

Binary file not shown.

11
data/license.conf Normal file
View File

@ -0,0 +1,11 @@
<?xml version="1.0"?>
<settings>
<section name="Licensing::Settings">
<param name="Server" type="Value::String" text="https://license.visionlabs.ai/"/>
<param name="EID" type="Value::String" text="7fc04604-1f3f-4c4f-bd1b-63d73246b0ab"/>
<param name="ProductID" type="Value::String" text="86f702f8-ad92-4ea2-a85e-72d6c1388d52"/>
<param name="Filename" type="Value::String" text="license.dat"/>
<param name="ContainerMode" type="Value::Int1" x="0"/>
<param name="ConnectionTimeout" type="Value::Int1" x="15"/>
</section>
</settings>

BIN
data/mask_clf_v3_arm.plan Normal file

Binary file not shown.

BIN
data/mask_clf_v3_cpu.plan Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

10
data/runtime.conf Normal file
View File

@ -0,0 +1,10 @@
<?xml version="1.0"?>
<settings>
<section name="Runtime">
<param name="cpuClass" type="Value::String" text="auto" />
<param name="deviceClass" type="Value::String" text="cpu" />
<param name="numThreads" type="Value::Int1" x="-1" />
<param name="verboseLogging" type="Value::Int1" x="0" />
<param name="programCacheSize" type="Value::Int1" x="128" />
</section>
</settings>

162
data/trackengine.conf Normal file
View File

@ -0,0 +1,162 @@
<?xml version="1.0"?>
<!--
The config file format is optimized for deserialization of several FSDK types:
* Int1 - scalar 32 bit integral numeric type
* Int2 - 2-d 32 bit integral numeric type (aka Vector2i, Size)
* Int3 - 3-d 32 bit integral numeric type
* Int4 - 4-d 32 bit integral numeric type (aka Rect)
* Float1 - scalar 32 bit floating point numeric type
* Float2 - 2-d 32 bit floating point numeric type (aka Vector2f)
* Float3 - 3-d 32 bit floating point numeric type
* Float4 - 4-d 32 bit floating point numeric type
* String - short null-terminated string (max. 16 characters including the null-terminator)
-->
<settings>
<!-- Logging parameters. -->
<section name="logging">
<!-- mode: the mode of logging, ['l2c' - log to console only, 'l2f' - log to file, 'l2b' - log to console & file] ('l2b' by default). -->
<param name="mode" type="Value::String" text="l2b" />
<!-- severity: Logging severity level, [0 - debug, 1 - info, 2 - warnings, 3 - error only], ('2' by default). -->
<param name="severity" type="Value::Int1" x="1" />
</section>
<!-- Other parameters. -->
<section name="other">
<!-- detector-step: The count of frames between frames with full detection, [0 .. 30] ('7' by default). -->
<param name="detector-step" type="Value::Int1" x="7" />
<!-- Currently available detector comparers are:
0 - DctConfidence,
1 - DctCenter - default,
2 - DctCenterAndConfidence,
3 - DctSize -->
<param name="detector-comparer" type="Value::Int1" x="1" />
<!-- Currently available detector modes are: 0 - all detections on image, 1 - one detection on image, -->
<param name="use-one-detection-mode" type="Value::Int1" x="0" />
<!-- skip-frames: If there is no detection in estimated area, waiting this number of frames and stop the track [0 .. 50] ('36' by default). -->
<param name="skip-frames" type="Value::Int1" x="36" />
<!-- frg-subtractor: Use foreground subtractor for filter of frames, [0, 1] ('1' by default). -->
<param name="frg-subtractor" type="Value::Int1" x="1" />
<!-- frames-buffer-size: Size of the internal storage buffer for all frames (for one stream) ('20' by default). -->
<param name="frames-buffer-size" type="Value::Int1" x="20" />
<!-- callback-buffer-size: Buffer size for the callbacks ('300' by default). -->
<param name="callback-buffer-size" type="Value::Int1" x="300" />
<!-- max-processing-fragments-count: Maximum fragments for stream being processed in time. Zero value means no limit ('1' by default). -->
<param name="max-processing-fragments-count" type="Value::Int1" x="1" />
<!-- batched-processing: Process streams frames in batch or separately, [0, 1] ('1' by default). -->
<param name="batched-processing" type="Value::Int1" x="1" />
<!-- min-frames-batch-size: stream frames min batch size value to process, ('0' by default). -->
<!-- higher values lead to higher processing latency but increase throughput and device utilization. -->
<!-- zero/negative values disable this feature, so any stream frames will be processed if they are available -->
<!-- note: this parameter should be regulated with 'max-frames-batch-gather-timeout' (see below) -->
<param name="min-frames-batch-size" type="Value::Int1" x="0" />
<!-- max-frames-batch-gather-timeout: max available timeout to gather next stream frames batch (see 'min-frames-batch-size') from last processing begin time point (measured in ms), ('0' by default). -->
<!-- note: this parameter is complementary to 'min-frames-batch-size' and controls min average fps of stream frames batches processing -->
<param name="max-frames-batch-gather-timeout" type="Value::Int1" x="0" />
<!-- Process tracks founded after redetect/detect in parallel or wait detect and redetect results and process all tracks together, [0, 1] ('0' by default). -->
<param name="parallel-tracks-processing" type="Value::Int1" x="0" />
<!-- frg-regions-alignment: frg regions alignment. Useful for detector better batching utilization. -->
<!-- 0 or negative values mean using non aligned regions, (0 by default). -->
<param name="frg-regions-alignment" type="Value::Int1" x="0" />
<!-- align frg regions to rect with equal sides (max side choosen). See frg-regions-alignment, [0, 1] ('1' by default). -->
<param name="frg-regions-square-alignment" type="Value::Int1" x="1" />
<!-- detector-scaling: Scale frame before detection for performance reasons, [0, 1] ('0' by default). -->
<param name="detector-scaling" type="Value::Int1" x="0" />
<!-- scale-result-size: If scaling is enable, frame will be scaled to this size in pixels (by the max dimension - width or height).
Upper scaling is not possible. ('640 by default') -->
<param name="scale-result-size" type="Value::Int1" x="640" />
<!-- maxDetectionCount: Maximum detections count ('20' by default) -->
<param name="max-detection-count" type="Value::Int1" x="20" />
<!-- minimalTrackLength: Minimum detections count to consider track as real face (parameter is ignored for human tracking) ('3' by default) -->
<param name="minimal-track-length" type="Value::Int1" x="3" />
<!-- trackerType: Type of tracker to use ['kcf', 'opencv', 'carkalman', 'vlTracker', 'none'] ('kcf' by default) -->
<param name="tracker-type" type="Value::String" text="opencv" />
<!-- kill-intersected-detections: Flag to kill intersected detections ('0' by default) -->
<param name="kill-intersected-detections" type="Value::Int1" x="1" />
<!-- kill-intersection-value: tracks with IOU > value, will be killed ('0.55' by default) -->
<param name="kill-intersection-value" type="Value::Float1" x="0.55"/>
</section>
<!-- Vehicle tracking specific parameters -->
<section name="vehicle">
<!-- best-shots-number-for-track: Number of best shots for track ('2' by default) -->
<param name="best-shots-number-for-track" type="Value::Int1" x="2" />
</section>
<!-- Face tracking specific parameters -->
<section name="face">
<!-- face-landmarks-detection: Flag to enable face landmarks detection. Disabling it improves performance ('1' by default) -->
<param name="face-landmarks-detection" type="Value::Int1" x="1" />
</section>
<!-- Human tracking specific parameters -->
<section name="human">
<!-- human-landmarks-detection: Flag to enable human landmarks detection. Disabling it improves performance ('1' by default) -->
<param name="human-landmarks-detection" type="Value::Int1" x="1" />
<!-- remove-overlapped-strategy: strategy, used for removing overlapped detections after (re)detect ['none', 'both', 'score'] ('score' by default) -->
<param name="remove-overlapped-strategy" type="Value::String" text="score" />
<!-- remove-horizontal-ratio: width to height ratio threshold, used for removing horizontal detections ('1.6' by default) -->
<param name="remove-horizontal-ratio" type="Value::Float1" x="1.6"/>
<!-- iou-connection-threshold: IOU value threshold, used for matching tracks and detections ('0.5' by default) -->
<param name="iou-connection-threshold" type="Value::Float1" x="0.5"/>
<!-- reid-matching-threshold: reID value threshold, used for matching tracks to each other ('0.85' by default) -->
<param name="reid-matching-threshold" type="Value::Float1" x="0.85"/>
<!-- non-active-tracks-lifetime: lifetime of old non-active tracks, that used for reID. It's measured in frames count and used for matching tracks to each other ('100' by default) -->
<!-- note, higher values lead to better quality of reidentification, but reduce performance -->
<param name="non-active-tracks-lifetime" type="Value::Int1" x="100" />
<!-- number of detections, that track must have to be matched by reID ('7' by default) -->
<param name="reid-matching-detections-number" type="Value::Int1" x="7" />
</section>
<!-- Detectors -->
<section name="detectors">
<!-- use-face-detector: Flag to use or not face detection -->
<param name="use-face-detector" type="Value::Int1" x="1" />
<!-- use-body-detector: Flag to use or not body detection -->
<param name="use-body-detector" type="Value::Int1" x="0" />
<!-- use-vehicle-detector: Flag to use or not vehicle detection -->
<param name="use-vehicle-detector" type="Value::Int1" x="0" />
<!-- use-license-plate-detector: Flag to use or not license plate detection -->
<param name="use-license-plate-detector" type="Value::Int1" x="0" />
</section>
<!-- Debug parameters -->
<section name="debug">
<!-- save-debug-info: Flag to save or not the debug info during processing (foreground masks for now), [0, 1] ('0' by default). -->
<param name="save-debug-info" type="Value::Int1" x="0" />
<!-- show-profiling-data: Flag to show or not profile data on TrackEngine deinit, [0, 1] ('0' by default). -->
<param name="show-profiling-data" type="Value::Int1" x="0" />
<!-- save-buffer-log: Flag to save buffers size for each frame on TrackEngine deinit, [0, 1] ('0' by default). -->
<param name="save-buffer-log" type="Value::Int1" x="0" />
</section>
</settings>

Binary file not shown.

BIN
doc/ConfigurationGuide.pdf Normal file

Binary file not shown.

BIN
doc/FaceEngine_Handbook.pdf Normal file

Binary file not shown.

213
doc/FeatureMapMobile.htm Normal file
View File

@ -0,0 +1,213 @@
<head>
<meta http-equiv="Content-Type" content="text/html">
<!--<title>Table</title> -->
<style type="text/css">
BODY {
background: white; /* */
}
TABLE {
/* width: 300px; /* */
border: 1;
border-collapse: collapse; /* */
border: 1px solid ; /* white*/
}
TD {
height: 70;
/*width: 70; */
min-width: 100;
padding: 3px; /* */
border: 1px solid black; /* */
text-align: left; /* */
background: DarkSalmon;
z-index: 1;
}
TH {
/* min-width: 50px; */
/* min-height: 100px; */
position: -webkit-sticky;
position: sticky;
top: 0;
padding: 3px; /* */
border: 1px solid black; /* */
text-align: left; /* */
background: rgb(151, 151, 151);
}
p.vertical{
-webkit-transform: rotate(-90deg);
-moz-transform: rotate(-90deg);
-ms-transform: rotate(-90deg);
-o-transform: rotate(-90deg);
transform: rotate(-90deg);
/*height:260px; */
}
</style>
</head>
<body>
<div>
<table>
<caption> Luna SDK mobile models and dependencies</caption>
<thead>
<tr>
<th height="200"><center><p class="horizontal"><b>Feature name and <br> description</b></p></center></th>
<th height="200"><center><p class="horizontal"><b>Required algorithms and used structures</b></p></center></th>
<th height="200"><center><p class="horizontal"><b>Best Shot <br>Selection</b></p></center></th>
<th height="200"><center><p class="horizontal"><b>Face Features<br> Extraction</b></p></center></th>
<th height="200"><center><p class="horizontal"><b>Face <br>Recognition</b></p></center></th>
</tr>
</thead>
<!-- -->
<tfoot>
<tr>
<td colspan="30" style="background-color: White">
<p align="left" > The &ltdevice&gt placeholder shows that the model can be used with different devices (e. g., CPU, GPU). <br>
Name of the model includes corresponding postfix (e. g., *_cpu.plan, *_gpu.plan). <br>
See "Hardware requirements" section in "FaceEngine Handbook" for information about devices supported by NN.</p>
<p align="left" > Example of table using - if user wants to find best shots in his application, he needs to look at the "Best Shot Selection"<br>
column and see what network models are required in order to run such functionality.<br>The required models and structures are <span style="color: DarkSeaGreen"> marked with green</span>.
<br>Algorigthms and structures <span style="color: DarkSalmon"> marked with red</span> are not used for the functionality.</p>
</td>
</tr>
</tfoot>
<!-- -->
<tbody>
<tr>
<td style="background-color: Silver">Face detection NN version 2<br>First, second and third NN <br>should be launched consequently</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IDetector<br><br>Plan(s):<br> FaceDet_2_first_&ltdevice&gt.plan<br> FaceDet_2_second_&ltdevice&gt.plan<br> FaceDet_2_third_&ltdevice&gt.plan</th>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
<tr>
<td style="background-color: Silver">BestShotQuality estimation<br>Performs head pose and AGS estimations</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IBestShotQualityEstimator<br><br>Plan(s):<br>ags_angle_estimation_flwr_&ltdevice&gt.plan</td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
<tr>
<td style="background-color: Silver">Image quality estimation <br>(light, dark, blur, etc.)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IQualityEstimator<br><br>Plan(s):<br> model_subjective_quality_&ltversion&gt_&ltdevice&gt.plan</td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
<tr>
<td style="background-color: Silver">Image glasses estimation <br>(light, dark, blur, etc.)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IGlassesEstimator<br><br>Plan(s):<br> glasses_estimation_flwr_&ltversion&gt_&ltdevice&gt.plan</td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
<tr>
<td style="background-color: Silver">Head pose estimation (deprecated)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IHeadPoseEstimator<br><br>Plan(s):<br>angle_estimation_flwr_&ltdevice&gt.plan</td>
<td style="background-color: rgb(188, 168, 143)"></td>
<td style="background-color: rgb(188, 168, 143)"></td>
<td style="background-color: rgb(188, 168, 143)"></td>
</tr>
<tr>
<td style="background-color: Silver">AGS estimation (deprecated)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IAGSEstimator<br><br>Plan(s):<br>ags_estimation_flwr_&ltdevice&gt.plan </td>
<td style="background-color: rgb(188, 168, 143)"></td>
<td style="background-color: rgb(188, 168, 143)"></td>
<td style="background-color: rgb(188, 168, 143)"></td>
</tr>
<tr>
<td style="background-color: Silver">LivenessOneShotRGB estimation<br>Predicts whether the person's face is real or fake (photo, printed image)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>ILivenessOneShotRGBEstimator<br><br>Plan(s):<br>oslm_v3_model_&ltversion&gt_&ltdevice&gt.plan</td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
<tr>
<td style="background-color: Silver">Extraction (NN version 54 mobilenet)<br>(Available in Complete distribution package only!) </td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IDescriptor, IDescriptorBatch, IDescriptorExtractor<br><br>Plan(s):<br>cnn54m_&ltdevice&gt.plan</th>
<td></td>
<td></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
<tr>
<td style="background-color: Silver">Eyes state estimation (eyes status and <br>keypoints for irises and eyelids)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IEyeEstimator<br><br>Plan(s):<br>eyes_estimation_flwr8_&ltdevice&gt.plan</td>
<td></td>
<td style="background-color: DarkSeaGreen"></td>
<td></td>
</tr>
<tr>
<td style="background-color: Silver">Eyes state <br>(lightened version, returns eyes state only)</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IEyeEstimator<br><br>Plan(s):<br>eye_status_estimation_flwr_&ltdevice&gt.
<td></td>
<td style="background-color: DarkSeaGreen"></td>
<td></td>
</tr>
<div>
<table>
<caption> Luna SDK functionality</caption>
<thead>
<tr>
<th height="100"><center><p class="horizontal"><b>Functionality</b></p></center></th>
<th height="100"><center><p class="horizontal"><b>Feature name and <br> description</b></p></center></th>
<th height="100"><center><p class="horizontal"><b>Required algorithms and used structures</b></p></center></th>
<th height="100"><center><p class="horizontal"><b>Face detection NN<br> versions 1 and 2</b></p></center></th>
<th height="100"><center><p class="horizontal"><b>Face detection NN <br> version 3</b></p></center></th>
</tr>
</thead>
<tr>
<td style="background-color: Silver">MedicalMaskDetection</td>
<td style="background-color: Silver">Medical mask estimation</td>
<td style="background-color: rgba(240, 238, 238, 0.952)">Structure(s):<br>IMedicalMaskEstimator<br><br>Plan(s):<br>mask_clf_&ltversion&gt_&ltdevice&gt.plan</td>
<td style="background-color: DarkSeaGreen"></td>
<td style="background-color: DarkSeaGreen"></td>
</tr>
</table>
</div>
<br>
<div style="background-color: rgba(240, 238, 238, 0.952); border: 1px solid #ccc; padding-left: 10px;">
<p align="left" > The table above includes separately licensed feature. </p>
<p align="left" > Additional features required for the functionality utilization are shown in the columns to the right. </p>
</div>
<!-- !!!!!! -->
<tr class="even">
<td style="background-color: white; height: 5" colspan="15" ></td>
</tr>
</tbody>
</table>
</div>
</html>

BIN
doc/Licensing.pdf Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,113 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('annotated.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Class List</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><b>mobile</b></td><td class="desc"></td></tr>
<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmobile_1_1_best_shot_info.html" target="_self">BestShotInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmobile_1_1_i_best_shot_mobile.html" target="_self">IBestShotMobile</a></td><td class="desc"><a class="el" href="structmobile_1_1_i_best_shot_mobile.html" title="IBestShotMobile interface class. ">IBestShotMobile</a> interface class </td></tr>
<tr id="row_0_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html" target="_self">IBestShotMobileObserver</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,8 @@
var annotated_dup =
[
[ "mobile", null, [
[ "BestShotInfo", "structmobile_1_1_best_shot_info.html", "structmobile_1_1_best_shot_info" ],
[ "IBestShotMobile", "structmobile_1_1_i_best_shot_mobile.html", "structmobile_1_1_i_best_shot_mobile" ],
[ "IBestShotMobileObserver", "structmobile_1_1_i_best_shot_mobile_observer.html", "structmobile_1_1_i_best_shot_mobile_observer" ]
] ]
];

BIN
doc/bsmobile/html/bc_s.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 B

BIN
doc/bsmobile/html/bdwn.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

View File

@ -0,0 +1,115 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: Class Index</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classes.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Class Index</div> </div>
</div><!--header-->
<div class="contents">
<div class="qindex"><a class="qindex" href="#letter_b">b</a>&#160;|&#160;<a class="qindex" href="#letter_i">i</a></div>
<table class="classindex">
<tr><td rowspan="2" valign="bottom"><a name="letter_b"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;b&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_i"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;i&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html">IBestShotMobileObserver</a> (mobile)&#160;&#160;&#160;</td></tr>
<tr><td></td></tr>
<tr><td valign="top"><a class="el" href="structmobile_1_1_best_shot_info.html">BestShotInfo</a> (mobile)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structmobile_1_1_i_best_shot_mobile.html">IBestShotMobile</a> (mobile)&#160;&#160;&#160;</td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
</table>
<div class="qindex"><a class="qindex" href="#letter_b">b</a>&#160;|&#160;<a class="qindex" href="#letter_i">i</a></div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

View File

@ -0,0 +1,106 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: /home/gitlab-runner/builds/Xgzk4SPK/0/face-recognition/FaceEngine/extern/bestshotmobile/inc Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('dir_547812929d99ffcf13cb6fc4fba64188.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">inc Directory Reference</div> </div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_dc9e1e299a0b26f222fe6c0a872463f0.html">extern</a></li><li class="navelem"><a class="el" href="dir_70d4c793eed3787e093b0b468476d203.html">bestshotmobile</a></li><li class="navelem"><a class="el" href="dir_547812929d99ffcf13cb6fc4fba64188.html">inc</a></li>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var dir_547812929d99ffcf13cb6fc4fba64188 =
[
[ "IBestShotMobile.h", "_i_best_shot_mobile_8h_source.html", null ]
];

View File

@ -0,0 +1,110 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: /home/gitlab-runner/builds/Xgzk4SPK/0/face-recognition/FaceEngine/extern/bestshotmobile Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('dir_70d4c793eed3787e093b0b468476d203.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">bestshotmobile Directory Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
Directories</h2></td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_dc9e1e299a0b26f222fe6c0a872463f0.html">extern</a></li><li class="navelem"><a class="el" href="dir_70d4c793eed3787e093b0b468476d203.html">bestshotmobile</a></li>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var dir_70d4c793eed3787e093b0b468476d203 =
[
[ "inc", "dir_547812929d99ffcf13cb6fc4fba64188.html", "dir_547812929d99ffcf13cb6fc4fba64188" ]
];

View File

@ -0,0 +1,106 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: /home/gitlab-runner/builds/Xgzk4SPK/0/face-recognition/FaceEngine/extern Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('dir_dc9e1e299a0b26f222fe6c0a872463f0.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">extern Directory Reference</div> </div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_dc9e1e299a0b26f222fe6c0a872463f0.html">extern</a></li>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var dir_dc9e1e299a0b26f222fe6c0a872463f0 =
[
[ "bestshotmobile", "dir_70d4c793eed3787e093b0b468476d203.html", "dir_70d4c793eed3787e093b0b468476d203" ]
];

BIN
doc/bsmobile/html/doc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 B

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@ -0,0 +1,120 @@
/*
@licstart The following is the entire license notice for the
JavaScript code in this file.
Copyright (C) 1997-2017 by Dimitri van Heesch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
@licend The above is the entire license notice
for the JavaScript code in this file
*/
function toggleVisibility(linkObj)
{
var base = $(linkObj).attr('id');
var summary = $('#'+base+'-summary');
var content = $('#'+base+'-content');
var trigger = $('#'+base+'-trigger');
var src=$(trigger).attr('src');
if (content.is(':visible')===true) {
content.hide();
summary.show();
$(linkObj).addClass('closed').removeClass('opened');
$(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
} else {
content.show();
summary.hide();
$(linkObj).removeClass('closed').addClass('opened');
$(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
}
return false;
}
function updateStripes()
{
$('table.directory tr').
removeClass('even').filter(':visible:even').addClass('even');
}
function toggleLevel(level)
{
$('table.directory tr').each(function() {
var l = this.id.split('_').length-1;
var i = $('#img'+this.id.substring(3));
var a = $('#arr'+this.id.substring(3));
if (l<level+1) {
i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
a.html('&#9660;');
$(this).show();
} else if (l==level+1) {
i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
a.html('&#9654;');
$(this).show();
} else {
$(this).hide();
}
});
updateStripes();
}
function toggleFolder(id)
{
// the clicked row
var currentRow = $('#row_'+id);
// all rows after the clicked row
var rows = currentRow.nextAll("tr");
var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
// only match elements AFTER this one (can't hide elements before)
var childRows = rows.filter(function() { return this.id.match(re); });
// first row is visible we are HIDING
if (childRows.filter(':first').is(':visible')===true) {
// replace down arrow by right arrow for current row
var currentRowSpans = currentRow.find("span");
currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
currentRowSpans.filter(".arrow").html('&#9654;');
rows.filter("[id^=row_"+id+"]").hide(); // hide all children
} else { // we are SHOWING
// replace right arrow by down arrow for current row
var currentRowSpans = currentRow.find("span");
currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
currentRowSpans.filter(".arrow").html('&#9660;');
// replace down arrows by right arrows for child rows
var childRowsSpans = childRows.find("span");
childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
childRowsSpans.filter(".arrow").html('&#9654;');
childRows.show(); //show all children
}
updateStripes();
}
function toggleInherit(id)
{
var rows = $('tr.inherit.'+id);
var img = $('tr.inherit_header.'+id+' img');
var src = $(img).attr('src');
if (rows.filter(':first').is(':visible')===true) {
rows.css('display','none');
$(img).attr('src',src.substring(0,src.length-8)+'closed.png');
} else {
rows.css('display','table-row'); // using show() causes jump in firefox
$(img).attr('src',src.substring(0,src.length-10)+'open.png');
}
}
/* @license-end */

View File

@ -0,0 +1,113 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: File List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('files.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">File List</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')">&#160;</span><a class="el" href="dir_dc9e1e299a0b26f222fe6c0a872463f0.html" target="_self">extern</a></td><td class="desc"></td></tr>
<tr id="row_0_0_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">&#9660;</span><span id="img_0_0_" class="iconfopen" onclick="toggleFolder('0_0_')">&#160;</span><a class="el" href="dir_70d4c793eed3787e093b0b468476d203.html" target="_self">bestshotmobile</a></td><td class="desc"></td></tr>
<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_0_" class="arrow" onclick="toggleFolder('0_0_0_')">&#9660;</span><span id="img_0_0_0_" class="iconfopen" onclick="toggleFolder('0_0_0_')">&#160;</span><a class="el" href="dir_547812929d99ffcf13cb6fc4fba64188.html" target="_self">inc</a></td><td class="desc"></td></tr>
<tr id="row_0_0_0_0_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_best_shot_mobile_8h_source.html"><span class="icondoc"></span></a><b>IBestShotMobile.h</b></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var files_dup =
[
[ "extern", "dir_dc9e1e299a0b26f222fe6c0a872463f0.html", "dir_dc9e1e299a0b26f222fe6c0a872463f0" ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 616 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 597 B

View File

@ -0,0 +1,148 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: Class Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('functions.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div><ul>
<li>agsEstimation
: <a class="el" href="structmobile_1_1_best_shot_info.html#a7c314a7e4947e4500e9f1c75d7c95b71">mobile::BestShotInfo</a>
</li>
<li>bestShot()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html#a4b8263ebb3298fd4196ba5d37e000087">mobile::IBestShotMobileObserver</a>
</li>
<li>detection
: <a class="el" href="structmobile_1_1_best_shot_info.html#a65923bd10c65b573f29fbe9bb2076274">mobile::BestShotInfo</a>
</li>
<li>frameIndex
: <a class="el" href="structmobile_1_1_best_shot_info.html#ae12b311c16d2ff9736fb96fc30487c95">mobile::BestShotInfo</a>
</li>
<li>getLivenessType()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#aa031075fb1f0bf534f6c0a62333824bf">mobile::IBestShotMobile</a>
</li>
<li>headPoseEstimation
: <a class="el" href="structmobile_1_1_best_shot_info.html#aab34a1c4dce8b070c9e4be4edc218282">mobile::BestShotInfo</a>
</li>
<li>image
: <a class="el" href="structmobile_1_1_best_shot_info.html#a8fbdbfc60f968d3bffd617504b732161">mobile::BestShotInfo</a>
</li>
<li>join()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#a5b19a15edde0c19ffd6196276d399ad0">mobile::IBestShotMobile</a>
</li>
<li>landmarks
: <a class="el" href="structmobile_1_1_best_shot_info.html#a7aabbb84ce5a20dc5a5aa749565ddc7e">mobile::BestShotInfo</a>
</li>
<li>liveness()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html#a0448fc8d330b6d2d07eb20626f74ae54">mobile::IBestShotMobileObserver</a>
</li>
<li>pushFrame()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#a792305caf0df8067f677a644ff7796ef">mobile::IBestShotMobile</a>
</li>
<li>setBestShotMobileObserver()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#ade569cc6e630101f1842e4a04ec7490c">mobile::IBestShotMobile</a>
</li>
<li>state
: <a class="el" href="structmobile_1_1_best_shot_info.html#a537db42c3b6cb208c5559a946527fd37">mobile::BestShotInfo</a>
</li>
<li>trackEnd()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html#ad5f6356331d2d517ccc45e084a5c24e4">mobile::IBestShotMobileObserver</a>
</li>
<li>trackId
: <a class="el" href="structmobile_1_1_best_shot_info.html#aab4d8b346311ad238078c5512bd82e8b">mobile::BestShotInfo</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,124 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: Class Members - Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('functions_func.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;<ul>
<li>bestShot()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html#a4b8263ebb3298fd4196ba5d37e000087">mobile::IBestShotMobileObserver</a>
</li>
<li>getLivenessType()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#aa031075fb1f0bf534f6c0a62333824bf">mobile::IBestShotMobile</a>
</li>
<li>join()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#a5b19a15edde0c19ffd6196276d399ad0">mobile::IBestShotMobile</a>
</li>
<li>liveness()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html#a0448fc8d330b6d2d07eb20626f74ae54">mobile::IBestShotMobileObserver</a>
</li>
<li>pushFrame()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#a792305caf0df8067f677a644ff7796ef">mobile::IBestShotMobile</a>
</li>
<li>setBestShotMobileObserver()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile.html#ade569cc6e630101f1842e4a04ec7490c">mobile::IBestShotMobile</a>
</li>
<li>trackEnd()
: <a class="el" href="structmobile_1_1_i_best_shot_mobile_observer.html#ad5f6356331d2d517ccc45e084a5c24e4">mobile::IBestShotMobileObserver</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,127 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: Class Members - Variables</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('functions_vars.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;<ul>
<li>agsEstimation
: <a class="el" href="structmobile_1_1_best_shot_info.html#a7c314a7e4947e4500e9f1c75d7c95b71">mobile::BestShotInfo</a>
</li>
<li>detection
: <a class="el" href="structmobile_1_1_best_shot_info.html#a65923bd10c65b573f29fbe9bb2076274">mobile::BestShotInfo</a>
</li>
<li>frameIndex
: <a class="el" href="structmobile_1_1_best_shot_info.html#ae12b311c16d2ff9736fb96fc30487c95">mobile::BestShotInfo</a>
</li>
<li>headPoseEstimation
: <a class="el" href="structmobile_1_1_best_shot_info.html#aab34a1c4dce8b070c9e4be4edc218282">mobile::BestShotInfo</a>
</li>
<li>image
: <a class="el" href="structmobile_1_1_best_shot_info.html#a8fbdbfc60f968d3bffd617504b732161">mobile::BestShotInfo</a>
</li>
<li>landmarks
: <a class="el" href="structmobile_1_1_best_shot_info.html#a7aabbb84ce5a20dc5a5aa749565ddc7e">mobile::BestShotInfo</a>
</li>
<li>state
: <a class="el" href="structmobile_1_1_best_shot_info.html#a537db42c3b6cb208c5559a946527fd37">mobile::BestShotInfo</a>
</li>
<li>trackId
: <a class="el" href="structmobile_1_1_best_shot_info.html#aab4d8b346311ad238078c5512bd82e8b">mobile::BestShotInfo</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,105 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>BestShotMobile: Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">BestShotMobile
</div>
<div id="projectbrief">Bestshot making and liveness checking library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('index.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">BestShotMobile Documentation</div> </div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated on Fri Jun 17 2022 12:16:54 for BestShotMobile by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>

115
doc/bsmobile/html/jquery.js vendored Normal file

File diff suppressed because one or more lines are too long

BIN
doc/bsmobile/html/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

50
doc/bsmobile/html/menu.js Normal file
View File

@ -0,0 +1,50 @@
/*
@licstart The following is the entire license notice for the
JavaScript code in this file.
Copyright (C) 1997-2017 by Dimitri van Heesch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
@licend The above is the entire license notice
for the JavaScript code in this file
*/
function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
function makeTree(data,relPath) {
var result='';
if ('children' in data) {
result+='<ul>';
for (var i in data.children) {
result+='<li><a href="'+relPath+data.children[i].url+'">'+
data.children[i].text+'</a>'+
makeTree(data.children[i],relPath)+'</li>';
}
result+='</ul>';
}
return result;
}
$('#main-nav').append(makeTree(menudata,relPath));
$('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
if (searchEnabled) {
if (serverSide) {
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.png" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
} else {
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.png" alt=""/></a></span></div></li>');
}
}
$('#main-menu').smartmenus();
}
/* @license-end */

View File

@ -0,0 +1,34 @@
/*
@ @licstart The following is the entire license notice for the
JavaScript code in this file.
Copyright (C) 1997-2017 by Dimitri van Heesch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
@licend The above is the entire license notice
for the JavaScript code in this file
*/
var menudata={children:[
{text:"Main Page",url:"index.html"},
{text:"Classes",url:"annotated.html",children:[
{text:"Class List",url:"annotated.html"},
{text:"Class Index",url:"classes.html"},
{text:"Class Members",url:"functions.html",children:[
{text:"All",url:"functions.html"},
{text:"Functions",url:"functions_func.html"},
{text:"Variables",url:"functions_vars.html"}]}]},
{text:"Files",url:"files.html",children:[
{text:"File List",url:"files.html"}]}]}

BIN
doc/bsmobile/html/nav_f.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 B

BIN
doc/bsmobile/html/nav_g.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 B

BIN
doc/bsmobile/html/nav_h.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 B

View File

@ -0,0 +1,146 @@
#nav-tree .children_ul {
margin:0;
padding:4px;
}
#nav-tree ul {
list-style:none outside none;
margin:0px;
padding:0px;
}
#nav-tree li {
white-space:nowrap;
margin:0px;
padding:0px;
}
#nav-tree .plus {
margin:0px;
}
#nav-tree .selected {
background-image: url('tab_a.png');
background-repeat:repeat-x;
color: #fff;
text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
}
#nav-tree img {
margin:0px;
padding:0px;
border:0px;
vertical-align: middle;
}
#nav-tree a {
text-decoration:none;
padding:0px;
margin:0px;
outline:none;
}
#nav-tree .label {
margin:0px;
padding:0px;
font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
}
#nav-tree .label a {
padding:2px;
}
#nav-tree .selected a {
text-decoration:none;
color:#fff;
}
#nav-tree .children_ul {
margin:0px;
padding:0px;
}
#nav-tree .item {
margin:0px;
padding:0px;
}
#nav-tree {
padding: 0px 0px;
background-color: #FAFAFF;
font-size:14px;
overflow:auto;
}
#doc-content {
overflow:auto;
display:block;
padding:0px;
margin:0px;
-webkit-overflow-scrolling : touch; /* iOS 5+ */
}
#side-nav {
padding:0 6px 0 0;
margin: 0px;
display:block;
position: absolute;
left: 0px;
width: 250px;
}
.ui-resizable .ui-resizable-handle {
display:block;
}
.ui-resizable-e {
background-image:url("splitbar.png");
background-size:100%;
background-repeat:no-repeat;
background-attachment: scroll;
cursor:ew-resize;
height:100%;
right:0;
top:0;
width:6px;
}
.ui-resizable-handle {
display:none;
font-size:0.1px;
position:absolute;
z-index:1;
}
#nav-tree-contents {
margin: 6px 0px 0px 0px;
}
#nav-tree {
background-image:url('nav_h.png');
background-repeat:repeat-x;
background-color: #F9FAFC;
-webkit-overflow-scrolling : touch; /* iOS 5+ */
}
#nav-sync {
position:absolute;
top:5px;
right:24px;
z-index:0;
}
#nav-sync img {
opacity:0.3;
}
#nav-sync img:hover {
opacity:0.9;
}
@media print
{
#nav-tree { display: none; }
div.ui-resizable-handle { display: none; position: relative; }
}

View File

@ -0,0 +1,540 @@
/*
@licstart The following is the entire license notice for the
JavaScript code in this file.
Copyright (C) 1997-2017 by Dimitri van Heesch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
@licend The above is the entire license notice
for the JavaScript code in this file
*/
var navTreeSubIndices = new Array();
var arrowDown = '&#9660;';
var arrowRight = '&#9654;';
function getData(varName)
{
var i = varName.lastIndexOf('/');
var n = i>=0 ? varName.substring(i+1) : varName;
return eval(n.replace(/\-/g,'_'));
}
function stripPath(uri)
{
return uri.substring(uri.lastIndexOf('/')+1);
}
function stripPath2(uri)
{
var i = uri.lastIndexOf('/');
var s = uri.substring(i+1);
var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/);
return m ? uri.substring(i-6) : s;
}
function hashValue()
{
return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,'');
}
function hashUrl()
{
return '#'+hashValue();
}
function pathName()
{
return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, '');
}
function localStorageSupported()
{
try {
return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem;
}
catch(e) {
return false;
}
}
function storeLink(link)
{
if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) {
window.localStorage.setItem('navpath',link);
}
}
function deleteLink()
{
if (localStorageSupported()) {
window.localStorage.setItem('navpath','');
}
}
function cachedLink()
{
if (localStorageSupported()) {
return window.localStorage.getItem('navpath');
} else {
return '';
}
}
function getScript(scriptName,func,show)
{
var head = document.getElementsByTagName("head")[0];
var script = document.createElement('script');
script.id = scriptName;
script.type = 'text/javascript';
script.onload = func;
script.src = scriptName+'.js';
if ($.browser.msie && $.browser.version<=8) {
// script.onload does not work with older versions of IE
script.onreadystatechange = function() {
if (script.readyState=='complete' || script.readyState=='loaded') {
func(); if (show) showRoot();
}
}
}
head.appendChild(script);
}
function createIndent(o,domNode,node,level)
{
var level=-1;
var n = node;
while (n.parentNode) { level++; n=n.parentNode; }
if (node.childrenData) {
var imgNode = document.createElement("span");
imgNode.className = 'arrow';
imgNode.style.paddingLeft=(16*level).toString()+'px';
imgNode.innerHTML=arrowRight;
node.plus_img = imgNode;
node.expandToggle = document.createElement("a");
node.expandToggle.href = "javascript:void(0)";
node.expandToggle.onclick = function() {
if (node.expanded) {
$(node.getChildrenUL()).slideUp("fast");
node.plus_img.innerHTML=arrowRight;
node.expanded = false;
} else {
expandNode(o, node, false, false);
}
}
node.expandToggle.appendChild(imgNode);
domNode.appendChild(node.expandToggle);
} else {
var span = document.createElement("span");
span.className = 'arrow';
span.style.width = 16*(level+1)+'px';
span.innerHTML = '&#160;';
domNode.appendChild(span);
}
}
var animationInProgress = false;
function gotoAnchor(anchor,aname,updateLocation)
{
var pos, docContent = $('#doc-content');
var ancParent = $(anchor.parent());
if (ancParent.hasClass('memItemLeft') ||
ancParent.hasClass('fieldname') ||
ancParent.hasClass('fieldtype') ||
ancParent.is(':header'))
{
pos = ancParent.position().top;
} else if (anchor.position()) {
pos = anchor.position().top;
}
if (pos) {
var dist = Math.abs(Math.min(
pos-docContent.offset().top,
docContent[0].scrollHeight-
docContent.height()-docContent.scrollTop()));
animationInProgress=true;
docContent.animate({
scrollTop: pos + docContent.scrollTop() - docContent.offset().top
},Math.max(50,Math.min(500,dist)),function(){
if (updateLocation) window.location.href=aname;
animationInProgress=false;
});
}
}
function newNode(o, po, text, link, childrenData, lastNode)
{
var node = new Object();
node.children = Array();
node.childrenData = childrenData;
node.depth = po.depth + 1;
node.relpath = po.relpath;
node.isLast = lastNode;
node.li = document.createElement("li");
po.getChildrenUL().appendChild(node.li);
node.parentNode = po;
node.itemDiv = document.createElement("div");
node.itemDiv.className = "item";
node.labelSpan = document.createElement("span");
node.labelSpan.className = "label";
createIndent(o,node.itemDiv,node,0);
node.itemDiv.appendChild(node.labelSpan);
node.li.appendChild(node.itemDiv);
var a = document.createElement("a");
node.labelSpan.appendChild(a);
node.label = document.createTextNode(text);
node.expanded = false;
a.appendChild(node.label);
if (link) {
var url;
if (link.substring(0,1)=='^') {
url = link.substring(1);
link = url;
} else {
url = node.relpath+link;
}
a.className = stripPath(link.replace('#',':'));
if (link.indexOf('#')!=-1) {
var aname = '#'+link.split('#')[1];
var srcPage = stripPath(pathName());
var targetPage = stripPath(link.split('#')[0]);
a.href = srcPage!=targetPage ? url : "javascript:void(0)";
a.onclick = function(){
storeLink(link);
if (!$(a).parent().parent().hasClass('selected'))
{
$('.item').removeClass('selected');
$('.item').removeAttr('id');
$(a).parent().parent().addClass('selected');
$(a).parent().parent().attr('id','selected');
}
var anchor = $(aname);
gotoAnchor(anchor,aname,true);
};
} else {
a.href = url;
a.onclick = function() { storeLink(link); }
}
} else {
if (childrenData != null)
{
a.className = "nolink";
a.href = "javascript:void(0)";
a.onclick = node.expandToggle.onclick;
}
}
node.childrenUL = null;
node.getChildrenUL = function() {
if (!node.childrenUL) {
node.childrenUL = document.createElement("ul");
node.childrenUL.className = "children_ul";
node.childrenUL.style.display = "none";
node.li.appendChild(node.childrenUL);
}
return node.childrenUL;
};
return node;
}
function showRoot()
{
var headerHeight = $("#top").height();
var footerHeight = $("#nav-path").height();
var windowHeight = $(window).height() - headerHeight - footerHeight;
(function (){ // retry until we can scroll to the selected item
try {
var navtree=$('#nav-tree');
navtree.scrollTo('#selected',0,{offset:-windowHeight/2});
} catch (err) {
setTimeout(arguments.callee, 0);
}
})();
}
function expandNode(o, node, imm, showRoot)
{
if (node.childrenData && !node.expanded) {
if (typeof(node.childrenData)==='string') {
var varName = node.childrenData;
getScript(node.relpath+varName,function(){
node.childrenData = getData(varName);
expandNode(o, node, imm, showRoot);
}, showRoot);
} else {
if (!node.childrenVisited) {
getNode(o, node);
} if (imm || ($.browser.msie && $.browser.version>8)) {
// somehow slideDown jumps to the start of tree for IE9 :-(
$(node.getChildrenUL()).show();
} else {
$(node.getChildrenUL()).slideDown("fast");
}
node.plus_img.innerHTML = arrowDown;
node.expanded = true;
}
}
}
function glowEffect(n,duration)
{
n.addClass('glow').delay(duration).queue(function(next){
$(this).removeClass('glow');next();
});
}
function highlightAnchor()
{
var aname = hashUrl();
var anchor = $(aname);
if (anchor.parent().attr('class')=='memItemLeft'){
var rows = $('.memberdecls tr[class$="'+hashValue()+'"]');
glowEffect(rows.children(),300); // member without details
} else if (anchor.parent().attr('class')=='fieldname'){
glowEffect(anchor.parent().parent(),1000); // enum value
} else if (anchor.parent().attr('class')=='fieldtype'){
glowEffect(anchor.parent().parent(),1000); // struct field
} else if (anchor.parent().is(":header")) {
glowEffect(anchor.parent(),1000); // section header
} else {
glowEffect(anchor.next(),1000); // normal member
}
gotoAnchor(anchor,aname,false);
}
function selectAndHighlight(hash,n)
{
var a;
if (hash) {
var link=stripPath(pathName())+':'+hash.substring(1);
a=$('.item a[class$="'+link+'"]');
}
if (a && a.length) {
a.parent().parent().addClass('selected');
a.parent().parent().attr('id','selected');
highlightAnchor();
} else if (n) {
$(n.itemDiv).addClass('selected');
$(n.itemDiv).attr('id','selected');
}
if ($('#nav-tree-contents .item:first').hasClass('selected')) {
$('#nav-sync').css('top','30px');
} else {
$('#nav-sync').css('top','5px');
}
showRoot();
}
function showNode(o, node, index, hash)
{
if (node && node.childrenData) {
if (typeof(node.childrenData)==='string') {
var varName = node.childrenData;
getScript(node.relpath+varName,function(){
node.childrenData = getData(varName);
showNode(o,node,index,hash);
},true);
} else {
if (!node.childrenVisited) {
getNode(o, node);
}
$(node.getChildrenUL()).css({'display':'block'});
node.plus_img.innerHTML = arrowDown;
node.expanded = true;
var n = node.children[o.breadcrumbs[index]];
if (index+1<o.breadcrumbs.length) {
showNode(o,n,index+1,hash);
} else {
if (typeof(n.childrenData)==='string') {
var varName = n.childrenData;
getScript(n.relpath+varName,function(){
n.childrenData = getData(varName);
node.expanded=false;
showNode(o,node,index,hash); // retry with child node expanded
},true);
} else {
var rootBase = stripPath(o.toroot.replace(/\..+$/, ''));
if (rootBase=="index" || rootBase=="pages" || rootBase=="search") {
expandNode(o, n, true, true);
}
selectAndHighlight(hash,n);
}
}
}
} else {
selectAndHighlight(hash);
}
}
function removeToInsertLater(element) {
var parentNode = element.parentNode;
var nextSibling = element.nextSibling;
parentNode.removeChild(element);
return function() {
if (nextSibling) {
parentNode.insertBefore(element, nextSibling);
} else {
parentNode.appendChild(element);
}
};
}
function getNode(o, po)
{
var insertFunction = removeToInsertLater(po.li);
po.childrenVisited = true;
var l = po.childrenData.length-1;
for (var i in po.childrenData) {
var nodeData = po.childrenData[i];
po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2],
i==l);
}
insertFunction();
}
function gotoNode(o,subIndex,root,hash,relpath)
{
var nti = navTreeSubIndices[subIndex][root+hash];
o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]);
if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index
navTo(o,NAVTREE[0][1],"",relpath);
$('.item').removeClass('selected');
$('.item').removeAttr('id');
}
if (o.breadcrumbs) {
o.breadcrumbs.unshift(0); // add 0 for root node
showNode(o, o.node, 0, hash);
}
}
function navTo(o,root,hash,relpath)
{
var link = cachedLink();
if (link) {
var parts = link.split('#');
root = parts[0];
if (parts.length>1) hash = '#'+parts[1].replace(/[^\w\-]/g,'');
else hash='';
}
if (hash.match(/^#l\d+$/)) {
var anchor=$('a[name='+hash.substring(1)+']');
glowEffect(anchor.parent(),1000); // line number
hash=''; // strip line number anchors
}
var url=root+hash;
var i=-1;
while (NAVTREEINDEX[i+1]<=url) i++;
if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index
if (navTreeSubIndices[i]) {
gotoNode(o,i,root,hash,relpath)
} else {
getScript(relpath+'navtreeindex'+i,function(){
navTreeSubIndices[i] = eval('NAVTREEINDEX'+i);
if (navTreeSubIndices[i]) {
gotoNode(o,i,root,hash,relpath);
}
},true);
}
}
function showSyncOff(n,relpath)
{
n.html('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
}
function showSyncOn(n,relpath)
{
n.html('<img src="'+relpath+'sync_on.png" title="'+SYNCONMSG+'"/>');
}
function toggleSyncButton(relpath)
{
var navSync = $('#nav-sync');
if (navSync.hasClass('sync')) {
navSync.removeClass('sync');
showSyncOff(navSync,relpath);
storeLink(stripPath2(pathName())+hashUrl());
} else {
navSync.addClass('sync');
showSyncOn(navSync,relpath);
deleteLink();
}
}
function initNavTree(toroot,relpath)
{
var o = new Object();
o.toroot = toroot;
o.node = new Object();
o.node.li = document.getElementById("nav-tree-contents");
o.node.childrenData = NAVTREE;
o.node.children = new Array();
o.node.childrenUL = document.createElement("ul");
o.node.getChildrenUL = function() { return o.node.childrenUL; };
o.node.li.appendChild(o.node.childrenUL);
o.node.depth = 0;
o.node.relpath = relpath;
o.node.expanded = false;
o.node.isLast = true;
o.node.plus_img = document.createElement("span");
o.node.plus_img.className = 'arrow';
o.node.plus_img.innerHTML = arrowRight;
if (localStorageSupported()) {
var navSync = $('#nav-sync');
if (cachedLink()) {
showSyncOff(navSync,relpath);
navSync.removeClass('sync');
} else {
showSyncOn(navSync,relpath);
}
navSync.click(function(){ toggleSyncButton(relpath); });
}
$(window).load(function(){
navTo(o,toroot,hashUrl(),relpath);
showRoot();
});
$(window).bind('hashchange', function(){
if (window.location.hash && window.location.hash.length>1){
var a;
if ($(location).attr('hash')){
var clslink=stripPath(pathName())+':'+hashValue();
a=$('.item a[class$="'+clslink.replace(/</g,'\\3c ')+'"]');
}
if (a==null || !$(a).parent().parent().hasClass('selected')){
$('.item').removeClass('selected');
$('.item').removeAttr('id');
}
var link=stripPath2(pathName());
navTo(o,link,hashUrl(),relpath);
} else if (!animationInProgress) {
$('#doc-content').scrollTop(0);
$('.item').removeClass('selected');
$('.item').removeAttr('id');
navTo(o,toroot,hashUrl(),relpath);
}
})
}
/* @license-end */

View File

@ -0,0 +1,48 @@
/*
@ @licstart The following is the entire license notice for the
JavaScript code in this file.
Copyright (C) 1997-2017 by Dimitri van Heesch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
@licend The above is the entire license notice
for the JavaScript code in this file
*/
var NAVTREE =
[
[ "BestShotMobile", "index.html", [
[ "Classes", "annotated.html", [
[ "Class List", "annotated.html", "annotated_dup" ],
[ "Class Index", "classes.html", null ],
[ "Class Members", "functions.html", [
[ "All", "functions.html", null ],
[ "Functions", "functions_func.html", null ],
[ "Variables", "functions_vars.html", null ]
] ]
] ],
[ "Files", "files.html", [
[ "File List", "files.html", "files_dup" ]
] ]
] ]
];
var NAVTREEINDEX =
[
".html"
];
var SYNCONMSG = 'click to disable panel synchronisation';
var SYNCOFFMSG = 'click to enable panel synchronisation';

View File

@ -0,0 +1,35 @@
var NAVTREEINDEX0 =
{
".html":[0,0,0],
"_i_best_shot_mobile_8h_source.html":[1,0,0,0,0,0],
"annotated.html":[0,0],
"classes.html":[0,1],
"dir_547812929d99ffcf13cb6fc4fba64188.html":[1,0,0,0,0],
"dir_70d4c793eed3787e093b0b468476d203.html":[1,0,0,0],
"dir_dc9e1e299a0b26f222fe6c0a872463f0.html":[1,0,0],
"files.html":[1,0],
"functions.html":[0,2,0],
"functions_func.html":[0,2,1],
"functions_vars.html":[0,2,2],
"index.html":[],
"pages.html":[],
"structmobile_1_1_best_shot_info.html":[0,0,0,0],
"structmobile_1_1_best_shot_info.html#a537db42c3b6cb208c5559a946527fd37":[0,0,0,0,6],
"structmobile_1_1_best_shot_info.html#a65923bd10c65b573f29fbe9bb2076274":[0,0,0,0,1],
"structmobile_1_1_best_shot_info.html#a7aabbb84ce5a20dc5a5aa749565ddc7e":[0,0,0,0,5],
"structmobile_1_1_best_shot_info.html#a7c314a7e4947e4500e9f1c75d7c95b71":[0,0,0,0,0],
"structmobile_1_1_best_shot_info.html#a8fbdbfc60f968d3bffd617504b732161":[0,0,0,0,4],
"structmobile_1_1_best_shot_info.html#aab34a1c4dce8b070c9e4be4edc218282":[0,0,0,0,3],
"structmobile_1_1_best_shot_info.html#aab4d8b346311ad238078c5512bd82e8b":[0,0,0,0,7],
"structmobile_1_1_best_shot_info.html#ae12b311c16d2ff9736fb96fc30487c95":[0,0,0,0,2],
"structmobile_1_1_i_best_shot_mobile.html":[0,0,0,1],
"structmobile_1_1_i_best_shot_mobile.html#a5b19a15edde0c19ffd6196276d399ad0":[0,0,0,1,2],
"structmobile_1_1_i_best_shot_mobile.html#a792305caf0df8067f677a644ff7796ef":[0,0,0,1,3],
"structmobile_1_1_i_best_shot_mobile.html#a7a97896f38ee42ea9a227293428decc9":[0,0,0,1,0],
"structmobile_1_1_i_best_shot_mobile.html#aa031075fb1f0bf534f6c0a62333824bf":[0,0,0,1,1],
"structmobile_1_1_i_best_shot_mobile.html#ade569cc6e630101f1842e4a04ec7490c":[0,0,0,1,4],
"structmobile_1_1_i_best_shot_mobile_observer.html":[0,0,0,2],
"structmobile_1_1_i_best_shot_mobile_observer.html#a0448fc8d330b6d2d07eb20626f74ae54":[0,0,0,2,1],
"structmobile_1_1_i_best_shot_mobile_observer.html#a4b8263ebb3298fd4196ba5d37e000087":[0,0,0,2,0],
"structmobile_1_1_i_best_shot_mobile_observer.html#ad5f6356331d2d517ccc45e084a5c24e4":[0,0,0,2,2]
};

BIN
doc/bsmobile/html/open.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 B

136
doc/bsmobile/html/resize.js Normal file
View File

@ -0,0 +1,136 @@
/*
@licstart The following is the entire license notice for the
JavaScript code in this file.
Copyright (C) 1997-2017 by Dimitri van Heesch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
@licend The above is the entire license notice
for the JavaScript code in this file
*/
function initResizable()
{
var cookie_namespace = 'doxygen';
var sidenav,navtree,content,header,collapsed,collapsedWidth=0,barWidth=6,desktop_vp=768,titleHeight;
function readCookie(cookie)
{
var myCookie = cookie_namespace+"_"+cookie+"=";
if (document.cookie) {
var index = document.cookie.indexOf(myCookie);
if (index != -1) {
var valStart = index + myCookie.length;
var valEnd = document.cookie.indexOf(";", valStart);
if (valEnd == -1) {
valEnd = document.cookie.length;
}
var val = document.cookie.substring(valStart, valEnd);
return val;
}
}
return 0;
}
function writeCookie(cookie, val, expiration)
{
if (val==undefined) return;
if (expiration == null) {
var date = new Date();
date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week
expiration = date.toGMTString();
}
document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/";
}
function resizeWidth()
{
var windowWidth = $(window).width() + "px";
var sidenavWidth = $(sidenav).outerWidth();
content.css({marginLeft:parseInt(sidenavWidth)+"px"});
writeCookie('width',sidenavWidth-barWidth, null);
}
function restoreWidth(navWidth)
{
var windowWidth = $(window).width() + "px";
content.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
sidenav.css({width:navWidth + "px"});
}
function resizeHeight()
{
var headerHeight = header.outerHeight();
var footerHeight = footer.outerHeight();
var windowHeight = $(window).height() - headerHeight - footerHeight;
content.css({height:windowHeight + "px"});
navtree.css({height:windowHeight + "px"});
sidenav.css({height:windowHeight + "px"});
var width=$(window).width();
if (width!=collapsedWidth) {
if (width<desktop_vp && collapsedWidth>=desktop_vp) {
if (!collapsed) {
collapseExpand();
}
} else if (width>desktop_vp && collapsedWidth<desktop_vp) {
if (collapsed) {
collapseExpand();
}
}
collapsedWidth=width;
}
}
function collapseExpand()
{
if (sidenav.width()>0) {
restoreWidth(0);
collapsed=true;
}
else {
var width = readCookie('width');
if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); }
collapsed=false;
}
}
header = $("#top");
sidenav = $("#side-nav");
content = $("#doc-content");
navtree = $("#nav-tree");
footer = $("#nav-path");
$(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
$(sidenav).resizable({ minWidth: 0 });
$(window).resize(function() { resizeHeight(); });
var device = navigator.userAgent.toLowerCase();
var touch_device = device.match(/(iphone|ipod|ipad|android)/);
if (touch_device) { /* wider split bar for touch only devices */
$(sidenav).css({ paddingRight:'20px' });
$('.ui-resizable-e').css({ width:'20px' });
$('#nav-sync').css({ right:'34px' });
barWidth=20;
}
var width = readCookie('width');
if (width) { restoreWidth(width); } else { resizeWidth(); }
resizeHeight();
var url = location.href;
var i=url.indexOf("#");
if (i>=0) window.location.hash=url.substr(i);
var _preventDefault = function(evt) { evt.preventDefault(); };
$("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault);
$(".ui-resizable-handle").dblclick(collapseExpand);
$(window).load(resizeHeight);
}
/* @license-end */

View File

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var searchData=
[
['agsestimation',['agsEstimation',['../structmobile_1_1_best_shot_info.html#a7c314a7e4947e4500e9f1c75d7c95b71',1,'mobile::BestShotInfo']]]
];

View File

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_1.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View File

@ -0,0 +1,5 @@
var searchData=
[
['bestshot',['bestShot',['../structmobile_1_1_i_best_shot_mobile_observer.html#a4b8263ebb3298fd4196ba5d37e000087',1,'mobile::IBestShotMobileObserver']]],
['bestshotinfo',['BestShotInfo',['../structmobile_1_1_best_shot_info.html',1,'mobile']]]
];

View File

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_2.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var searchData=
[
['detection',['detection',['../structmobile_1_1_best_shot_info.html#a65923bd10c65b573f29fbe9bb2076274',1,'mobile::BestShotInfo']]]
];

View File

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_3.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View File

@ -0,0 +1,4 @@
var searchData=
[
['frameindex',['frameIndex',['../structmobile_1_1_best_shot_info.html#ae12b311c16d2ff9736fb96fc30487c95',1,'mobile::BestShotInfo']]]
];

View File

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_4.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More