Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,27 @@
|
||||
#
|
||||
# monitoring of the target areas
|
||||
# $Id$
|
||||
# $HeadURL$
|
||||
# $Author$
|
||||
#
|
||||
|
||||
SET(SRCS
|
||||
plugin.cpp
|
||||
plugin.h
|
||||
handler_mine_areas.cpp
|
||||
handler_mine_areas.h
|
||||
settings.cpp
|
||||
settings.h
|
||||
)
|
||||
|
||||
NGL_ADD_LIBRARY(AAR SV cesPluginMineAreas MODULE ${SRCS})
|
||||
NGL_TARGET_LINK_LIBRARIES(cesPluginMineAreas
|
||||
Qt5::Network
|
||||
Qt5::Widgets
|
||||
cesPluginInterface
|
||||
ngldb
|
||||
svcCesDDSCommon
|
||||
# ProjectConfig
|
||||
)
|
||||
NGL_INSTALL_TARGET(cesPluginMineAreas)
|
||||
|
||||
+399
@@ -0,0 +1,399 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0092)https://devhub.defence-elec.de/jira/si/jira.issueviews:issue-html/GUEZE-1897/GUEZE-1897.html -->
|
||||
<html class="webkit chrome"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre/Gasse</title>
|
||||
|
||||
|
||||
<script>
|
||||
window.WRM=window.WRM||{};window.WRM._unparsedData=window.WRM._unparsedData||{};window.WRM._unparsedErrors=window.WRM._unparsedErrors||{};
|
||||
WRM._unparsedData["tzdetect.pref.tzname"]="\"(GMT+01:00) Berlin\"";
|
||||
WRM._unparsedData["tzdetect.pref.auto.detect"]="true";
|
||||
WRM._unparsedData["com.atlassian.plugins.atlassian-plugins-webresource-plugin:context-path.context-path"]="\"/jira\"";
|
||||
WRM._unparsedData["tzdetect.pref.janOffset"]="3600000";
|
||||
WRM._unparsedData["tzdetect.pref.julyOffset"]="7200000";
|
||||
WRM._unparsedData["jira.core:default-comment-security-level-data.DefaultCommentSecurityLevelHelpLink"]="{\"extraClasses\":\"default-comment-level-help\",\"title\":\"Commenting on an Issue\",\"url\":\"https://docs.atlassian.com/jira/jsw-docs-097/Editing+and+collaborating+on+issues#Editingandcollaboratingonissues-restrictacomment\",\"isLocal\":false}";
|
||||
WRM._unparsedData["jira.core:feature-flags-data.feature-flag-data"]="{\"enabled-feature-keys\":[\"com.atlassian.jira.agile.darkfeature.editable.detailsview\",\"nps.survey.inline.dialog\",\"com.atlassian.jira.agile.darkfeature.edit.closed.sprint.enabled\",\"jira.plugin.devstatus.phasetwo\",\"jira.frother.reporter.field\",\"atlassian.rest.xsrf.legacy.enabled\",\"jira.issue.status.lozenge\",\"com.atlassian.jira.projects.issuenavigator\",\"com.atlassian.jira.config.PDL\",\"jira.plugin.devstatus.phasetwo.enabled\",\"atlassian.aui.raphael.disabled\",\"app-switcher.new\",\"frother.assignee.field\",\"crowd.sync.nested.groups.group.membership.changes.batching.enabled\",\"com.atlassian.jira.projects.ProjectCentricNavigation.Switch\",\"sd.internal.base.off.thread.on.completion.events.enabled\",\"jira.onboarding.cyoa\",\"com.atlassian.jira.agile.darkfeature.kanplan.enabled\",\"sd.slavalue.record.updated.date.enabled\",\"com.atlassian.jira.config.ProjectConfig.MENU\",\"com.atlassian.jira.projects.sidebar.DEFER_RESOURCES\",\"com.atlassian.jira.agile.darkfeature.kanplan.epics.and.versions.enabled\",\"com.atlassian.jira.agile.darkfeature.sprint.goal.enabled\",\"jira.zdu.admin-updates-ui\",\"sd.customerportal.customization.enabled\",\"jira.zdu.jmx-monitoring\",\"sd.sla.improved.rendering.enabled\",\"sd.canned.responses.enabled\",\"mail.batching.enabled\",\"sd.new.settings.sidebar.location.disabled\",\"crowd.event.transformer.directory.manager.cache\",\"jira.zdu.cluster-upgrade-state\",\"com.atlassian.jira.email.templates.readFromJiraHome\",\"com.atlassian.jira.agile.darkfeature.splitissue\",\"crowd.sync.delete.user.memberships.batching.enabled\",\"com.atlassian.jira.config.CoreFeatures.LICENSE_ROLES_ENABLED\",\"jira.export.csv.enabled\"],\"feature-flag-states\":{\"com.atlassian.jira.in.product.diagnostics.extended.logging\":false,\"com.atlassian.jira.agile.darkfeature.handle.ug.usernames\":true,\"sd.custom.email.stripping.rules\":false,\"sd.automation.then.action.edit.issue.custom.fields\":true,\"com.atlassian.diagnostics.scheduler.monitor\":true,\"insight.index.memory.improvement\":true,\"com.atlassian.jira.webhookEventsAsyncProcessing\":false,\"insight.connections.index.memory.improvement\":true,\"jira.customfields.dual.list.box\":true,\"com.atlassian.jira.serAllowShareWithNonMember\":true,\"sd.confluence.redirect.with.jwt.token.agent\":true,\"never.display.assets.rebrand.onboarding\":false,\"sd.comment.reactions\":true,\"com.atlassian.jira.issuetable.move.links.hidden\":true,\"jira.renderer.consider.variable.format\":true,\"sd.internal.base.heartbeat.automatic.renewal.events\":true,\"com.atlassian.jira.plugin.issuenavigator.jql.autocomplete.eagerlyLoaded\":false,\"insight.index.object.type.children\":true,\"com.atlassian.portfolio.dcBundling\":true,\"assets.async.batch.cache.replication\":false,\"sd.automation.then.webhook.custom.payload\":true,\"com.atlassian.jira.sharedEntityEditRights\":true,\"sd.use.search.by.permissions\":true,\"com.atlassian.jira.agile.darkfeature.sprint.goal\":true,\"sd.automation.ruleset.cache\":true,\"jira.cluster.monitoring.show.offline.nodes\":true,\"sd.confluence.cloud.integration\":true,\"sd.kb.cloud.always.primary\":false,\"sd.approval.requested.when.handler\":true,\"com.atlassian.jira.commentReactions\":true,\"com.atlassian.jira.custom.csv.escaper\":true,\"com.atlassian.jira.fixedCommentDeletionNotifications\":true,\"com.atlassian.jira.plugin.issuenavigator.filtersUxImprovment\":true,\"com.atlassian.jira.allThumbnailsDeferred\":false,\"jira.customfields.cleanup.identification\":true,\"com.atlassian.jira.defaultValuesForSystemFields\":true,\"com.atlassian.jira.in.product.diagnostics.wip\":false,\"sd.queue.react.table\":true,\"sd.automation.then.action.archive.issue\":true,\"sd.customerportal.sla.customer.visibility\":true,\"insight.disable.setup.import.with.scheduled.sync.by.default\":true,\"jira.customfields.bulk.delete\":true,\"sd.email.analytics.open\":false,\"com.atlassian.jira.agile.darkfeature.synced.sprints\":false,\"sd.email.block.list.support\":true,\"sd.kb.cloud.allow.http\":false,\"com.atlassian.jira.returnDefaultAvatarsForBrokenAvatars\":true,\"jira.jql.suggestrecentfields\":false,\"com.atlassian.jira.gdpr.rtbf\":true,\"com.atlassian.jira.issue.comments.updateIssueObjectBeforeEventTrigger\":true,\"sd.share.request.with.group\":false,\"com.atlassian.jira.security.xsrf.session.token\":true,\"sd.dismiss.all.misconfiguration.warnings.setting\":true,\"com.atlassian.jira.security.project.admin.revoke.with.application.access\":true,\"com.atlassian.jiranomenclature\":true,\"sd.canned.responses.variable.substitution\":true,\"com.atlassian.diagnostics.http.monitor\":true,\"com.atlassian.jira.agile.darkfeature.future.sprint.dates\":true,\"jira.customfields.paginated.ui\":true,\"insight.db.import.h2.enable\":false,\"sd.incident.management.feature.polling\":true,\"insight.import.disk.cache\":true,\"com.atlassian.jira.advanced.audit.log\":true,\"sd.priorities.per.project\":true,\"sd.automatiLine truncated
|
||||
WRM._unparsedData["jira.request.correlation-id"]="\"7fe9a308ce6cb0\"";
|
||||
WRM._unparsedData["tzdetect.pref.tzid"]="\"Europe/Berlin\"";
|
||||
if(window.WRM._dataArrived)window.WRM._dataArrived();</script>
|
||||
<link rel="stylesheet" href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/batch.css" data-wrm-key="_super" data-wrm-batch-type="context" media="all">
|
||||
<link rel="stylesheet" href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.auiplugin_split_aui.pattern.label.css" data-wrm-key="com.atlassian.auiplugin:split_aui.pattern.label" data-wrm-batch-type="resource" media="all">
|
||||
<link rel="stylesheet" href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.auiplugin_split_aui.splitchunk.16f099a0da.css" data-wrm-key="com.atlassian.auiplugin:split_aui.splitchunk.16f099a0da" data-wrm-batch-type="resource" media="all">
|
||||
<link rel="stylesheet" href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/jira.webresources_a11y-overrides.css" data-wrm-key="jira.webresources:a11y-overrides" data-wrm-batch-type="resource" media="all">
|
||||
<link rel="stylesheet" href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/jira.webresources_global-static.css" data-wrm-key="jira.webresources:global-static" data-wrm-batch-type="resource" media="all">
|
||||
<script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/batch.js.Herunterladen" data-wrm-key="_super" data-wrm-batch-type="context" data-initially-rendered=""></script>
|
||||
<script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.auiplugin_split_aui.pattern.label.js.Herunterladen" data-wrm-key="com.atlassian.auiplugin:split_aui.pattern.label" data-wrm-batch-type="resource" data-initially-rendered=""></script>
|
||||
<script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.auiplugin_split_aui.splitchunk.16f099a0da.js.Herunterladen" data-wrm-key="com.atlassian.auiplugin:split_aui.splitchunk.16f099a0da" data-wrm-batch-type="resource" data-initially-rendered=""></script>
|
||||
<script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.auiplugin_split_aui.pattern.table.js.Herunterladen" data-wrm-key="com.atlassian.auiplugin:split_aui.pattern.table" data-wrm-batch-type="resource" data-initially-rendered=""></script>
|
||||
<script>
|
||||
window.WRM=window.WRM||{};window.WRM._unparsedData=window.WRM._unparsedData||{};window.WRM._unparsedErrors=window.WRM._unparsedErrors||{};
|
||||
WRM._unparsedData["com.atlassian.plugins.atlassian-plugins-webresource-plugin:context-path.context-path"]="\"/jira\"";
|
||||
if(window.WRM._dataArrived)window.WRM._dataArrived();</script>
|
||||
<script type="module">WRM.requireLazily(["wr!com.atlassian.auiplugin:split_aui.splitchunk.4b52f9e2be","wr!com.atlassian.auiplugin:split_aui.splitchunk.056561461c","wr!com.atlassian.auiplugin:split_aui.splitchunk.949297951c","wr!com.atlassian.auiplugin:split_aui.splitchunk.d7c46c2734","wr!com.atlassian.auiplugin:split_aui.splitchunk.56dfb54d0c","wr!com.atlassian.auiplugin:split_aui.splitchunk.462ee5f9ef","wr!com.atlassian.auiplugin:split_aui.splitchunk.3d2cb1af14","wr!com.atlassian.auiplugin:split_aui.component.flag","wr!com.atlassian.auiplugin:split_aui.splitchunk.fb15cffa72","wr!com.atlassian.auiplugin:split_aui.splitchunk.908fe798b4","wr!com.atlassian.auiplugin:split_aui.splitchunk.50dca3e042","wr!com.atlassian.auiplugin:split_aui.splitchunk.862f26d10a","wr!com.atlassian.auiplugin:split_aui.splitchunk.b2ecdd4179","wr!com.atlassian.auiplugin:split_aui.splitchunk.7da3927366","wr!com.atlassian.auiplugin:split_aui.splitchunk.141abf7fb1","wr!com.atlassian.auiplugin:split_aui.splitchunk.4a667cc1ee","wr!com.atlassian.auiplugin:split_aui.splitchunk.3db8886820","wr!com.atlassian.auiplugin:split_aui.splitchunk.5b8c290363","wr!com.atlassian.auiplugin:split_aui.splitchunk.b652d2668a","wr!com.atlassian.auiplugin:split_aui.splitchunk.b548966f06","wr!com.atlassian.auiplugin:split_aui.splitchunk.f5244b0828","wr!com.atlassian.auiplugin:split_aui.component.async-header","wr!com.atlassian.auiplugin:split_aui.splitchunk.d925afe2c0","wr!com.atlassian.auiplugin:split_aui.deprecated.component.dropdown1","wr!com.atlassian.auiplugin:split_aui.deprecated.component.dialog1","wr!com.atlassian.auiplugin:split_aui.component.tabs","wr!jira.webresources:icons","wr!com.atlassian.jira.jira-tzdetect-plugin:tzdetect-banner-component","wr!jira.webresources:almond","wr!com.atlassian.plugins.jquery:jquery-lib","wr!com.atlassian.plugins.jquery:jquery-browser","wr!com.atlassian.plugins.jquery:jquery-migrate","wr!jira.webresources:jira-logger","wr!jira.webresources:jquery","wr!jira.webresources:jira-data-stores","wr!com.atlassian.plugins.atlassian-plugins-webresource-plugin:root","wr!com.atlassian.plugins.atlassian-plugins-webresource-plugin:data","wr!com.atlassian.plugins.atlassian-plugins-webresource-plugin:context-path","wr!com.atlassian.auiplugin:common-runtime","wr!com.atlassian.auiplugin:split_aui.splitchunk.71c59684a5","wr!com.atlassian.auiplugin:split_aui.splitchunk.444efc83be","wr!com.atlassian.auiplugin:split_aui.splitchunk.739b9ec8cc","wr!com.atlassian.auiplugin:split_aui.splitchunk.994e478d48","wr!com.atlassian.auiplugin:split_aui.splitchunk.479fe6ee76","wr!com.atlassian.auiplugin:split_aui.splitchunk.2e16019fb9","wr!com.atlassian.auiplugin:split_aui.splitchunk.8771ceac91","wr!com.atlassian.auiplugin:split_aui.splitchunk.7873ba9060","wr!com.atlassian.auiplugin:split_aui.splitchunk.0fc208f3fe","wr!com.atlassian.auiplugin:split_aui.splitchunk.2a34183e72","wr!com.atlassian.auiplugin:split_aui.core","wr!jira.webresources:jira-util-strings","wr!jira.webresources:jira-metadata","wr!com.atlassian.plugins.atlassian-plugins-webresource-plugin:format","wr!jira.webresources:jira-formatter","wr!jira.webresources:deprecator","wr!jira.webresources:legacy-namespacing","wr!jira.webresources:jira-smart-ajax","wr!com.atlassian.auiplugin:split_aui.splitchunk.vendors--894c8113d9","wr!com.atlassian.auiplugin:split_aui.splitchunk.dd803a46b4","wr!com.atlassian.auiplugin:split_aui.splitchunk.e54c7c7304","wr!com.atlassian.auiplugin:split_aui.splitchunk.f1e06f97a4","wr!com.atlassian.auiplugin:split_aui.splitchunk.f673ef53ac","wr!com.atlassian.auiplugin:split_aui.splitchunk.8659b532c1","wr!com.atlassian.auiplugin:split_aui.splitchunk.5f851f97df","wr!com.atlassian.auiplugin:split_aui.splitchunk.afa5039e04","wr!com.atlassian.auiplugin:split_aui.splitchunk.ec75f48bb8","wr!jira.webresources:wrm-data","wr!jira.webresources:wrm-context-path","wr!jira.webresources:messages","wr!com.atlassian.auiplugin:split_aui.splitchunk.d0110a864f","wr!com.atlassian.auiplugin:split_aui.splitchunk.bff3715233","wr!com.atlassian.auiplugin:split_aui.splitchunk.26116b3cbd","wr!com.atlassian.auiplugin:split_aui.splitchunk.c750721820","wr!com.atlassian.auiplugin:split_aui.splitchunk.6d6f245ed3","wr!com.atlassian.auiplugin:split_aui.splitchunk.7253827cf8","wr!com.atlassian.auiplugin:split_aui.side-effects","wr!jira.webresources:jira-layer-interactions","wr!com.atlassian.auiplugin:split_aui.splitchunk.vendors--95c789edf5","wr!com.atlassian.auiplugin:split_aui.splitchunk.vendors--9c48cc20a9","wr!com.atlassian.auiplugin:split_aui.splitchunk.vendors--105edd7c71","wr!com.atlassian.auiplugin:split_aui.splitchunk.vendors--d2297af84a","wr!com.atlassian.auiplugin:split_aui.splitchunk.9c48cc20a9","wr!com.atlassian.auiplugin:split_aui.splitchunk.ed86a19e01","wr!com.atlassian.auiplugin:split_aui.splitchunk.084821f40b","wr!com.atlassian.auiplugin:split_aui.splitchunk.baa83dbaf9","wr!com.atlassian.auiplugin:split_aui.splitchunk.e5af17b48e","wr!com.atlassian.auiplugin:split_aui.splitchunk.f154095da3","wrLine truncated
|
||||
<style type="text/css">
|
||||
|
||||
.tableBorder, .grid
|
||||
{
|
||||
background-color: #fff;
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
.tableBorder td, .grid td
|
||||
{
|
||||
vertical-align: top;
|
||||
padding: 2px;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.noPadding
|
||||
{
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
h3 .subText
|
||||
{
|
||||
font-size: 60%;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.tabLabel
|
||||
{
|
||||
font-weight: bold;
|
||||
border: 1px solid #ccc;
|
||||
border-bottom:none;
|
||||
padding: 2px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
td.blank
|
||||
{
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.blank td
|
||||
{
|
||||
border: none;
|
||||
}
|
||||
|
||||
#descriptionArea
|
||||
{
|
||||
margin: 0;
|
||||
padding: 2px;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
|
||||
hr
|
||||
{
|
||||
border-top:1px solid #aaa;
|
||||
}
|
||||
|
||||
hr.fullcontent
|
||||
{
|
||||
height: 15px;
|
||||
padding: 10px 0;
|
||||
background: #fff url('https://devhub.defence-elec.de/jira/images/icons/hr.gif') no-repeat scroll center;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<link href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/batch(1).css" rel="stylesheet"><link href="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.jira.jira-tzdetect-plugin_tzdetect-banner-component.css" rel="stylesheet"><script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/batch.js(1).Herunterladen"></script><script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.jira.jira-tzdetect-plugin_tzdetect-banner-component.js.Herunterladen"></script><script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/com.atlassian.jira.jira-tzdetect-plugin_tzdetect-lib.js.Herunterladen"></script><script src="./[#GUEZE-1897] 3D Wirksim - Umstellung Minensperre_Gasse_files/batch.js(2).Herunterladen"></script></head>
|
||||
<body data-aui-version="9.3.17">
|
||||
<header id="previous-view">
|
||||
<nav class="aui-toolbar">
|
||||
<div class="toolbar-split toolbar-split-right">
|
||||
<ul class="toolbar-group">
|
||||
<li class="toolbar-item">
|
||||
<a href="https://devhub.defence-elec.de/jira/browse/GUEZE-1897" class="toolbar-trigger">Back to previous view</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
<table class="tableBorder" cellpadding="0" cellspacing="0" border="0" width="100%">
|
||||
<tbody><tr>
|
||||
<td bgcolor="#f0f0f0" width="100%" colspan="2" valign="top">
|
||||
<h3 class="formtitle">
|
||||
[GUEZE-1897] <a href="https://devhub.defence-elec.de/jira/browse/GUEZE-1897">3D Wirksim - Umstellung Minensperre/Gasse</a>
|
||||
<span class="subText">
|
||||
Created: 04.08.2023 Updated: 14.08.2023
|
||||
|
||||
</span>
|
||||
</h3>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="20%"><b>Status:</b></td>
|
||||
<td width="80%">In Progress</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="20%"><b>Project:</b></td>
|
||||
<td width="80%"><a href="https://devhub.defence-elec.de/jira/secure/BrowseProject.jspa?id=11900">GÜZ-Erneuerung</a></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><b>Component/s:</b></td>
|
||||
<td>
|
||||
<a title="EXCON" href="https://devhub.defence-elec.de/jira/issues/?jql=project%3D11900%20AND%20%22component%22%3D12202%20ORDER%20BY%20priority%20ASC">EXCON</a> </td>
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td><b>Affects Version/s:</b></td>
|
||||
<td>
|
||||
None
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td><b>Fix Version/s:</b></td>
|
||||
<td>
|
||||
None
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody></table>
|
||||
|
||||
<br>
|
||||
<table class="grid" cellpadding="0" cellspacing="0" border="0" width="100%">
|
||||
<tbody><tr>
|
||||
<td bgcolor="#f0f0f0" valign="top" width="20%">
|
||||
<b>Type:</b>
|
||||
</td>
|
||||
<td bgcolor="#ffffff" valign="top" width="30%">
|
||||
Task
|
||||
</td>
|
||||
|
||||
<td bgcolor="#f0f0f0">
|
||||
<b>Priority:</b>
|
||||
</td>
|
||||
<td bgcolor="#ffffff" valign="top" nowrap="">
|
||||
Medium
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" valign="top" width="20%">
|
||||
<b>Reporter:</b>
|
||||
</td>
|
||||
<td bgcolor="#ffffff" valign="top" width="30%">
|
||||
<a class="user-hover" rel="karwat_p" id="word_reporter_karwat_p" href="https://devhub.defence-elec.de/jira/secure/ViewProfile.jspa?name=karwat_p">Karwat, Patric</a>
|
||||
</td>
|
||||
|
||||
<td bgcolor="#f0f0f0" width="20%">
|
||||
<b>Assignee:</b>
|
||||
</td>
|
||||
<td bgcolor="#ffffff" valign="top" nowrap="" width="30%">
|
||||
<a class="user-hover" rel="rudolphus_g" id="word_assignee_rudolphus_g" href="https://devhub.defence-elec.de/jira/secure/ViewProfile.jspa?name=rudolphus_g">Rudolphus, Gerlinde</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%">
|
||||
<b>Resolution:</b>
|
||||
</td>
|
||||
<td bgcolor="#ffffff" valign="top" width="30%" nowrap="">
|
||||
Unresolved
|
||||
</td>
|
||||
<td bgcolor="#ffffff" colspan="2"> </td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%">
|
||||
<b>Labels:</b>
|
||||
</td>
|
||||
<td id="labels-277754-value" class="value" bgcolor="#ffffff" valign="top" colspan="3" nowrap="">
|
||||
None
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%"><b>Remaining Estimate:</b></td>
|
||||
<td bgcolor="#ffffff" valign="top" nowrap="" width="80%" colspan="3">
|
||||
75h
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%"><b>Time Spent:</b></td>
|
||||
<td bgcolor="#ffffff" valign="top" nowrap="" width="80%" colspan="3">
|
||||
Not Specified
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%"><b>Original Estimate:</b></td>
|
||||
<td bgcolor="#ffffff" valign="top" nowrap="" width="80%" colspan="3">
|
||||
75h
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody></table>
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
<table class="grid" cellpadding="0" cellspacing="0" border="0" width="100%">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<tbody><tr>
|
||||
<td bgcolor="#f0f0f0" width="20%" valign="top"><b>Epic Link:</b></td>
|
||||
<td id="customfield_10101-277754-value" class="value" bgcolor="#ffffff" width="80%">
|
||||
<a class="aui-label ghx-label-5" href="https://devhub.defence-elec.de/jira/browse/GUEZE-1645">
|
||||
3D-Wirksim
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%" valign="top"><b>Sprint:</b></td>
|
||||
<td id="customfield_10105-277754-value" class="value" bgcolor="#ffffff" width="80%">EXCON - Flumph</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#f0f0f0" width="20%" valign="top"><b>Commitment:</b></td>
|
||||
<td id="customfield_11500-277754-value" class="value" bgcolor="#ffffff" width="80%"> committed
|
||||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
|
||||
<br>
|
||||
|
||||
<table cellpadding="2" cellspacing="0" border="0" width="100%" align="center">
|
||||
<tbody><tr>
|
||||
<td bgcolor="#bbbbbb" width="1%" nowrap="" align="center">
|
||||
<font color="#ffffff"><b>Description</b></font>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
|
||||
<table cellpadding="0" cellspacing="0" border="0" width="100%">
|
||||
<tbody><tr>
|
||||
<td id="descriptionArea">
|
||||
<p>LAfo 12.1: Die Wirksimulation der Minensperre oder –gasse muss um die zentrale Wirksimulation erweitert werden.<br>
|
||||
LAfo 12.3: Die zentrale Wirksimulation von Minensperren/-gassen muss sowohl GPS-basierte, als auch OPS-basierte Positionsmeldungen auswerten können.<br>
|
||||
LAfo 12.7: Minensperren/<del>gassen dürfen nur im Gebäudeaußenbereich (OPS</del> und GPS-Bereich) wirksam sein.<br>
|
||||
LAfo 12.10: Wenn ein Teilnehmer in den Wirkbereich einer Einzelmine kommt, muss dies der TNE zur weiteren Berechnung des Verwundungs- und Schadensmodells übermittelt werden.<br>
|
||||
LAfo</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p>Die Verarbeitung von Minensperren und Gassen muss um die zentrale Wirksimulation erweitert werden.<br>
|
||||
Die Minengassen sollten eigentlich keine Verabeitung benötigen, sondern müssten dereits im AES ausgelöst werden (wir dürften nur nicht die deaktiverten Minen raus schicken im Tab)<br>
|
||||
Die Minensperren müssen im GPS und AußenIPS (ops) Bereich ähnlich wie in AHTC verarbeitet werden.</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><b><span class="error">[DoD]</span>:</b></p>
|
||||
<ul>
|
||||
<li>Treffer ausgelöster Minen, die von zentral berechneten Minensperren erzeugt werden, müssen von der Appl. SW Zentrale berechnet werden.</li>
|
||||
<li>Treffer ausgelöster Minen, die von zentral berechneten Minensperren erzeugt werden, müssen direkt an die Teilnehmer via Telegramm TREFFERAUSLOESUNG_SEKUNDÄRWIRKUNG übertragen werden.</li>
|
||||
<li>Spuren von Minenräumfahrzeugen müssen wie bei dezentralen Minensperren Minengassen bilden.</li>
|
||||
<li>Die zentrale Wirksimulation von Minensperren/-gassen muss sowohl GPS-basierte, als auch OPS-basierte Positionsmeldungen auswerten können.</li>
|
||||
<li>Positionen in unterirdischen Gebäuden, dürfen nicht bei der Verarbeitung von Minensperren betrachtet werden.</li>
|
||||
<li>Teilnehmer, deren Position sich innerhalb eines Gebäudes befindet, müssen von der Wirkung von Minen ausgeschlossen sein.</li>
|
||||
<li>Teilnehmer, deren Position sich im Außenbereich von Gebäuden befinden, müssen von der Wirkung von Minen betroffen sein.</li>
|
||||
<li>Teilnehmer, deren Position sich im Außenbereich von Gebäuden befinden, müssen Minen auslösen können.</li>
|
||||
<li>Die zentrale Wirksimulation muss für einen Tln alle virtuellen Minen berücksichtigen, die in einem wirkenden senkrechten Abstand zu einer geraden Verbindungslinie zwischen zwei gemeldeten Positionen liegen. Abhängig von der Funklast kann der Abstand größer als der Mindestabstand (Pers: 10m, Fzg: 20m) sein, da die neueste Position bei der Übertragung höhere Priorität als ältere hat.</li>
|
||||
<li>Die zentrale Wirksimulation muss zur Berücksichtigung mehrerer Minentreffer zwischen zwei Positionen von der vorletzten Position beginnend, nacheinander das Betreten aller Minenwirkbereiche an den Tln übermitteln solange kein Totalausfall vorliegt.</li>
|
||||
<li>Vor Übermittlung eines weiteren Minenwirkbereiches muss das Trefferergebnis des vorigen Minentreffers abgewartet werden. Ab einem Totalausfall dürfen keine weiteren Wirkbereiche an den Tln übermittelt werden (ein ausgefallener Tln soll keine weiteren Minen auslösen).</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>Bemerkung: Es ist zu beachten, dass die Treffermeldung ebenfalls eine Position enthält. Diese ist nicht die Position der Mine, sondern die aktuelle Tln.position zum Zeitpunkt des Treffers. Diese befindet sich bereits jenseits der letzten Positionsmeldung.</p>
|
||||
<ul>
|
||||
<li>Die Mine, deren Wirkbereich als betreten an einen Tln gesendet wird, muss EXCON-intern als ausgelöst gekennzeichnet werden und kann nicht wieder auslösen.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
|
||||
<br>
|
||||
|
||||
<table cellpadding="2" cellspacing="0" border="0" width="100%" align="center">
|
||||
<tbody><tr>
|
||||
<td bgcolor="#bbbbbb" width="1%" nowrap="" align="center">
|
||||
<font color="#ffffff"><b>Comments</b></font>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
|
||||
<table cellpadding="0" cellspacing="0" border="0" width="100%" class="grid" style="margin: 0;">
|
||||
<tbody><tr id="comment-header-322659"><td bgcolor="#f0f0f0">
|
||||
Comment by
|
||||
<a class="user-hover" rel="rudolphus_g" id="word_commented_rudolphus_g" href="https://devhub.defence-elec.de/jira/secure/ViewProfile.jspa?name=rudolphus_g">Rudolphus, Gerlinde</a>
|
||||
<font size="-2">
|
||||
[
|
||||
<font color="#336699">10.08.2023</font>
|
||||
|
||||
]
|
||||
</font>
|
||||
|
||||
</td></tr>
|
||||
<tr id="comment-body-322659"><td bgcolor="#ffffff">
|
||||
<p><b>Ablauf:</b></p>
|
||||
<ul>
|
||||
<li>CES wertet Participant-Position aus.</li>
|
||||
<li>CES stellt fest, dass ein Participant eine Mine auslöst</li>
|
||||
<li>CES schickt Function Topic cesHitRequest an TAB</li>
|
||||
<li>CES schickt Function-Topic Mie Triggered Request an AES</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>Bei überlagernden Wirkfeldern bricht die Berechnung beim ersten Minentreffer ab.</p>
|
||||
|
||||
<p><b>Welche Teilnehmer sollen durch Minen ausfallen?</b></p>
|
||||
<ul>
|
||||
<li>Filter für Typ Unit, SupportUnit, Support Entity, Aircraft, Vessel, Unknown</li>
|
||||
<li>Nur Teilnehmer mit Ausstattungsnummer</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p><b>Events fuer das EventManagement:</b></p>
|
||||
<ul>
|
||||
<li>Betreten Wirkfeld</li>
|
||||
<li>Verlassen Wirkfeld</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<hr>
|
||||
<p><b>Thema:</b> Vor Übermittlung eines weiteren Minenwirkbereiches muss das Trefferergebnis des vorigen Minentreffers abgewartet werden. Ab einem Totalausfall dürfen keine weiteren Wirkbereiche an den Tln übermittelt werden (ein ausgefallener Tln soll keine weiteren Minen auslösen).</p>
|
||||
|
||||
<p>Zeitlicher Ablauf:</p>
|
||||
<ul>
|
||||
<li>TrefferEreignis Sekundärwirkung von EXCON zur TNE</li>
|
||||
<li>StateChangeIndirect (53) von der TNE zur EXCON</li>
|
||||
<li>EXCON (TAB) erzeugt </li>
|
||||
</ul>
|
||||
|
||||
|
||||
<ul class="alternate" type="square">
|
||||
<li>ParticipantPosition Zeit 1</li>
|
||||
<li>DynamicParticipantData Zeit 2 (Totalausfall möglich)</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>=> CES hat noch kein Kriterium, ob die Positionsmeldung zu einem StateChangeDirect mit Totalausfall gehört.</p>
|
||||
|
||||
<p>=> CES kann erst die darauf folgende nächste Positionsmeldung richtig behandeln, wenn der Totalausfall bei CES bekannt ist.</p>
|
||||
|
||||
<p>=> Mögliche Lösung: Das Participant-Management schickt erst DynamicParticipantData und danach die Position.</p>
|
||||
</td></tr>
|
||||
</tbody></table>
|
||||
Generated at Wed Aug 16 12:38:53 CEST 2023 by Rudolphus, Gerlinde using Jira 9.7.0#970000-sha1:4e8a95b597841460ba2dbf0421fff1bad83dcc10.
|
||||
|
||||
|
||||
</body></html>
|
||||
+1166
File diff suppressed because it is too large.
Load diff
+155
@@ -0,0 +1,155 @@
|
||||
/**
|
||||
* Handler for player data
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
* Created by gr, SLSE, 2017-02-20
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <CentralEffectSimulation/logger.h>
|
||||
|
||||
#include <CentralEffectSimulation/dds_handler.h>
|
||||
#include <CentralEffectSimulation/aes_item_view_utm.h>
|
||||
#include <CentralEffectSimulation/handler_participant.h>
|
||||
|
||||
#include <QtCore/QHash>
|
||||
#include <QtCore/QObject>
|
||||
#include <QtCore/QQueue>
|
||||
#include <QtCore/QPointF>
|
||||
#include <QtGui/QPolygonF>
|
||||
|
||||
// AES-Handling for participants
|
||||
namespace CesMineAreas
|
||||
{
|
||||
enum class EffectType
|
||||
{
|
||||
Unknown = 0,
|
||||
EffectiveMineRangeEnter = 0xf0000 | 1, // AtMineAreaSingleMines = 15 = 0xf
|
||||
EffectiveMineRangeLeave = 0xf0000 | 2, // AtMineAreaSingleMines = 15 = 0xf
|
||||
NContaminationLeave = 0x10000 | 0, // AtNContamination = 1
|
||||
NContaminationEnterArea1 = 0x10000 | 1,
|
||||
NContaminationEnterArea2 = 0x10000 | 2,
|
||||
NContaminationDetonation = 0x10000 | 255,
|
||||
FunctionalAreaLeave = 0xc0000 | 0, // AtReconArea = 12 = 0xc
|
||||
FunctionalAreaEnter = 0xc0000 | 1,
|
||||
ExplosionArea = 0x30000 | 2, // AtExplosionArea = 3
|
||||
ExplosionSingle = 0x40000 | 3, // AtExplosionSingle = 4
|
||||
BCContaminationLeave = 0x20000 | 0, // AtBCContamination = 2
|
||||
BCContaminationEnterFloating = 0x20000 | 1,
|
||||
BCContaminationEnterResident = 0x20000 | 2,
|
||||
BCContaminationEnterFloatingArea = 0x20000 | 3,
|
||||
BeStillWarning = 11,
|
||||
};
|
||||
QString toString(EffectType et);
|
||||
|
||||
struct MineListItem
|
||||
{
|
||||
int aesItemId;
|
||||
qint64 time;
|
||||
qreal distance; // distance from last Position to mine
|
||||
int mineIndex;
|
||||
QPointF minePos;
|
||||
};
|
||||
|
||||
class HandlerMineAreas final: public QObject
|
||||
, protected TrainingAreaBase::Interface::Ftc::SendCesHitReplyHandler
|
||||
, protected AreaEffectSimulation::Interface::Ftc::MineTriggeredReplyHandler
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
HandlerMineAreas(const std::shared_ptr<CentralEffectSimulation::DdsHandler> &ddsHandler,
|
||||
const std::shared_ptr<CentralEffectSimulation::HandlerParticipant> &participantHandler,
|
||||
QObject *parent = nullptr);
|
||||
|
||||
~HandlerMineAreas();
|
||||
|
||||
/**
|
||||
* Initialize the handler to manage information from player management
|
||||
*/
|
||||
bool init();
|
||||
|
||||
protected:
|
||||
void onSendCesHitReply(const Core::FunctionReplyObject &replyObject) override final;
|
||||
void onMineTriggeredReply(const Core::FunctionReplyObject &replyObject) override final;
|
||||
|
||||
private Q_SLOTS:
|
||||
/**
|
||||
* Handle the signals from 'AES'
|
||||
*/
|
||||
void onAesItemViewChanged(const AreaEffectSimulation::AesItemView &data, DataModification modType);
|
||||
void onTriggeredImpactsChanged(const AreaEffectSimulation::TriggeredImpacts &data, DataModification modType);
|
||||
void sendFtcMineTrigger(int aesItemId, int mineIndex);
|
||||
|
||||
private: // methoden
|
||||
void calculateImpacts(const AreaEffectSimulation::TriggeredImpacts &data);
|
||||
void calculateImpacts(const CentralEffectSimulation::AesItemViewUtm &itemView,
|
||||
const QVector<int> &impactsToCheck,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition);
|
||||
void onNewOutdoorPosition(const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition);
|
||||
void onNewParticipantState(const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPos);
|
||||
|
||||
// Checks if a mine has been crossed.
|
||||
// If so, the mine with the smallest distance to the last position should be taken.
|
||||
bool intersectMineRadiusCheck(const CentralEffectSimulation::AesItemViewUtm &itemView, const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition);
|
||||
|
||||
qreal crossCircle(const QPointF ¢erUtm, const double radius, const int participantId, int zone);
|
||||
bool inCircle(const QPointF ¢erUtm, const double radius, const QPointF &pointUtm);
|
||||
bool intersectsBoundingBoxCheck(const CentralEffectSimulation::AesItemViewUtm &itemView, const int participantId);
|
||||
bool inBoundingBoxCheck(const CentralEffectSimulation::AesItemViewUtm &itemView, const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition);
|
||||
bool inFormCheck(const CentralEffectSimulation::AesItemViewUtm &itemView, const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition);
|
||||
bool inExtededFormCheck(const CentralEffectSimulation::AesItemViewUtm &itemView,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition) const;
|
||||
double distancePointLine(const QPointF &p, const QPointF &l1,
|
||||
const QPointF &l2) const;
|
||||
double squareLen(const QPointF &p1, const QPointF &p2) const;
|
||||
|
||||
bool intersectFormCheck(const CentralEffectSimulation::AesItemViewUtm &itemView, const int participantId);
|
||||
void sendCesHitRequest(const CentralEffectSimulation::AesItemViewUtm &itemView,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition,
|
||||
qint64 effectTime,
|
||||
int mineFieldBitIndex = 0);
|
||||
void sendCesHitRequest(const AreaEffectSimulation::AesItemView &itemView,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition,
|
||||
qint64 effectTime,
|
||||
int mineFieldBitIndex = 0);
|
||||
void sendParticipantEventEnterLeave(const CentralEffectSimulation::AesItemViewUtm &itemView,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition,
|
||||
const bool inFormCheckResult);
|
||||
void sendParticipantEvent(const CentralEffectSimulation::AesItemViewUtm &itemView,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition, const ProjectDataManagement::EventType eventType);
|
||||
void sendEffectTypeEvent(const CentralEffectSimulation::AesItemViewUtm &itemView,
|
||||
const CentralEffectSimulation::HandlerParticipant::CesParticipantData &participantPosition,
|
||||
EffectType effectType,
|
||||
int mineFieldBitIndex,
|
||||
qint64 effectTime);
|
||||
|
||||
ProjectDataManagement::EventType leaveEventTypeForAesType(AreaEffectSimulation::AesType aesTypeId);
|
||||
EffectType leaveEffectTypeForAesType(AreaEffectSimulation::AesType aesTypeId);
|
||||
|
||||
void aesItemViewRemoved(int aesItemId);
|
||||
|
||||
void printAesItemViews();
|
||||
private: // attributes
|
||||
|
||||
std::shared_ptr<CentralEffectSimulation::DdsHandler> m_ddsHandler; ///< Pointer to VOM DDS handler
|
||||
std::shared_ptr<CentralEffectSimulation::HandlerParticipant> m_handlerParticipant;
|
||||
|
||||
QHash<int32_t, int> m_aesItemId2partIdMap;
|
||||
QHash<int, AreaEffectSimulation::TriggeredImpacts> m_triggeredImpacts; // key = aesItemId
|
||||
|
||||
|
||||
// AES-Values
|
||||
QHash<int, CentralEffectSimulation::AesItemViewUtm> m_aesItemViews; // key = aesItemId
|
||||
QQueue<TrainingAreaBase::SendCesHitRequest> m_sendCesHitRequestQueue;
|
||||
QHash<int, QHash<int, ProjectDataManagement::EventType>> m_eventStates; // QHash<aesItemId, QHash<participantId, QSet<EventType>>>
|
||||
QHash<int, QHash<int, QSet<EffectType>>> m_effectTypeStates; // QHash<aesItemId, QHash<participantId, QSet<effectStates>>>
|
||||
QHash<int, QHash<int, QSet<int>>> m_effectTypeBitFieldIndexes; // QHash<aesItemId, QHash<participantId, QSet<mineFieldBitIdx>>>
|
||||
QHash<int, QVector<MineListItem>> m_mineLists; // Key = ParticipantId
|
||||
|
||||
|
||||
CentralEffectSimulation::LOGGER_T &m_logger; ///< Interface to the Logging-Facility
|
||||
};
|
||||
} // namespace CesMineAreas
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
/**
|
||||
* Plugin CES Mine Areas
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
* Created by Gerlinde Rudolphus, SLTE, 2016-04-14
|
||||
*/
|
||||
|
||||
#include "plugin.h"
|
||||
#include <ngldb/db_service_handler.h>
|
||||
|
||||
namespace CesMineAreas
|
||||
{
|
||||
|
||||
|
||||
std::shared_ptr<CentralEffectSimulation::Plugin::Interface> CesMineAreasPlugin::createInterface(CentralEffectSimulation::Plugin::DataProvider *pdp,
|
||||
const std::shared_ptr<DDSConnector::DdsConnector> &dDSConnector,
|
||||
NGL::Settings *settings,
|
||||
CentralEffectSimulation::MainHandler *mainHandler)
|
||||
{
|
||||
return std::make_shared<CesMineAreasInterfaceImpl>(pdp, dDSConnector, settings, mainHandler);
|
||||
}
|
||||
|
||||
|
||||
CesMineAreasInterfaceImpl::CesMineAreasInterfaceImpl(CentralEffectSimulation::Plugin::DataProvider *pdp,
|
||||
const std::shared_ptr<DDSConnector::DdsConnector> &dDSConnector,
|
||||
NGL::Settings *settings,
|
||||
CentralEffectSimulation::MainHandler *mainHandler)
|
||||
: m_pdp(pdp)
|
||||
, m_ddsConnector(dDSConnector)
|
||||
, m_mainHandler(mainHandler)
|
||||
, m_ddsHandler(m_mainHandler->dds())
|
||||
, m_db(m_mainHandler->db())
|
||||
, m_handlerBuildingData(m_mainHandler->handlerBuildingData())
|
||||
, m_handlerParticipant(m_mainHandler->handlerParticipant())
|
||||
, m_logger(CentralEffectSimulation::getLogger("Plugin.MineAreas.CesMineAreasInterfaceImpl"))
|
||||
{
|
||||
Q_UNUSED(settings)
|
||||
}
|
||||
|
||||
CesMineAreasInterfaceImpl::~CesMineAreasInterfaceImpl()
|
||||
{
|
||||
m_handlerMineAreas.reset();
|
||||
}
|
||||
|
||||
|
||||
bool CesMineAreasInterfaceImpl::init(int domainId, int exerciseId)
|
||||
{
|
||||
m_domainId = domainId;
|
||||
m_exerciseId = exerciseId;
|
||||
INFO_LOG(m_logger) << "CesMineAreasInterfaceImpl::init()"
|
||||
<< " m_domainId=" << m_domainId
|
||||
<< " m_exerciseId=" << m_exerciseId;
|
||||
|
||||
// initialize handlerAesData
|
||||
m_handlerMineAreas = std::make_shared<HandlerMineAreas>(m_ddsHandler,
|
||||
m_handlerParticipant,
|
||||
this);
|
||||
|
||||
if (!m_handlerMineAreas->init())
|
||||
{
|
||||
ERROR_LOG(m_logger) << "Initialisation handlerMineAreas failed.";
|
||||
return false;
|
||||
}
|
||||
|
||||
INFO_LOG(m_logger) << "CesMineAreasInterfaceImpl::init() return true";
|
||||
return true;
|
||||
}
|
||||
|
||||
QString CesMineAreasInterfaceImpl::echo(const QString &message)
|
||||
{
|
||||
|
||||
QString ret(QStringLiteral("<<<< %1 >>>> CesMineAreasInterfaceImpl::echo").arg(message));
|
||||
INFO_LOG(m_logger) << "CesMineAreasInterfaceImpl::echo return:" << ret;
|
||||
DEBUG_LOG(m_logger) << "DEBUG: CesMineAreasInterfaceImpl::echo return:" << ret;
|
||||
return ret;
|
||||
}
|
||||
|
||||
} //namespace CesMineAreas
|
||||
@@ -0,0 +1,77 @@
|
||||
/**
|
||||
* Plugin CES Mine Areas
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
* Created by Gerlinde Rudolphus, SLTE, 2016-04-14
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "handler_mine_areas.h"
|
||||
|
||||
#include <DDS/DDSConnector/dds_connector.h>
|
||||
#include <CentralEffectSimulation/ces_plugin_interface.h>
|
||||
#include <CentralEffectSimulation/main_handler.h>
|
||||
#include <CentralEffectSimulation/dds_handler.h>
|
||||
|
||||
#include <QObject>
|
||||
|
||||
|
||||
namespace CesMineAreas
|
||||
{
|
||||
|
||||
class CesMineAreasPlugin : public QObject, public CentralEffectSimulation::Plugin::Plugin
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_PLUGIN_METADATA(IID "special:3:ces.CesMineAreasPlugin")
|
||||
Q_INTERFACES(CentralEffectSimulation::Plugin::Plugin)
|
||||
|
||||
public:
|
||||
CesMineAreasPlugin() = default;
|
||||
~CesMineAreasPlugin() = default;
|
||||
std::shared_ptr<CentralEffectSimulation::Plugin::Interface> createInterface(CentralEffectSimulation::Plugin::DataProvider *pdp,
|
||||
const std::shared_ptr<DDSConnector::DdsConnector> &dDSConnector,
|
||||
NGL::Settings *settings,
|
||||
CentralEffectSimulation::MainHandler *mainHandler) override;
|
||||
|
||||
};
|
||||
|
||||
|
||||
class CesMineAreasInterfaceImpl final : public CentralEffectSimulation::Plugin::Interface
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
CesMineAreasInterfaceImpl(CentralEffectSimulation::Plugin::DataProvider *pdp,
|
||||
const std::shared_ptr<DDSConnector::DdsConnector> &dDSConnector,
|
||||
NGL::Settings *settings,
|
||||
CentralEffectSimulation::MainHandler *mainHandler);
|
||||
~CesMineAreasInterfaceImpl();
|
||||
//bool init();
|
||||
const char *name() const override { return "CentralEffectSimulation2D"; }
|
||||
QString echo(const QString &message) override;
|
||||
|
||||
private Q_SLOTS:
|
||||
bool init(int domainId, int exerciseId) override;
|
||||
private:
|
||||
|
||||
private:
|
||||
CentralEffectSimulation::Plugin::DataProvider *m_pdp{nullptr};
|
||||
std::shared_ptr<DDSConnector::DdsConnector> m_ddsConnector;
|
||||
CentralEffectSimulation::MainHandler *m_mainHandler{nullptr};
|
||||
|
||||
std::shared_ptr<CentralEffectSimulation::DdsHandler> m_ddsHandler;
|
||||
std::shared_ptr<CentralEffectSimulation::DatabaseInterface> m_db;
|
||||
|
||||
std::shared_ptr<CentralEffectSimulation::HandlerBuildingData> m_handlerBuildingData; ///< Pointer to AES Building handler
|
||||
std::shared_ptr<CentralEffectSimulation::HandlerParticipant> m_handlerParticipant; ///< Pointer to handler for all participants
|
||||
|
||||
std::shared_ptr<HandlerMineAreas> m_handlerMineAreas; ///< Pointer to handler for participant outside from Buildings
|
||||
|
||||
|
||||
CentralEffectSimulation::LOGGER_T &m_logger; ///< Interface to the Logging-Facility
|
||||
int m_domainId = 0;
|
||||
int m_exerciseId = 0;
|
||||
};
|
||||
|
||||
} // namespace CesMineAreas
|
||||
@@ -0,0 +1,50 @@
|
||||
/**
|
||||
* Settings for CentralEffectSimulation
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
*/
|
||||
|
||||
#include "settings.h"
|
||||
|
||||
#include <QtCore/QSettings>
|
||||
#include <QtCore/QVariant>
|
||||
#include <nglsettings/nglsettings_settings.h>
|
||||
#include <ngltools/ngltools_filesystem.h>
|
||||
|
||||
namespace CesMineAreas
|
||||
{
|
||||
class NGLSettingsClass : public NGL::Settings
|
||||
{
|
||||
public:
|
||||
NGLSettingsClass()
|
||||
: NGL::Settings(s_iniFile.isEmpty() ? NGL::findProjectConfigFile() : s_iniFile)
|
||||
{}
|
||||
static void setIniFile(const QString &fn)
|
||||
{
|
||||
s_iniFile = fn;
|
||||
}
|
||||
static QString s_iniFile;
|
||||
};
|
||||
QString NGLSettingsClass::s_iniFile;
|
||||
Q_GLOBAL_STATIC(NGLSettingsClass, s)
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
NGL::Settings *Settings::settings()
|
||||
{
|
||||
return s();
|
||||
}
|
||||
//-----------------------------------------------------------------------------
|
||||
void Settings::setIniFile(const QString &ini)
|
||||
{
|
||||
NGLSettingsClass::setIniFile(ini);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// maximaler Zeitraum fuer gespeicherte Minen in [ms]
|
||||
int Settings::cesPeriodStoredMinesOutdated()
|
||||
{
|
||||
return s()->settings()->value(QStringLiteral("CES_MINE_AREAS/PeriodStoredMinesOutdated"), 0).toInt();
|
||||
}
|
||||
|
||||
} // namespace CesMineAreas
|
||||
@@ -0,0 +1,27 @@
|
||||
/**
|
||||
* Settings for CentralEffectSimulation
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include <QString>
|
||||
|
||||
namespace NGL
|
||||
{
|
||||
class Settings;
|
||||
}
|
||||
|
||||
namespace CesMineAreas
|
||||
{
|
||||
namespace Settings
|
||||
{
|
||||
|
||||
NGL::Settings *settings();
|
||||
void setIniFile(const QString &ini);
|
||||
int cesPeriodStoredMinesOutdated();
|
||||
|
||||
}
|
||||
|
||||
} // namespace CesMineAreas
|
||||
Reference in new issue
Block a user