diff --git a/README.md b/README.md
index a7b66b672e701e962adf9c283aefaa70554317c3..fe99a013473fb5166c636de0d25f5bdadbd9b8f5 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,10 @@
# DO178-Compliant Helicopter Simulink System
-This project is for the modular decomposition of a DO178-compliant helicopter Simulink system. The goal is to decompose a flight control computer (FCC) using Simulink-functions.
\ No newline at end of file
+This project is for the modular decomposition of a DO178-compliant helicopter Simulink system.
+
+The goal is to decompose a flight control computer (FCC) using Simulink-functions.
+
+Directory:
+
+\doc all documentation related to the decomposition
+\src all models and source code for the project
\ No newline at end of file
diff --git a/doc/README.md b/doc/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..ea747aa7b0f70e023f64e22dd8f3b25bc76a3759
--- /dev/null
+++ b/doc/README.md
@@ -0,0 +1,7 @@
+# Documentation
+
+This directory includes all notes related to the decomposition of the flight control computer (FCC).
+
+Directory:
+
+\figures all MATLAB and publisher figures related to the decomposition
\ No newline at end of file
diff --git a/doc/notes/do178_notes.docx b/doc/notes/do178_notes.docx
new file mode 100644
index 0000000000000000000000000000000000000000..be32ff33c7a2570a6323656065bef40712053b82
Binary files /dev/null and b/doc/notes/do178_notes.docx differ
diff --git a/src/DO178_Case_Study-master/DO178CaseStudy.prj b/src/DO178_Case_Study-master/DO178CaseStudy.prj
new file mode 100644
index 0000000000000000000000000000000000000000..92c669691d7419ca28ecd9c9227e53d0c27bbe02
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO178CaseStudy.prj
@@ -0,0 +1,2 @@
+
+
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/plans/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_01_Planning/plans/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..72b42d44dd20f1fccb14c775dc5f96f3dbf54ef2
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/plans/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_01_PSAC.docx b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_01_PSAC.docx
new file mode 100644
index 0000000000000000000000000000000000000000..a9f10eceea602ec79717ca09646478fd7367f2e8
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_01_PSAC.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_02_SDP.docx b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_02_SDP.docx
new file mode 100644
index 0000000000000000000000000000000000000000..94e1fa65f42bb2449e4665eaa755b91f02359b0b
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_02_SDP.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_03_SVP.docx b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_03_SVP.docx
new file mode 100644
index 0000000000000000000000000000000000000000..effde532074985c871433ccdbef2101e3d4badf8
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_03_SVP.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_04_SCMP.docx b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_04_SCMP.docx
new file mode 100644
index 0000000000000000000000000000000000000000..299a78de8dc0d5b015b660d3945234b826eaabb7
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_04_SCMP.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_05_SQAP.docx b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_05_SQAP.docx
new file mode 100644
index 0000000000000000000000000000000000000000..398614e736a48ae549fcc9f62bf34116e17d8381
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/plans/MB_11_05_SQAP.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/standards/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_01_Planning/standards/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7925b00ef56a4add9f78c4ab15aeddb35049cf1e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/standards/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_06_SRS.docx b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_06_SRS.docx
new file mode 100644
index 0000000000000000000000000000000000000000..125e1b1d35ab6a9dd8234f4eaa72bed6e2fc15b9
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_06_SRS.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_07_SDS.docx b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_07_SDS.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7c031fc637447b4b4bbdbad404f9cabd1f7f6a90
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_07_SDS.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_08_SCS.docx b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_08_SCS.docx
new file mode 100644
index 0000000000000000000000000000000000000000..b555624227b357b0f2eeb3ae648f5df6e89dc239
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_08_SCS.docx differ
diff --git a/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_23_SMS.docx b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_23_SMS.docx
new file mode 100644
index 0000000000000000000000000000000000000000..595d7189ffdcf707d8be9a24d4b56d102351b979
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_01_Planning/standards/MB_11_23_SMS.docx differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_02_Requirements/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..3f90606f4c28da6184b970f614a519542cc29fa5
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSoftwareRequirements.slmx b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSoftwareRequirements.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..b787392f83a6b6e0a7190f1c2c210f5d80152d26
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSoftwareRequirements.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSoftwareRequirements.slreqx b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSoftwareRequirements.slreqx
new file mode 100644
index 0000000000000000000000000000000000000000..cbaff4e60b5a788e9e96141a87bb2b1190001128
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSoftwareRequirements.slreqx differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSystemRequirements.slmx b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSystemRequirements.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..9bcf1e1bd2401834d61b737a78246054309a1035
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSystemRequirements.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSystemRequirements.slreqx b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSystemRequirements.slreqx
new file mode 100644
index 0000000000000000000000000000000000000000..158bcb1b778bf00cc2bffcd1ba487826b279be5b
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/HelicopterSystemRequirements.slreqx differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/documents/HelicopterSoftwareRequirements_ReqReport.pdf b/src/DO178_Case_Study-master/DO_02_Requirements/specification/documents/HelicopterSoftwareRequirements_ReqReport.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..47801b54f162bc62a55573161b91acec6a850440
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/documents/HelicopterSoftwareRequirements_ReqReport.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/specification/documents/HelicopterSystemRequirements_ReqReport.pdf b/src/DO178_Case_Study-master/DO_02_Requirements/specification/documents/HelicopterSystemRequirements_ReqReport.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..f7f4fb702c12052d4a6b8c20e9fc9cce651022a8
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/specification/documents/HelicopterSystemRequirements_ReqReport.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_02_Requirements/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_02_Requirements/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..1a35f434c902661d66163c201f62720fcf950dbd
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_02_Requirements/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..f7ffd76a9ade5da0922911e6019c991bc5625919
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter.slmx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..c788ebbdf84e86c7aa175a2478dda0050511976f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter.slx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter.slx
new file mode 100644
index 0000000000000000000000000000000000000000..f2fdaf687ca103c8664b514b59bfd1640e4485f2
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_SLDV.slx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_SLDV.slx
new file mode 100644
index 0000000000000000000000000000000000000000..5e0fffa6ec237c9daac18d853c73bfce0e58c1f9
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_SLDV.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_dual_sensor.slx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_dual_sensor.slx
new file mode 100644
index 0000000000000000000000000000000000000000..387ee3d8ce50634df022e3863bde28265db5a27c
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_dual_sensor.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_single_sensor.slx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_single_sensor.slx
new file mode 100644
index 0000000000000000000000000000000000000000..d4fbaf1be2ad5de5ca736d05f5d05abb0fef23ed
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_single_sensor.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_triple_sensor.slx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_triple_sensor.slx
new file mode 100644
index 0000000000000000000000000000000000000000..8107e2e7c5ef3f4ca543c714d581ede1924e5b93
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_Harness_triple_sensor.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_harnessInfo.xml b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_harnessInfo.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4181ec4a897a1ae6fc5bf85d358757198c0fe284
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/AHRS_voter_harnessInfo.xml
@@ -0,0 +1,155 @@
+
+
+
+ AHRS_voter_Harness_SLDV
+ Test harness for SLDV generated test cases.
+ bpotter
+ Thu May 14 12:48:43 2020
+ bpotter
+ Thu May 14 12:48:51 2020
+ bd
+ BD_HARNESS
+ .
+ off
+
+ AHRS_voter_Harness_SLDV.slx
+ 10.0
+ 7b5bbde5-a7e3-4943-8abf-3b82700664d0
+ 0,1,2|0|0,0,0,0||
+ 0
+ 0,0,0,0
+ false
+ false
+ false
+ false
+ AHRS_voter
+ false
+ false
+ yes
+ 1
+ false
+
+ false
+ 0
+ Inport
+ Outport
+
+
+ 2|16|0|0|0|0|0
+
+
+
+ AHRS_voter_Harness_dual_sensor
+
+ bpotter
+ Mon Apr 01 14:17:32 2019
+ bpotter
+ Mon May 11 09:06:18 2020
+ bd
+ BD_HARNESS
+ .
+ off
+
+ AHRS_voter_Harness_dual_sensor.slx
+ 10.0
+ 40e48c2c-fc43-4344-81a8-6f3a5b1e4fd2
+ 0,1,2|0|0,0,0,0||
+ 0
+ 0,0,0,0
+ false
+ false
+ false
+ true
+ AHRS_voter
+ false
+ false
+ no
+ 1
+ false
+
+ false
+ 0
+ Test Sequence
+ Test Assessment
+
+
+ 2|18|0|0|0|0|0
+ ||||AHRS_voter_Harness_dual_sensor
+
+
+ AHRS_voter_Harness_single_sensor
+
+ bpotter
+ Mon Apr 01 13:15:40 2019
+ bpotter
+ Mon May 11 09:06:32 2020
+ bd
+ BD_HARNESS
+ .
+ off
+
+ AHRS_voter_Harness_single_sensor.slx
+ 10.0
+ 001c2c29-5fe0-4af3-a2d6-e881ae221242
+ 0,1,2|0|0,0,0,0||
+ 0
+ 0,0,0,0
+ false
+ false
+ false
+ true
+ AHRS_voter
+ false
+ false
+ no
+ 1
+ false
+
+ false
+ 0
+ Test Sequence
+ Test Assessment
+
+
+ 2|18|0|0|0|0|0
+ ||||AHRS_voter_Harness_single_sensor
+
+
+ AHRS_voter_Harness_triple_sensor
+
+ bpotter
+ Mon Apr 01 14:38:59 2019
+ bpotter
+ Mon May 11 09:07:40 2020
+ bd
+ BD_HARNESS
+ .
+ off
+
+ AHRS_voter_Harness_triple_sensor.slx
+ 10.0
+ 55f93031-c5fa-46ed-8232-6e8c54ab4d7a
+ 0,1,2|0|0,0,0,0||
+ 0
+ 0,0,0,0
+ false
+ false
+ false
+ true
+ AHRS_voter
+ false
+ false
+ no
+ 1
+ false
+
+ false
+ 0
+ Test Sequence
+ Test Assessment
+
+
+ 2|18|0|0|0|0|0
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/documents/AHRS_voter_SDD.pdf b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/documents/AHRS_voter_SDD.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..248be24cd16d15109a6005ccad6a406a94127cd5
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/documents/AHRS_voter_SDD.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/open_AHRS_voter.m b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/open_AHRS_voter.m
new file mode 100644
index 0000000000000000000000000000000000000000..9abd507ebc61a0eec5144c8992842a64ccf7ea9f
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/specification/open_AHRS_voter.m
@@ -0,0 +1,3 @@
+% No data exists.
+% DD_AHRS_Voter;
+AHRS_voter;
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7ee8a1fc9029acdfb0ff5a0c420a6bd4a7319b95
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/design_standard_checks/AHRS_voter_SMS_Conformance_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/design_standard_checks/AHRS_voter_SMS_Conformance_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..0fd43215414f6a1f30bc1fc98467547b7eb9dca6
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/design_standard_checks/AHRS_voter_SMS_Conformance_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_REQ_Based_Model_Coverage.cvt b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_REQ_Based_Model_Coverage.cvt
new file mode 100644
index 0000000000000000000000000000000000000000..194a6a447fc0a70d439aa2f2470b6b6727a9c60e
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_REQ_Based_Model_Coverage.cvt
@@ -0,0 +1,2062 @@
+CV_Database {
+ modelcov {
+ id 1
+ name "AHRS_voter_Harness_single_sensor"
+ refModelcovIds [1 2]
+ topModelcovId [1]
+ }
+ modelcov {
+ id 2
+ name "AHRS_voter"
+ ownerModel "AHRS_voter"
+ ownerBlock "AHRS_voter"
+ harnessModel "AHRS_voter_Harness_triple_sensor"
+ topModelcovId [1]
+ rootTree [0 3 0 0]
+ blockTypes [12 13 14 15 16]
+ }
+ root {
+ id 3
+ modelcov 2
+ topSlsf 17
+ firstTest 4
+ treeNode [2 0 0 0]
+ checksum [2208568053 540170542 2060519990 543039732]
+ metricChecksum [2 0 2 0]
+ dataSize [113 0 0 0 172 0 0]
+ }
+ testdata {
+ id 4
+ modelcov 2
+ ownerBlock "AHRS_voter"
+ ownerModel "AHRS_voter"
+ harnessModel "Not Unique"
+ analyzedModel "AHRS_voter"
+ uniqueId "95445d2c-213e-40f0-99ab-c1682fb7b3c9"
+ aggregatedIds "7e02643a-1c87-4c4f-b908-b58c65e066c0,808436d4-1ddf-4c6a-a187-4a6a29d14d22,f7ab2a41-8cb2-4850-89"
+ "4a-ac0d587d60bc"
+ linkNode [3 0 0]
+ modelVersion "1.69"
+ creator "bpotter"
+ lastModifiedDate "Wed May 13 13:30:04 2020"
+ blockReductionStatus "off"
+ defaultParameterBehavior "Inlined"
+ dbVersion "(R2019b)"
+ conditionallyExecuteInputs 1
+ startTime 737924.5679357755
+ stopTime 737924.5680525347
+ data {
+ decision "100 M113x1[59 0 6 0 2 0 2 0 1699 1304 2 0 2 0 1001 2002 2 0 2 0 303 2700 44 0 10 0 10 0 799 202"
+ " 303 698 101 900 900 101 900 101 10 0 10 0 202 799 900 101 900 101 303 698 900 101 10 0 10 0 202 799 900 101 303"
+ " 698 900 101 101 900 14 0 14 0 202 698 101 202 101 698 202 0 799 799 101 101 101 799 101 6 0 2 0 2 0 1699 1304 2"
+ " 0 2 0 1001 2002 2 0 2 0 303 2700 3 0 3 0 0 1001 1001 1001]"
+ sigrange "100 M172x1[-180 180 -178 179 -179 180 -179 178 -180 178 -178 179 -180 180 -180 179 -178 179 -17"
+ "9 180 -179 178 -179 178 -178 178 -180 180 -178 179 -268.5 268.5 -268.5 268.5 -268.5 268.5 -268.5 268.5 -268.5 26"
+ "8.5 -537 537 -537 537 -537 537 -537 537 -537 537 0 0 0 0 0 0 0 0 0 0 -180 179 -180 179 -180 179 -179 178 -180 17"
+ "8 -179 178 -180 178 -180 178 -180 179 -179 179 -180 178 -179 178 -179 178 -180 178 -180 178 -179 179 -179 179 -1"
+ "79 179 -179 179 -179 179 -180 180 -178 179 -179 180 -179 178 -180 178 -178 179 -180 180 -180 179 -178 179 -179 1"
+ "80 -179 178 -179 178 -178 178 -180 180 -178 179 -537 537 -537 537 -537 537 -537 537 -537 537 0 0 0 0 0 0 0 0 0 0"
+ " -179 179 -179 179 -179 179 -179 179 -179 179 1 3 0 0 0 0 0 0 0 0 0 0]"
+ sfcnCovData "100 T\"TUFUTEFCIDUuMCBNQVQtZmlsZSwgUGxhdGZvcm06IFBDV0lONjQsIENyZWF0ZWQgb246IFdlZCBN\nYXkgMTMg"
+ "MTM6Mzg6MDQgMjAyMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICDzAAAAAAAAAAABSU0PAAAAawAAAHic42NgYNgAxG"
+ "xAzAHEggwQwAjEwkCcnJ+S6pxf5pJYkuhe\nlF9a4J+UBZVnYfB19g8GqZMD4uAcoCq9otTi0pySYj1nNF0MDHxANR5I9vBC7WGF8tmgdjJCxUF8"
+ "\nCQjzLhOSHAiD+AAEtha0DwAAAJwBAAB4nM1UsU7DMBA9p2mgoq3KxicwoW4wViqCdqgYigRbZbVG\nRAQncpyKMDHyOfwQO5/AiB3bjWPSUMTC"
+ "U0/2S947n52r+wAwCgDED/ZFdEChrTkSMQjUKOFpDmg6\nk7wvImmXfq/Gb0I994t3SGtm46u5yXNs5TnUerQZ/UIreU/ERRiRG4aThLDFQvs//N"
+ "Jfrqf4nlOH\n1D+h7fueoKre089aOteLiDcdnyKGSL03OMccQ0pYiKPwGfMwpjDDCSxjynFICUvlDjhhZDWlKcd0\nSVIYxysyjtfSesniLIF5JO"
+ "gJI2kW8RRqIbZc1GQgawvqpRV4Dkf6GarRoRpuom15m/K46Fuj/R12\n6Z8DzU9FPJDcnMwaRxlRJKPhXcweQ55LwXWekI1Ak6LfYHu/lH1X1vlb"
+ "/dDSd7zmfXl65vr8mnV8\nyzcQbHmP2S6+VsXXAkzzYr2J5es5vsCpU/IjNX23e8HMfzonA/ucRpa+6+hNzXaeLnxH8f9vWNfN\nI/Vn0Nx3ANW+"
+ "+2/+V2i+t2/B7i/F7Xvb/u5/ubclvgDA8kwT\n\""
+ }
+ traceOn 1
+ traceData {
+ decision "100 C113x1{M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x2[2 3],M1x3[1 2 3"
+ "],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x2[2 3],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x2[2 3],M1x3[1 2 3],M["
+ "1],M[],M[1],M[],M[1],M[],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[],M[1],M[],M[1],M[1],M[1],M[1]"
+ ",M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[],M[1],M[],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[],M[1]"
+ ",M[],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M[],M[1],M[1],M[1],M[1],M[1],M[1],M[1],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M"
+ "1x3[1 2 3],M[],M1x2[2 3],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x2[2 3],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3["
+ "1 2 3],M[],M1x2[2 3],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M[],M[3],M[2],M[1]}"
+ mcdc "100 C2x1{M[0],M[0]}"
+ }
+ testRunInfo "100 S'runId','runName','testId'{{M[0],T\"\",M[]}}"
+ aggregatedTestInfo "100 S1x3'uniqueId','analyzedModel','description','date','testRunInfo'{{T\"f7ab2a41-8cb2-48"
+ "50-894a-ac0d587d60bc\",T\"AHRS_voter\",T\"\",T\"13-May-2020 13:37:50\",S'runId','runName','testId'{{T\"0073f5d8-c7"
+ "1a-4ebd-b684-b6958da19475\",T\"Mid Value Voting Test Case\",T\"09a8c1a9-ce6a-44a9-a5de-1f45fbafe4f8\"}}},{T\"80843"
+ "6d4-1ddf-4c6a-a187-4a6a29d14d22\",T\"AHRS_voter\",T\"\",T\"13-May-2020 13:37:55\",S'runId','runName','testId'{{T\""
+ "3f10c3fe-b651-47e3-80f1-ef1259c4edf8\",T\"Average Value Voting Test Case\",T\"cf60a07f-2834-4dc4-a431-969ef17ed8b3"
+ "\"}}},{T\"7e02643a-1c87-4c4f-b908-b58c65e066c0\",T\"AHRS_voter\",T\"\",T\"13-May-2020 13:37:59\",S'runId','runName"
+ "','testId'{{T\"be580363-ea39-421d-96de-39b822cd7554\",T\"Single Value Voting Test Case\",T\"908ff87b-0aff-4c29-8d9"
+ "e-f2ecd99ec1ce\"}}}}"
+ reqTestMapInfo "100 S'Requirement','ImplementLink','VerifyLink','ModelItem','Test','Simulation','modelItemMap'"
+ "{{S1x32'Label','URL','ImplementInd','VerifyInd','FullID'{{T\"Imported from HelicopterSoftwareRequirements.docx\",T"
+ "\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','1','')\",M[],M[],T\"Helicopter"
+ "SoftwareRequirements:#1\"},{T\"Introduction\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequi"
+ "rements.slreqx','2','')\",M[],M[],T\"HelicopterSoftwareRequirements:#2\"},{T\"System Description\",T\"matlab:rmi.n"
+ "avigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','3','')\",M[],M[],T\"HelicopterSoftwareRequir"
+ "ements:#3\"},{T\"High-Level Software Requirements\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwar"
+ "eRequirements.slreqx','4','')\",M[],M[],T\"HelicopterSoftwareRequirements:#4\"},{T\"Pilot Input Signal Processing\""
+ ",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','5','')\",M[],M[],T\"Helicopt"
+ "erSoftwareRequirements:#5\"},{T\"Hydraulic Actuator Feedback\",T\"matlab:rmi.navigate('linktype_rmi_slreq','Helico"
+ "pterSoftwareRequirements.slreqx','6','')\",M[],M[],T\"HelicopterSoftwareRequirements:#6\"},{T\"Hydraulic Actuator "
+ "Drive\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','7','')\",M[],M[],T\"H"
+ "elicopterSoftwareRequirements:#7\"},{T\"Hydraulic Actuator Loop Control\",T\"matlab:rmi.navigate('linktype_rmi_slr"
+ "eq','HelicopterSoftwareRequirements.slreqx','8','')\",M[],M[],T\"HelicopterSoftwareRequirements:#8\"},{T\"Multi-Va"
+ "riable Inner Loop Control\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','9"
+ "','')\",M[],M[],T\"HelicopterSoftwareRequirements:#9\"},{T\"Pitch Outer Loop Control\",T\"matlab:rmi.navigate('lin"
+ "ktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','10','')\",M[],M[],T\"HelicopterSoftwareRequirements:#10\""
+ "},{T\"Roll Outer Loop Control\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx"
+ "','11','')\",M[],M[],T\"HelicopterSoftwareRequirements:#11\"},{T\"Yaw Outer Loop Control\",T\"matlab:rmi.navigate("
+ "'linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','12','')\",M[],M[],T\"HelicopterSoftwareRequirements:"
+ "#12\"},{T\"AHRS Validity Check\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreq"
+ "x','13','')\",M1x5[1 2 3 4 5],M1x3[4 5 6],T\"HelicopterSoftwareRequirements:#13\"},{T\"AHRS Input Signal Processin"
+ "g\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','14','')\",M1x6[6 7 8 9 10"
+ " 11],M[],T\"HelicopterSoftwareRequirements:#14\"},{T\"AHRS Voting for Triple Sensors\",T\"matlab:rmi.navigate('lin"
+ "ktype_rmi_slreq','HelicopterSoftwareRequirements.slreqx','15','')\",M1x11[12 15 18 46 47 48 49 50 51 52 53],M[1],T"
+ "\"HelicopterSoftwareRequirements:#15\"},{T\"AHRS Voting for Dual Sensors\",T\"matlab:rmi.navigate('linktype_rmi_sl"
+ "req','HelicopterSoftwareRequirements.slreqx','16','')\",M1x16[13 16 19 33 34 35 36 37 38 39 40 41 42 43 44 45],M[2"
+ "],T\"HelicopterSoftwareRequirements:#16\"},{T\"AHRS Usage of Single Sensor\",T\"matlab:rmi.navigate('linktype_rmi_"
+ "slreq','HelicopterSoftwareRequirements.slreqx','17','')\",M1x15[14 17 20 21 22 23 24 25 26 27 28 29 30 31 32],M[3]"
+ ",T\"HelicopterSoftwareRequirements:#17\"},{T\"Imported from HelicopterSystemRequirements.docx\",T\"matlab:rmi.navi"
+ "gate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','1','')\",M[],M[],T\"HelicopterSystemRequirements:"
+ "#1\"},{T\"Introduction\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','2','')"
+ "\",M[],M[],T\"HelicopterSystemRequirements:#2\"},{T\"System Description\",T\"matlab:rmi.navigate('linktype_rmi_slr"
+ "eq','HelicopterSystemRequirements.slreqx','3','')\",M[],M[],T\"HelicopterSystemRequirements:#3\"},{T\"System Requi"
+ "rements\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','4','')\",M[],M[],T\"H"
+ "elicopterSystemRequirements:#4\"},{T\"Pilot Input Signals\",T\"matlab:rmi.navigate('linktype_rmi_slreq','Helicopte"
+ "rSystemRequirements.slreqx','5','')\",M[],M[],T\"HelicopterSystemRequirements:#5\"},{T\"Hydraulic Actuator Interfa"
+ "ces\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','6','')\",M[],M[],T\"Helic"
+ "opterSystemRequirements:#6\"},{T\"Hydraulic Actuator Signals\",T\"matlab:rmi.navigate('linktype_rmi_slreq','Helico"
+ "pterSystemRequirements.slreqx','7','')\",M[],M[],T\"HelicopterSystemRequirements:#7\"},{T\"Hydraulic Actuator Cont"
+ "rol Loop Performance\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','8','')\""
+ ",M[],M[],T\"HelicopterSystemRequirements:#8\"},{T\"Attitude Heading Reference System Interfaces\",T\"matlab:rmi.na"
+ "vigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','9','')\",M[],M[],T\"HelicopterSystemRequirement"
+ "s:#9\"},{T\"Attitude Rate Tracking Performance\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequ"
+ "irements.slreqx','10','')\",M[],M1x6[7 8 9 10 11 12],T\"HelicopterSystemRequirements:#10\"},{T\"Control Bandwidth\""
+ ",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','11','')\",M[],M[],T\"Helicopte"
+ "rSystemRequirements:#11\"},{T\"Control Gain and Phase Margins\",T\"matlab:rmi.navigate('linktype_rmi_slreq','Helic"
+ "opterSystemRequirements.slreqx','12','')\",M[],M[],T\"HelicopterSystemRequirements:#12\"},{T\"Attitude Rate Author"
+ "ity Limiting\",T\"matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','13','')\",M[],M["
+ "],T\"HelicopterSystemRequirements:#13\"},{T\"Sensor Validation\",T\"matlab:rmi.navigate('linktype_rmi_slreq','Heli"
+ "copterSystemRequirements.slreqx','14','')\",M[],M[],T\"HelicopterSystemRequirements:#14\"},{T\"Sensor Voting\",T\""
+ "matlab:rmi.navigate('linktype_rmi_slreq','HelicopterSystemRequirements.slreqx','15','')\",M[],M[],T\"HelicopterSys"
+ "temRequirements:#15\"}},S1x53'RequirementIdx','ModelItemIdx'{{M[13],M[1]},{M[13],M[2]},{M[13],M[3]},{M[13],M[4]},{"
+ "M[13],M[5]},{M[14],M[3]},{M[14],M[2]},{M[14],M[1]},{M[14],M[6]},{M[14],M[7]},{M[14],M[8]},{M[15],M[9]},{M[16],M[10"
+ "]},{M[17],M[11]},{M[15],M[5]},{M[16],M[5]},{M[17],M[5]},{M[15],M[12]},{M[16],M[12]},{M[17],M[12]},{M[17],M[13]},{M"
+ "[17],M[14]},{M[17],M[15]},{M[17],M[16]},{M[17],M[17]},{M[17],M[18]},{M[17],M[19]},{M[17],M[20]},{M[17],M[21]},{M[1"
+ "7],M[22]},{M[17],M[23]},{M[17],M[24]},{M[16],M[25]},{M[16],M[26]},{M[16],M[27]},{M[16],M[28]},{M[16],M[29]},{M[16]"
+ ",M[30]},{M[16],M[31]},{M[16],M[32]},{M[16],M[33]},{M[16],M[34]},{M[16],M[35]},{M[16],M[36]},{M[16],M[37]},{M[15],M"
+ "[38]},{M[15],M[39]},{M[15],M[40]},{M[15],M[41]},{M[15],M[42]},{M[15],M[43]},{M[15],M[44]},{M[15],M[45]}},S1x12'Req"
+ "uirementIdx','TestIdx'{{M[15],M[1]},{M[16],M[2]},{M[17],M[3]},{M[13],M[3]},{M[13],M[2]},{M[13],M[1]},{M[27],M[4]},"
+ "{M[27],M[5]},{M[27],M[6]},{M[27],M[7]},{M[27],M[8]},{M[27],M[9]}},S1x45'SID','ImplementedInd'{{T\"AHRS_voter:9\",M"
+ "1x2[1 8]},{T\"AHRS_voter:10\",M1x2[2 7]},{T\"AHRS_voter:11\",M1x2[3 6]},{T\"AHRS_voter:50\",M[4]},{T\"AHRS_voter:4"
+ "9\",M1x4[5 15 16 17]},{T\"AHRS_voter:4\",M[9]},{T\"AHRS_voter:3\",M[10]},{T\"AHRS_voter:1\",M[11]},{T\"AHRS_voter:"
+ "12\",M[12]},{T\"AHRS_voter:17\",M[13]},{T\"AHRS_voter:35\",M[14]},{T\"AHRS_voter:2\",M1x3[18 19 20]},{T\"AHRS_vote"
+ "r:36\",M[21]},{T\"AHRS_voter:37\",M[22]},{T\"AHRS_voter:38\",M[23]},{T\"AHRS_voter:41\",M[24]},{T\"AHRS_voter:42\""
+ ",M[25]},{T\"AHRS_voter:40\",M[26]},{T\"AHRS_voter:39\",M[27]},{T\"AHRS_voter:47\",M[28]},{T\"AHRS_voter:46\",M[29]"
+ "},{T\"AHRS_voter:45\",M[30]},{T\"AHRS_voter:44\",M[31]},{T\"AHRS_voter:48\",M[32]},{T\"AHRS_voter:34\",M[33]},{T\""
+ "AHRS_voter:28\",M[34]},{T\"AHRS_voter:20\",M[35]},{T\"AHRS_voter:19\",M[36]},{T\"AHRS_voter:18\",M[37]},{T\"AHRS_v"
+ "oter:27\",M[38]},{T\"AHRS_voter:26\",M[39]},{T\"AHRS_voter:33\",M[40]},{T\"AHRS_voter:32\",M[41]},{T\"AHRS_voter:3"
+ "1\",M[42]},{T\"AHRS_voter:30\",M[43]},{T\"AHRS_voter:29\",M[44]},{T\"AHRS_voter:25\",M[45]},{T\"AHRS_voter:15\",M["
+ "46]},{T\"AHRS_voter:14\",M[47]},{T\"AHRS_voter:13\",M[48]},{T\"AHRS_voter:7\",M[49]},{T\"AHRS_voter:6\",M[50]},{T\""
+ "AHRS_voter:5\",M[51]},{T\"AHRS_voter:8\",M[52]},{T\"AHRS_voter:16\",M[53]}},S1x9'Label','VerifyInd','SimulationInd"
+ "','URL'{{T\"Mid Value Voting Test Case\",M1x2[1 6],M[1],T\"matlab:rmitmnavigate('AHRS_voter_REQ_Based_Test.mldatx'"
+ ",'09a8c1a9-ce6a-44a9-a5de-1f45fbafe4f8');\"},{T\"Average Value Voting Test Case\",M1x2[2 5],M[2],T\"matlab:rmitmna"
+ "vigate('AHRS_voter_REQ_Based_Test.mldatx','cf60a07f-2834-4dc4-a431-969ef17ed8b3');\"},{T\"Single Value Voting Test"
+ " Case\",M1x2[3 4],M[3],T\"matlab:rmitmnavigate('AHRS_voter_REQ_Based_Test.mldatx','908ff87b-0aff-4c29-8d9e-f2ecd99"
+ "ec1ce');\"},{T\"HeliLoopTest:??\",M[7],M[],T\"matlab:rmitmnavigate('HeliLoopTest.mldatx','32741230-8683-47c7-bd9c-"
+ "c1babb931e26');\"},{T\"HeliLoopTest:??\",M[8],M[],T\"matlab:rmitmnavigate('HeliLoopTest.mldatx','1f74d034-0dba-456"
+ "5-9944-17d4d576eb04');\"},{T\"HeliLoopTest:??\",M[9],M[],T\"matlab:rmitmnavigate('HeliLoopTest.mldatx','63258012-1"
+ "31d-4c10-8dcc-cfb7ae2f7f52');\"},{T\"HeliLoopTest:??\",M[10],M[],T\"matlab:rmitmnavigate('HeliLoopTest.mldatx','ca"
+ "66fd26-3aeb-4791-a357-d946f3e2fd1f');\"},{T\"HeliLoopTest:??\",M[11],M[],T\"matlab:rmitmnavigate('HeliLoopTest.mld"
+ "atx','b4dea86c-c2a9-461f-a731-7544f24e77e5');\"},{T\"HeliLoopTest:??\",M[12],M[],T\"matlab:rmitmnavigate('HeliLoop"
+ "Test.mldatx','584aefa9-e859-4ae7-85f2-af5701090b89');\"}},S1x3'RunId','TestIdx','URL','Label'{{T\"0073f5d8-c71a-4e"
+ "bd-b684-b6958da19475\",M[1],T\"matlab:stm.internal.util.highlightTestResult('0073f5d8-c71a-4ebd-b684-b6958da19475'"
+ ");\",T\"T1\"},{T\"3f10c3fe-b651-47e3-80f1-ef1259c4edf8\",M[2],T\"matlab:stm.internal.util.highlightTestResult('3f1"
+ "0c3fe-b651-47e3-80f1-ef1259c4edf8');\",T\"T2\"},{T\"be580363-ea39-421d-96de-39b822cd7554\",M[3],T\"matlab:stm.inte"
+ "rnal.util.highlightTestResult('be580363-ea39-421d-96de-39b822cd7554');\",T\"T3\"}},S1x45'Keys','Values'{{T\"AHRS_v"
+ "oter:1\",M[8]},{T\"AHRS_voter:10\",M[2]},{T\"AHRS_voter:11\",M[3]},{T\"AHRS_voter:12\",M[9]},{T\"AHRS_voter:13\",M"
+ "[40]},{T\"AHRS_voter:14\",M[39]},{T\"AHRS_voter:15\",M[38]},{T\"AHRS_voter:16\",M[45]},{T\"AHRS_voter:17\",M[10]},"
+ "{T\"AHRS_voter:18\",M[29]},{T\"AHRS_voter:19\",M[28]},{T\"AHRS_voter:2\",M[12]},{T\"AHRS_voter:20\",M[27]},{T\"AHR"
+ "S_voter:25\",M[37]},{T\"AHRS_voter:26\",M[31]},{T\"AHRS_voter:27\",M[30]},{T\"AHRS_voter:28\",M[26]},{T\"AHRS_vote"
+ "r:29\",M[36]},{T\"AHRS_voter:3\",M[7]},{T\"AHRS_voter:30\",M[35]},{T\"AHRS_voter:31\",M[34]},{T\"AHRS_voter:32\",M"
+ "[33]},{T\"AHRS_voter:33\",M[32]},{T\"AHRS_voter:34\",M[25]},{T\"AHRS_voter:35\",M[11]},{T\"AHRS_voter:36\",M[13]},"
+ "{T\"AHRS_voter:37\",M[14]},{T\"AHRS_voter:38\",M[15]},{T\"AHRS_voter:39\",M[19]},{T\"AHRS_voter:4\",M[6]},{T\"AHRS"
+ "_voter:40\",M[18]},{T\"AHRS_voter:41\",M[16]},{T\"AHRS_voter:42\",M[17]},{T\"AHRS_voter:44\",M[23]},{T\"AHRS_voter"
+ ":45\",M[22]},{T\"AHRS_voter:46\",M[21]},{T\"AHRS_voter:47\",M[20]},{T\"AHRS_voter:48\",M[24]},{T\"AHRS_voter:49\","
+ "M[5]},{T\"AHRS_voter:5\",M[43]},{T\"AHRS_voter:50\",M[4]},{T\"AHRS_voter:6\",M[42]},{T\"AHRS_voter:7\",M[41]},{T\""
+ "AHRS_voter:8\",M[44]},{T\"AHRS_voter:9\",M[1]}}}}"
+ testobjectives [0 0 0 0 0 0 0 5 6 7 8 9 10 11]
+ mcdcMode 1
+ cvdatagroupUniqueId "9e333cfc-71f7-4ddc-af9f-c5139002fdfc"
+ isDerived 1
+ covSFcnEnable 1
+ }
+ metricdata {
+ id 5
+ metricenumValue 8
+ metricName "cvmetric_Sldv_test"
+ }
+ metricdata {
+ id 6
+ metricenumValue 9
+ metricName "cvmetric_Sldv_proof"
+ }
+ metricdata {
+ id 7
+ metricenumValue 10
+ metricName "cvmetric_Sldv_condition"
+ }
+ metricdata {
+ id 8
+ metricenumValue 11
+ metricName "cvmetric_Sldv_assumption"
+ }
+ metricdata {
+ id 9
+ metricenumValue 12
+ metricName "cvmetric_Structural_saturate"
+ }
+ metricdata {
+ id 10
+ metricenumValue 13
+ metricName "cvmetric_Structural_relationalop"
+ }
+ metricdata {
+ id 11
+ metricenumValue 14
+ metricName "cvmetric_Structural_block"
+ data {
+ rawdata "100 M98x1[18 0 6 0 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3 4 "
+ "0 1 0 1 0 1001 1 0 1 0 1001 1 0 1 0 1001 1 0 1 0 1001 5 0 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3003 1 "
+ "0 1 0 3 1 0 1 0 3003 1 0 1 0 3003 1 0 1 0 3]"
+ }
+ trace {
+ rawdata "100 C98x1{M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3"
+ "],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1"
+ "x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M[1],M[],M[1],"
+ "M[],M[1],M[],M[1],M[1],M[],M[1],M[],M[1],M[1],M[],M[1],M[],M[1],M[1],M[],M[1],M[],M[1],M1x3[1 2 3],M[],M1x3[1 2 "
+ "3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M"
+ "1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M"
+ "[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3[1 2 3],M1x3[1 2 3],M[],M1x3[1 2 3],M[],M1x3["
+ "1 2 3]}"
+ }
+ }
+ typename {
+ id 12
+ type "MultiPortSwitch"
+ }
+ typename {
+ id 13
+ type "Sum"
+ }
+ typename {
+ id 14
+ type "Switch"
+ }
+ typename {
+ id 15
+ type "Gain"
+ }
+ typename {
+ id 16
+ type "MinMax"
+ }
+ slsfobj {
+ id 17
+ name "AHRS_voter"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [0 18 0 0]
+ metricFlags 16465
+ metrics [47 48 49 50]
+ hiddenSubSysHandle 318.0032958984375
+ cvChecksum {
+ u1 2208568053
+ u2 540170542
+ u3 2060519990
+ u4 543039732
+ }
+ }
+ slsfobj {
+ id 18
+ name "Avg_Value"
+ origin SIMULINK_OBJ
+ isAtomicSubsytem 1
+ modelcov 2
+ treeNode [17 19 0 25]
+ metricFlags 16465
+ metrics [51 52 53 54]
+ cvChecksum {
+ u1 2063412352
+ u2 1222051363
+ u3 181961427
+ u4 654871050
+ }
+ }
+ slsfobj {
+ id 19
+ name "Switch"
+ origin SIMULINK_OBJ
+ slBlckType 14
+ modelcov 2
+ treeNode [18 0 0 20]
+ metricFlags 16465
+ metrics [55 56 57 58]
+ cvChecksum {
+ u1 2630852751
+ u2 3426290224
+ u3 180735902
+ u4 3113475455
+ }
+ }
+ slsfobj {
+ id 20
+ name "Switch1"
+ origin SIMULINK_OBJ
+ slBlckType 14
+ modelcov 2
+ treeNode [18 0 19 21]
+ metricFlags 16465
+ metrics [65 66 67 68]
+ cvChecksum {
+ u1 2630852751
+ u2 3426290224
+ u3 180735902
+ u4 3113475455
+ }
+ }
+ slsfobj {
+ id 21
+ name "Switch2"
+ origin SIMULINK_OBJ
+ slBlckType 14
+ modelcov 2
+ treeNode [18 0 20 22]
+ metricFlags 16465
+ metrics [75 76 77 78]
+ cvChecksum {
+ u1 2630852751
+ u2 3426290224
+ u3 180735902
+ u4 3113475455
+ }
+ }
+ slsfobj {
+ id 22
+ name "Gain"
+ origin SIMULINK_OBJ
+ slBlckType 15
+ modelcov 2
+ treeNode [18 0 21 23]
+ metricFlags 16400
+ metrics [85 86]
+ cvChecksum {
+ u1 1722184570
+ u2 775875544
+ u3 646524582
+ u4 3712699978
+ }
+ }
+ slsfobj {
+ id 23
+ name "Sum"
+ origin SIMULINK_OBJ
+ slBlckType 13
+ modelcov 2
+ treeNode [18 0 22 24]
+ metricFlags 16400
+ metrics [89 90]
+ cvChecksum {
+ u1 2713551517
+ u2 1807589868
+ u3 372572468
+ u4 3474385757
+ }
+ }
+ slsfobj {
+ id 24
+ name "Constant"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [18 0 23 0]
+ metricFlags 16400
+ metrics [93 94]
+ cvChecksum {
+ u1 1699864253
+ u2 1783690987
+ u3 1216379433
+ u4 3702660177
+ }
+ }
+ slsfobj {
+ id 25
+ name "Mid_Value"
+ origin SIMULINK_OBJ
+ isAtomicSubsytem 1
+ modelcov 2
+ treeNode [17 26 18 30]
+ metricFlags 16465
+ metrics [97 98 99 100]
+ cvChecksum {
+ u1 3412476314
+ u2 1425107569
+ u3 1002365282
+ u4 4057826861
+ }
+ }
+ slsfobj {
+ id 26
+ name "MinMax"
+ origin SIMULINK_OBJ
+ slBlckType 16
+ modelcov 2
+ treeNode [25 0 0 27]
+ metricFlags 16465
+ metrics [101 102 103 104]
+ cvChecksum {
+ u1 4089394237
+ u2 1071136381
+ u3 1493913366
+ u4 1687949685
+ }
+ }
+ slsfobj {
+ id 27
+ name "MinMax1"
+ origin SIMULINK_OBJ
+ slBlckType 16
+ modelcov 2
+ treeNode [25 0 26 28]
+ metricFlags 16465
+ metrics [127 128 129 130]
+ cvChecksum {
+ u1 4089394237
+ u2 1071136381
+ u3 1493913366
+ u4 1687949685
+ }
+ }
+ slsfobj {
+ id 28
+ name "MinMax2"
+ origin SIMULINK_OBJ
+ slBlckType 16
+ modelcov 2
+ treeNode [25 0 27 29]
+ metricFlags 16465
+ metrics [153 154 155 156]
+ cvChecksum {
+ u1 4089394237
+ u2 1071136381
+ u3 1493913366
+ u4 1687949685
+ }
+ }
+ slsfobj {
+ id 29
+ name "MinMax3"
+ origin SIMULINK_OBJ
+ slBlckType 16
+ modelcov 2
+ treeNode [25 0 28 0]
+ metricFlags 16465
+ metrics [179 180 181 182]
+ cvChecksum {
+ u1 3568034317
+ u2 3571711480
+ u3 3081123081
+ u4 2372429835
+ }
+ }
+ slsfobj {
+ id 30
+ name "ModelInfo"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 31 25 32]
+ cvChecksum {
+ u1 573760003
+ u2 3721848266
+ u3 655736823
+ u4 3142089863
+ }
+ }
+ slsfobj {
+ id 31
+ name "EmptySubsystem"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [30 0 0 0]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ slsfobj {
+ id 32
+ name "Single_Value"
+ origin SIMULINK_OBJ
+ isAtomicSubsytem 1
+ modelcov 2
+ treeNode [17 33 30 38]
+ metricFlags 16465
+ metrics [210 211 212 213]
+ cvChecksum {
+ u1 4215072015
+ u2 3967939974
+ u3 827103080
+ u4 2844719158
+ }
+ }
+ slsfobj {
+ id 33
+ name "Switch"
+ origin SIMULINK_OBJ
+ slBlckType 14
+ modelcov 2
+ treeNode [32 0 0 34]
+ metricFlags 16465
+ metrics [214 215 216 217]
+ cvChecksum {
+ u1 2630852751
+ u2 3426290224
+ u3 180735902
+ u4 3113475455
+ }
+ }
+ slsfobj {
+ id 34
+ name "Switch1"
+ origin SIMULINK_OBJ
+ slBlckType 14
+ modelcov 2
+ treeNode [32 0 33 35]
+ metricFlags 16465
+ metrics [224 225 226 227]
+ cvChecksum {
+ u1 2630852751
+ u2 3426290224
+ u3 180735902
+ u4 3113475455
+ }
+ }
+ slsfobj {
+ id 35
+ name "Switch2"
+ origin SIMULINK_OBJ
+ slBlckType 14
+ modelcov 2
+ treeNode [32 0 34 36]
+ metricFlags 16465
+ metrics [234 235 236 237]
+ cvChecksum {
+ u1 2630852751
+ u2 3426290224
+ u3 180735902
+ u4 3113475455
+ }
+ }
+ slsfobj {
+ id 36
+ name "Sum"
+ origin SIMULINK_OBJ
+ slBlckType 13
+ modelcov 2
+ treeNode [32 0 35 37]
+ metricFlags 16400
+ metrics [244 245]
+ cvChecksum {
+ u1 2713551517
+ u2 1807589868
+ u3 372572468
+ u4 3474385757
+ }
+ }
+ slsfobj {
+ id 37
+ name "Constant"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [32 0 36 0]
+ metricFlags 16400
+ metrics [248 249]
+ cvChecksum {
+ u1 1699864253
+ u2 1783690987
+ u3 1216379433
+ u4 3702660177
+ }
+ }
+ slsfobj {
+ id 38
+ name "MultiportSwitch"
+ origin SIMULINK_OBJ
+ slBlckType 12
+ modelcov 2
+ treeNode [17 0 32 39]
+ metricFlags 16465
+ metrics [252 253 254 255]
+ cvChecksum {
+ u1 3337748817
+ u2 1043935380
+ u3 406850792
+ u4 1178280874
+ }
+ }
+ slsfobj {
+ id 39
+ name "Sum"
+ origin SIMULINK_OBJ
+ slBlckType 13
+ modelcov 2
+ treeNode [17 0 38 40]
+ metricFlags 16400
+ metrics [264 265]
+ cvChecksum {
+ u1 672864734
+ u2 2540759939
+ u3 2687607829
+ u4 445049111
+ }
+ }
+ slsfobj {
+ id 40
+ name "BusSelector"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 39 41]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ slsfobj {
+ id 41
+ name "BusSelector1"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 40 42]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ slsfobj {
+ id 42
+ name "BusSelector2"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 41 43]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ slsfobj {
+ id 43
+ name "Constant"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 42 44]
+ metricFlags 16400
+ metrics [268 269]
+ cvChecksum {
+ u1 1699864253
+ u2 1783690987
+ u3 1216379433
+ u4 3702660177
+ }
+ }
+ slsfobj {
+ id 44
+ name "Mux"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 43 45]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ slsfobj {
+ id 45
+ name "Mux1"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 44 46]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ slsfobj {
+ id 46
+ name "Mux2"
+ origin SIMULINK_OBJ
+ modelcov 2
+ treeNode [17 0 45 0]
+ cvChecksum {
+ u1 3439279571
+ u2 2561743879
+ u3 3663033115
+ u4 195740233
+ }
+ }
+ metric {
+ id 47
+ dataIdx [0 -1]
+ justifiedDataIdx [1 -1]
+ dataCnt [61 0 -1 -1]
+ dataWidth 114
+ }
+ metric {
+ id 48
+ }
+ metric {
+ id 49
+ dataIdx [1 1]
+ dataCnt [38 1 0 0]
+ }
+ metric {
+ id 50
+ dataIdx [0 -1]
+ justifiedDataIdx [1 -1]
+ dataCnt [18 0 -1 -1]
+ dataWidth 99
+ }
+ metric {
+ id 51
+ dataIdx [2 -1]
+ justifiedDataIdx [3 -1]
+ dataCnt [6 0 -1 -1]
+ dataWidth 21
+ }
+ metric {
+ id 52
+ }
+ metric {
+ id 53
+ dataIdx [1 1]
+ dataCnt [4 1 0 0]
+ }
+ metric {
+ id 54
+ dataIdx [2 -1]
+ justifiedDataIdx [3 -1]
+ dataCnt [6 0 -1 -1]
+ dataWidth 33
+ }
+ metric {
+ id 55
+ baseObjs [59]
+ dataIdx [6 4]
+ justifiedDataIdx [7 5]
+ dataCnt [2 2 -1 -1]
+ dataWidth 7
+ }
+ sigranger {
+ id 56
+ slsfobj 19
+ cov [0 1 5]
+ }
+ metric {
+ id 57
+ dataCnt [1 1 0 0]
+ }
+ metric {
+ id 58
+ baseObjs [63]
+ dataIdx [6 4]
+ justifiedDataIdx [7 5]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 59
+ modelcov 2
+ slsfobj 19
+ descriptor 60
+ outMsgs [61 62]
+ dc [2 0 8 0]
+ }
+ message {
+ id 60
+ keyNum 120
+ }
+ message {
+ id 61
+ keyNum 131
+ }
+ message {
+ id 62
+ keyNum 130
+ }
+ decision {
+ id 63
+ modelcov 2
+ slsfobj 19
+ relopChkExprIdx -1
+ descriptor 64
+ dc [1 0 8 0]
+ }
+ message {
+ id 64
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 65
+ baseObjs [69]
+ dataIdx [12 10]
+ justifiedDataIdx [13 11]
+ dataCnt [2 2 -1 -1]
+ dataWidth 7
+ }
+ sigranger {
+ id 66
+ slsfobj 20
+ cov [10 1 5]
+ }
+ metric {
+ id 67
+ dataCnt [1 1 0 0]
+ }
+ metric {
+ id 68
+ baseObjs [73]
+ dataIdx [11 9]
+ justifiedDataIdx [12 10]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 69
+ modelcov 2
+ slsfobj 20
+ descriptor 70
+ outMsgs [71 72]
+ dc [2 0 14 0]
+ }
+ message {
+ id 70
+ keyNum 120
+ }
+ message {
+ id 71
+ keyNum 131
+ }
+ message {
+ id 72
+ keyNum 130
+ }
+ decision {
+ id 73
+ modelcov 2
+ slsfobj 20
+ relopChkExprIdx -1
+ descriptor 74
+ dc [1 0 13 0]
+ }
+ message {
+ id 74
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 75
+ baseObjs [79]
+ dataIdx [18 16]
+ justifiedDataIdx [19 17]
+ dataCnt [2 2 -1 -1]
+ dataWidth 7
+ }
+ sigranger {
+ id 76
+ slsfobj 21
+ cov [20 1 5]
+ }
+ metric {
+ id 77
+ dataCnt [1 1 0 0]
+ }
+ metric {
+ id 78
+ baseObjs [83]
+ dataIdx [16 14]
+ justifiedDataIdx [17 15]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 79
+ modelcov 2
+ slsfobj 21
+ descriptor 80
+ outMsgs [81 82]
+ dc [2 0 20 0]
+ }
+ message {
+ id 80
+ keyNum 120
+ }
+ message {
+ id 81
+ keyNum 131
+ }
+ message {
+ id 82
+ keyNum 130
+ }
+ decision {
+ id 83
+ modelcov 2
+ slsfobj 21
+ relopChkExprIdx -1
+ descriptor 84
+ dc [1 0 18 0]
+ }
+ message {
+ id 84
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 85
+ slsfobj 22
+ cov [30 1 5]
+ }
+ metric {
+ id 86
+ baseObjs [87]
+ dataIdx [21 19]
+ justifiedDataIdx [22 20]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 87
+ modelcov 2
+ slsfobj 22
+ relopChkExprIdx -1
+ descriptor 88
+ dc [1 0 23 0]
+ }
+ message {
+ id 88
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 89
+ slsfobj 23
+ cov [40 1 5]
+ }
+ metric {
+ id 90
+ baseObjs [91]
+ dataIdx [26 24]
+ justifiedDataIdx [27 25]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 91
+ modelcov 2
+ slsfobj 23
+ relopChkExprIdx -1
+ descriptor 92
+ dc [1 0 28 0]
+ }
+ message {
+ id 92
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 93
+ slsfobj 24
+ cov [50 1 5]
+ }
+ metric {
+ id 94
+ baseObjs [95]
+ dataIdx [31 29]
+ justifiedDataIdx [32 30]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 95
+ modelcov 2
+ slsfobj 24
+ relopChkExprIdx -1
+ descriptor 96
+ dc [1 0 33 0]
+ }
+ message {
+ id 96
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 97
+ dataIdx [22 -1]
+ justifiedDataIdx [23 -1]
+ dataCnt [45 0 -1 -1]
+ dataWidth 64
+ }
+ metric {
+ id 98
+ }
+ metric {
+ id 99
+ dataIdx [1 1]
+ dataCnt [26 1 0 0]
+ }
+ metric {
+ id 100
+ dataIdx [34 -1]
+ justifiedDataIdx [35 -1]
+ dataCnt [4 0 -1 -1]
+ dataWidth 23
+ }
+ metric {
+ id 101
+ baseObjs [105 106 107 108 109]
+ dataIdx [26 24]
+ justifiedDataIdx [27 25]
+ dataCnt [10 10 -1 -1]
+ dataWidth 15
+ }
+ sigranger {
+ id 102
+ slsfobj 26
+ cov [60 1 5]
+ }
+ metric {
+ id 103
+ dataCnt [5 5 0 0]
+ }
+ metric {
+ id 104
+ baseObjs [125]
+ dataIdx [38 36]
+ justifiedDataIdx [39 37]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 105
+ modelcov 2
+ slsfobj 26
+ descriptor 110
+ outMsgs [111 112]
+ dc [2 0 28 0]
+ }
+ decision {
+ id 106
+ modelcov 2
+ slsfobj 26
+ index 1
+ descriptor 113
+ outMsgs [114 115]
+ dc [2 0 30 0]
+ }
+ decision {
+ id 107
+ modelcov 2
+ slsfobj 26
+ index 2
+ descriptor 116
+ outMsgs [117 118]
+ dc [2 0 32 0]
+ }
+ decision {
+ id 108
+ modelcov 2
+ slsfobj 26
+ index 3
+ descriptor 119
+ outMsgs [120 121]
+ dc [2 0 34 0]
+ }
+ decision {
+ id 109
+ modelcov 2
+ slsfobj 26
+ index 4
+ descriptor 122
+ outMsgs [123 124]
+ dc [2 0 36 0]
+ }
+ message {
+ id 110
+ keyNum 59
+ intParams [1]
+ }
+ message {
+ id 111
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 112
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 113
+ keyNum 59
+ intParams [2]
+ }
+ message {
+ id 114
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 115
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 116
+ keyNum 59
+ intParams [3]
+ }
+ message {
+ id 117
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 118
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 119
+ keyNum 59
+ intParams [4]
+ }
+ message {
+ id 120
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 121
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 122
+ keyNum 59
+ intParams [5]
+ }
+ message {
+ id 123
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 124
+ keyNum 60
+ intParams [2]
+ }
+ decision {
+ id 125
+ modelcov 2
+ slsfobj 26
+ relopChkExprIdx -1
+ descriptor 126
+ dc [1 0 40 0]
+ }
+ message {
+ id 126
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 127
+ baseObjs [131 132 133 134 135]
+ dataIdx [40 38]
+ justifiedDataIdx [41 39]
+ dataCnt [10 10 -1 -1]
+ dataWidth 15
+ }
+ sigranger {
+ id 128
+ slsfobj 27
+ cov [70 1 5]
+ }
+ metric {
+ id 129
+ dataCnt [5 5 0 0]
+ }
+ metric {
+ id 130
+ baseObjs [151]
+ dataIdx [43 41]
+ justifiedDataIdx [44 42]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 131
+ modelcov 2
+ slsfobj 27
+ descriptor 136
+ outMsgs [137 138]
+ dc [2 0 42 0]
+ }
+ decision {
+ id 132
+ modelcov 2
+ slsfobj 27
+ index 1
+ descriptor 139
+ outMsgs [140 141]
+ dc [2 0 44 0]
+ }
+ decision {
+ id 133
+ modelcov 2
+ slsfobj 27
+ index 2
+ descriptor 142
+ outMsgs [143 144]
+ dc [2 0 46 0]
+ }
+ decision {
+ id 134
+ modelcov 2
+ slsfobj 27
+ index 3
+ descriptor 145
+ outMsgs [146 147]
+ dc [2 0 48 0]
+ }
+ decision {
+ id 135
+ modelcov 2
+ slsfobj 27
+ index 4
+ descriptor 148
+ outMsgs [149 150]
+ dc [2 0 50 0]
+ }
+ message {
+ id 136
+ keyNum 59
+ intParams [1]
+ }
+ message {
+ id 137
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 138
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 139
+ keyNum 59
+ intParams [2]
+ }
+ message {
+ id 140
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 141
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 142
+ keyNum 59
+ intParams [3]
+ }
+ message {
+ id 143
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 144
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 145
+ keyNum 59
+ intParams [4]
+ }
+ message {
+ id 146
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 147
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 148
+ keyNum 59
+ intParams [5]
+ }
+ message {
+ id 149
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 150
+ keyNum 60
+ intParams [2]
+ }
+ decision {
+ id 151
+ modelcov 2
+ slsfobj 27
+ relopChkExprIdx -1
+ descriptor 152
+ dc [1 0 45 0]
+ }
+ message {
+ id 152
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 153
+ baseObjs [157 158 159 160 161]
+ dataIdx [54 52]
+ justifiedDataIdx [55 53]
+ dataCnt [10 10 -1 -1]
+ dataWidth 15
+ }
+ sigranger {
+ id 154
+ slsfobj 28
+ cov [80 1 5]
+ }
+ metric {
+ id 155
+ dataCnt [5 5 0 0]
+ }
+ metric {
+ id 156
+ baseObjs [177]
+ dataIdx [48 46]
+ justifiedDataIdx [49 47]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 157
+ modelcov 2
+ slsfobj 28
+ descriptor 162
+ outMsgs [163 164]
+ dc [2 0 56 0]
+ }
+ decision {
+ id 158
+ modelcov 2
+ slsfobj 28
+ index 1
+ descriptor 165
+ outMsgs [166 167]
+ dc [2 0 58 0]
+ }
+ decision {
+ id 159
+ modelcov 2
+ slsfobj 28
+ index 2
+ descriptor 168
+ outMsgs [169 170]
+ dc [2 0 60 0]
+ }
+ decision {
+ id 160
+ modelcov 2
+ slsfobj 28
+ index 3
+ descriptor 171
+ outMsgs [172 173]
+ dc [2 0 62 0]
+ }
+ decision {
+ id 161
+ modelcov 2
+ slsfobj 28
+ index 4
+ descriptor 174
+ outMsgs [175 176]
+ dc [2 0 64 0]
+ }
+ message {
+ id 162
+ keyNum 59
+ intParams [1]
+ }
+ message {
+ id 163
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 164
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 165
+ keyNum 59
+ intParams [2]
+ }
+ message {
+ id 166
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 167
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 168
+ keyNum 59
+ intParams [3]
+ }
+ message {
+ id 169
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 170
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 171
+ keyNum 59
+ intParams [4]
+ }
+ message {
+ id 172
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 173
+ keyNum 60
+ intParams [2]
+ }
+ message {
+ id 174
+ keyNum 59
+ intParams [5]
+ }
+ message {
+ id 175
+ keyNum 60
+ intParams [1]
+ }
+ message {
+ id 176
+ keyNum 60
+ intParams [2]
+ }
+ decision {
+ id 177
+ modelcov 2
+ slsfobj 28
+ relopChkExprIdx -1
+ descriptor 178
+ dc [1 0 50 0]
+ }
+ message {
+ id 178
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 179
+ baseObjs [183 184 185 186 187]
+ dataIdx [68 66]
+ justifiedDataIdx [69 67]
+ dataCnt [15 15 -1 -1]
+ dataWidth 20
+ }
+ sigranger {
+ id 180
+ slsfobj 29
+ cov [90 1 5]
+ }
+ metric {
+ id 181
+ dataCnt [10 10 0 0]
+ }
+ metric {
+ id 182
+ baseObjs [208]
+ dataIdx [53 51]
+ justifiedDataIdx [54 52]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 183
+ modelcov 2
+ slsfobj 29
+ descriptor 188
+ outMsgs [189 190 191]
+ dc [3 0 70 0]
+ }
+ decision {
+ id 184
+ modelcov 2
+ slsfobj 29
+ index 1
+ descriptor 192
+ outMsgs [193 194 195]
+ dc [3 0 73 0]
+ }
+ decision {
+ id 185
+ modelcov 2
+ slsfobj 29
+ index 2
+ descriptor 196
+ outMsgs [197 198 199]
+ dc [3 0 76 0]
+ }
+ decision {
+ id 186
+ modelcov 2
+ slsfobj 29
+ index 3
+ descriptor 200
+ outMsgs [201 202 203]
+ dc [3 0 79 0]
+ }
+ decision {
+ id 187
+ modelcov 2
+ slsfobj 29
+ index 4
+ descriptor 204
+ outMsgs [205 206 207]
+ dc [3 0 82 0]
+ }
+ message {
+ id 188
+ keyNum 59
+ intParams [1]
+ }
+ message {
+ id 189
+ keyNum 61
+ intParams [1]
+ }
+ message {
+ id 190
+ keyNum 61
+ intParams [2]
+ }
+ message {
+ id 191
+ keyNum 61
+ intParams [3]
+ }
+ message {
+ id 192
+ keyNum 59
+ intParams [2]
+ }
+ message {
+ id 193
+ keyNum 61
+ intParams [1]
+ }
+ message {
+ id 194
+ keyNum 61
+ intParams [2]
+ }
+ message {
+ id 195
+ keyNum 61
+ intParams [3]
+ }
+ message {
+ id 196
+ keyNum 59
+ intParams [3]
+ }
+ message {
+ id 197
+ keyNum 61
+ intParams [1]
+ }
+ message {
+ id 198
+ keyNum 61
+ intParams [2]
+ }
+ message {
+ id 199
+ keyNum 61
+ intParams [3]
+ }
+ message {
+ id 200
+ keyNum 59
+ intParams [4]
+ }
+ message {
+ id 201
+ keyNum 61
+ intParams [1]
+ }
+ message {
+ id 202
+ keyNum 61
+ intParams [2]
+ }
+ message {
+ id 203
+ keyNum 61
+ intParams [3]
+ }
+ message {
+ id 204
+ keyNum 59
+ intParams [5]
+ }
+ message {
+ id 205
+ keyNum 61
+ intParams [1]
+ }
+ message {
+ id 206
+ keyNum 61
+ intParams [2]
+ }
+ message {
+ id 207
+ keyNum 61
+ intParams [3]
+ }
+ decision {
+ id 208
+ modelcov 2
+ slsfobj 29
+ relopChkExprIdx -1
+ descriptor 209
+ dc [1 0 55 0]
+ }
+ message {
+ id 209
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 210
+ dataIdx [85 -1]
+ justifiedDataIdx [86 -1]
+ dataCnt [6 0 -1 -1]
+ dataWidth 21
+ }
+ metric {
+ id 211
+ }
+ metric {
+ id 212
+ dataIdx [1 1]
+ dataCnt [4 1 0 0]
+ }
+ metric {
+ id 213
+ dataIdx [56 -1]
+ justifiedDataIdx [57 -1]
+ dataCnt [5 0 -1 -1]
+ dataWidth 28
+ }
+ metric {
+ id 214
+ baseObjs [218]
+ dataIdx [89 87]
+ justifiedDataIdx [90 88]
+ dataCnt [2 2 -1 -1]
+ dataWidth 7
+ }
+ sigranger {
+ id 215
+ slsfobj 33
+ cov [100 1 5]
+ }
+ metric {
+ id 216
+ dataCnt [1 1 0 0]
+ }
+ metric {
+ id 217
+ baseObjs [222]
+ dataIdx [60 58]
+ justifiedDataIdx [61 59]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 218
+ modelcov 2
+ slsfobj 33
+ descriptor 219
+ outMsgs [220 221]
+ dc [2 0 91 0]
+ }
+ message {
+ id 219
+ keyNum 120
+ }
+ message {
+ id 220
+ keyNum 131
+ }
+ message {
+ id 221
+ keyNum 130
+ }
+ decision {
+ id 222
+ modelcov 2
+ slsfobj 33
+ relopChkExprIdx -1
+ descriptor 223
+ dc [1 0 62 0]
+ }
+ message {
+ id 223
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 224
+ baseObjs [228]
+ dataIdx [95 93]
+ justifiedDataIdx [96 94]
+ dataCnt [2 2 -1 -1]
+ dataWidth 7
+ }
+ sigranger {
+ id 225
+ slsfobj 34
+ cov [110 1 5]
+ }
+ metric {
+ id 226
+ dataCnt [1 1 0 0]
+ }
+ metric {
+ id 227
+ baseObjs [232]
+ dataIdx [65 63]
+ justifiedDataIdx [66 64]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 228
+ modelcov 2
+ slsfobj 34
+ descriptor 229
+ outMsgs [230 231]
+ dc [2 0 97 0]
+ }
+ message {
+ id 229
+ keyNum 120
+ }
+ message {
+ id 230
+ keyNum 131
+ }
+ message {
+ id 231
+ keyNum 130
+ }
+ decision {
+ id 232
+ modelcov 2
+ slsfobj 34
+ relopChkExprIdx -1
+ descriptor 233
+ dc [1 0 67 0]
+ }
+ message {
+ id 233
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 234
+ baseObjs [238]
+ dataIdx [101 99]
+ justifiedDataIdx [102 100]
+ dataCnt [2 2 -1 -1]
+ dataWidth 7
+ }
+ sigranger {
+ id 235
+ slsfobj 35
+ cov [120 1 5]
+ }
+ metric {
+ id 236
+ dataCnt [1 1 0 0]
+ }
+ metric {
+ id 237
+ baseObjs [242]
+ dataIdx [70 68]
+ justifiedDataIdx [71 69]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 238
+ modelcov 2
+ slsfobj 35
+ descriptor 239
+ outMsgs [240 241]
+ dc [2 0 103 0]
+ }
+ message {
+ id 239
+ keyNum 120
+ }
+ message {
+ id 240
+ keyNum 131
+ }
+ message {
+ id 241
+ keyNum 130
+ }
+ decision {
+ id 242
+ modelcov 2
+ slsfobj 35
+ relopChkExprIdx -1
+ descriptor 243
+ dc [1 0 72 0]
+ }
+ message {
+ id 243
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 244
+ slsfobj 36
+ cov [130 1 5]
+ }
+ metric {
+ id 245
+ baseObjs [246]
+ dataIdx [75 73]
+ justifiedDataIdx [76 74]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 246
+ modelcov 2
+ slsfobj 36
+ relopChkExprIdx -1
+ descriptor 247
+ dc [1 0 77 0]
+ }
+ message {
+ id 247
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 248
+ slsfobj 37
+ cov [140 1 5]
+ }
+ metric {
+ id 249
+ baseObjs [250]
+ dataIdx [80 78]
+ justifiedDataIdx [81 79]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 250
+ modelcov 2
+ slsfobj 37
+ relopChkExprIdx -1
+ descriptor 251
+ dc [1 0 82 0]
+ }
+ message {
+ id 251
+ keyNum 24
+ txtParams "executed"
+ }
+ metric {
+ id 252
+ baseObjs [256]
+ dataIdx [107 105]
+ justifiedDataIdx [108 106]
+ dataCnt [4 4 -1 -1]
+ dataWidth 9
+ }
+ sigranger {
+ id 253
+ slsfobj 38
+ cov [150 1 5]
+ }
+ metric {
+ id 254
+ dataCnt [3 3 0 0]
+ }
+ metric {
+ id 255
+ baseObjs [262]
+ dataIdx [85 83]
+ justifiedDataIdx [86 84]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 256
+ modelcov 2
+ slsfobj 38
+ descriptor 257
+ outMsgs [258 259 260 261]
+ dc [4 0 109 0]
+ }
+ message {
+ id 257
+ keyNum 139
+ }
+ message {
+ id 258
+ keyNum 145
+ intParams [0]
+ txtParams "0"
+ }
+ message {
+ id 259
+ keyNum 145
+ intParams [1]
+ txtParams "1"
+ }
+ message {
+ id 260
+ keyNum 145
+ intParams [2]
+ txtParams "2"
+ }
+ message {
+ id 261
+ keyNum 145
+ intParams [3]
+ txtParams "*,3"
+ }
+ decision {
+ id 262
+ modelcov 2
+ slsfobj 38
+ relopChkExprIdx -1
+ descriptor 263
+ dc [1 0 87 0]
+ }
+ message {
+ id 263
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 264
+ slsfobj 39
+ cov [160 1 1]
+ }
+ metric {
+ id 265
+ baseObjs [266]
+ dataIdx [90 88]
+ justifiedDataIdx [91 89]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 266
+ modelcov 2
+ slsfobj 39
+ relopChkExprIdx -1
+ descriptor 267
+ dc [1 0 92 0]
+ }
+ message {
+ id 267
+ keyNum 24
+ txtParams "executed"
+ }
+ sigranger {
+ id 268
+ slsfobj 43
+ cov [162 1 5]
+ }
+ metric {
+ id 269
+ baseObjs [270]
+ dataIdx [95 93]
+ justifiedDataIdx [96 94]
+ dataCnt [1 1 -1 -1]
+ dataWidth 6
+ }
+ decision {
+ id 270
+ modelcov 2
+ slsfobj 43
+ relopChkExprIdx -1
+ descriptor 271
+ dc [1 0 97 0]
+ }
+ message {
+ id 271
+ keyNum 24
+ txtParams "executed"
+ }
+}
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_REQ_Based_Model_Coverage_Report.html b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_REQ_Based_Model_Coverage_Report.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c9f574d1b86a6a0b95c443173181a25e742fdf3
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_REQ_Based_Model_Coverage_Report.html
@@ -0,0 +1,95 @@
+
+
+
+
+ Coverage Report by Model
+
+
+
+Coverage Report by Model
+Top Model: AHRS_voter
+
+
+
+
+
+ Complexity
+
+
+ Decision
+
+ Execution
+
+
+
+
+
+
+
+ TOTAL COVERAGE
+
+
+
+ 97% (59/61)
+
+
+
+
+
+
+
+
+
+ 100% (18/18)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1. . . . AHRS_voter
+ 38
+
+
+ 97% (59/61)
+
+
+
+
+
+
+
+
+
+ 100% (18/18)
+
+
+
+
+
+
+
+
+
+
+
+The following models have signal range coverage:
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_cov.html b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_cov.html
new file mode 100644
index 0000000000000000000000000000000000000000..8c350758ba0b95d768afb727c4b7387bdb22de73
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/AHRS_voter_cov.html
@@ -0,0 +1,2792 @@
+
+
+
+
+
+ AHRS_voter Coverage Report
+
+
+
+Coverage Report for AHRS_voter
+Table of Contents
+
+ Analysis Information
+ Aggregated Tests
+ Summary
+ Details
+ Signal Ranges
+
+Analysis Information
+Model Information
+
+
+
+
+ Model version
+ 1.69
+
+
+
+ Author
+ bpotter
+
+
+
+ Last saved
+ Wed May 13 13:30:04 2020
+
+
+
+Harness information
+
+
+
+
+ Harness model(s)
+ Not Unique
+
+
+
+ Harness model owner
+ AHRS_voter
+
+
+
+Simulation Optimization Options
+
+
+
+
+ Default parameter behavior
+ inlined
+
+
+
+ Block reduction
+ off
+
+
+
+ Conditional branch optimization
+ on
+
+
+
+Coverage Options
+
+
+
+
+ Analyzed model
+ AHRS_voter
+
+
+
+ Logic block short circuiting
+ off
+
+
+
+Aggregated Tests
+
+
+
+Summary
+
+
+
+
+ Model Hierarchy/Complexity
+
+
+
+
+
+
+
+ Decision
+ Execution
+
+
+
+
+ 1. AHRS_voter
+ 38
+ 97% (59/61)
+
+
+
+
+
+
+
+
+ 100% (18/18)
+
+
+
+
+
+
+
+
+
+
+
+
+ 2. . . . Avg_Value
+ 4
+ 100% (6/6)
+
+
+
+
+
+
+
+
+ 100% (6/6)
+
+
+
+
+
+
+
+
+
+
+
+
+ 3. . . . Mid_Value
+ 26
+ 98% (44/45)
+
+
+
+
+
+
+
+
+ 100% (4/4)
+
+
+
+
+
+
+
+
+
+
+
+
+ 4. . . . Single_Value
+ 4
+ 100% (6/6)
+
+
+
+
+
+
+
+
+ 100% (5/5)
+
+
+
+
+
+
+
+
+
+
+
+
+Details
+ 1. Model "AHRS_voter"
+
+
+
+
+
+
+
+
+ Metric
+ Coverage (this object)
+ Coverage (inc. descendants)
+
+
+
+ Cyclomatic Complexity
+ 1
+ 38
+
+
+
+ Decision
+ NA
+ 97% (59/61) decision outcomes
+
+
+
+ Execution
+ NA
+ 100% (18/18) objective outcomes
+
+
+
+
+
+
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 3
+
+
+
+ Decision
+ 75% (3/4) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ integer input value
+ 75%
+
+
+
+ = 0 (output is from input port 0)
+ 0/3003
+
+
+
+ = 1 (output is from input port 1)
+ 1001/3003
T3
+
+
+
+ = 2 (output is from input port 2)
+ 1001/3003
T2
+
+
+
+ = *,3 (output is from input port 3)
+ 1001/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Sum block "Sum "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Constant block "Constant "
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3/3
T1
+
+
+
+
+
+ 2. SubSystem block "Avg_Value "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage (this object)
+ Coverage (inc. descendants)
+
+
+
+ Cyclomatic Complexity
+ 1
+ 4
+
+
+
+ Decision
+ NA
+ 100% (6/6) decision outcomes
+
+
+
+ Execution
+ NA
+ 100% (6/6) objective outcomes
+
+
+
+
+
+ Switch block "Switch "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 1
+
+
+
+ Decision
+ 100% (2/2) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ logical trigger input
+ 100%
+
+
+
+ false (output is from 3rd input port)
+ 1699/3003
T2
+
+
+
+ true (output is from 1st input port)
+ 1304/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Switch block "Switch1 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 1
+
+
+
+ Decision
+ 100% (2/2) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ logical trigger input
+ 100%
+
+
+
+ false (output is from 3rd input port)
+ 1001/3003
T2
+
+
+
+ true (output is from 1st input port)
+ 2002/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Switch block "Switch2 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 1
+
+
+
+ Decision
+ 100% (2/2) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ logical trigger input
+ 100%
+
+
+
+ false (output is from 3rd input port)
+ 303/3003
T2
+
+
+
+ true (output is from 1st input port)
+ 2700/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Gain block "Gain "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Sum block "Sum "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Constant block "Constant "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3/3
T1
+
+
+
+
+
+ 3. SubSystem block "Mid_Value "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage (this object)
+ Coverage (inc. descendants)
+
+
+
+ Cyclomatic Complexity
+ 1
+ 26
+
+
+
+ Decision
+ NA
+ 98% (44/45) decision outcomes
+
+
+
+ Execution
+ NA
+ 100% (4/4) objective outcomes
+
+
+
+
+
+ MinMax block "MinMax "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 5
+
+
+
+ Decision
+ 100% (10/10) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ Logic to determine output element 1
+ 100%
+
+
+
+ input 1 is the minimum
+ 799/1001
T1
+
+
+
+ input 2 is the minimum
+ 202/1001
T1
+
+
+
+ Logic to determine output element 2
+ 100%
+
+
+
+ input 1 is the minimum
+ 303/1001
T1
+
+
+
+ input 2 is the minimum
+ 698/1001
T1
+
+
+
+ Logic to determine output element 3
+ 100%
+
+
+
+ input 1 is the minimum
+ 101/1001
T1
+
+
+
+ input 2 is the minimum
+ 900/1001
T1
+
+
+
+ Logic to determine output element 4
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 5
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 1001/1001
T1
+
+
+
+
+
+ MinMax block "MinMax1 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 5
+
+
+
+ Decision
+ 100% (10/10) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ Logic to determine output element 1
+ 100%
+
+
+
+ input 1 is the minimum
+ 202/1001
T1
+
+
+
+ input 2 is the minimum
+ 799/1001
T1
+
+
+
+ Logic to determine output element 2
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 3
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 4
+ 100%
+
+
+
+ input 1 is the minimum
+ 303/1001
T1
+
+
+
+ input 2 is the minimum
+ 698/1001
T1
+
+
+
+ Logic to determine output element 5
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 1001/1001
T1
+
+
+
+
+
+ MinMax block "MinMax2 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 5
+
+
+
+ Decision
+ 100% (10/10) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ Logic to determine output element 1
+ 100%
+
+
+
+ input 1 is the minimum
+ 202/1001
T1
+
+
+
+ input 2 is the minimum
+ 799/1001
T1
+
+
+
+ Logic to determine output element 2
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 3
+ 100%
+
+
+
+ input 1 is the minimum
+ 303/1001
T1
+
+
+
+ input 2 is the minimum
+ 698/1001
T1
+
+
+
+ Logic to determine output element 4
+ 100%
+
+
+
+ input 1 is the minimum
+ 900/1001
T1
+
+
+
+ input 2 is the minimum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 5
+ 100%
+
+
+
+ input 1 is the minimum
+ 101/1001
T1
+
+
+
+ input 2 is the minimum
+ 900/1001
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 1001/1001
T1
+
+
+
+
+
+ MinMax block "MinMax3 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 10
+
+
+
+ Decision
+ 93% (14/15) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ Logic to determine output element 1
+ 100%
+
+
+
+ input 1 is the maximum
+ 202/1001
T1
+
+
+
+ input 2 is the maximum
+ 698/1001
T1
+
+
+
+ input 3 is the maximum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 2
+ 100%
+
+
+
+ input 1 is the maximum
+ 202/1001
T1
+
+
+
+ input 2 is the maximum
+ 101/1001
T1
+
+
+
+ input 3 is the maximum
+ 698/1001
T1
+
+
+
+ Logic to determine output element 3
+ 67%
+
+
+
+ input 1 is the maximum
+ 202/1001
T1
+
+
+
+ input 2 is the maximum
+ 0/1001
+
+
+
+ input 3 is the maximum
+ 799/1001
T1
+
+
+
+ Logic to determine output element 4
+ 100%
+
+
+
+ input 1 is the maximum
+ 799/1001
T1
+
+
+
+ input 2 is the maximum
+ 101/1001
T1
+
+
+
+ input 3 is the maximum
+ 101/1001
T1
+
+
+
+ Logic to determine output element 5
+ 100%
+
+
+
+ input 1 is the maximum
+ 101/1001
T1
+
+
+
+ input 2 is the maximum
+ 799/1001
T1
+
+
+
+ input 3 is the maximum
+ 101/1001
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 1001/1001
T1
+
+
+
+
+
+
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage (this object)
+ Coverage (inc. descendants)
+
+
+
+ Cyclomatic Complexity
+ 1
+ 4
+
+
+
+ Decision
+ NA
+ 100% (6/6) decision outcomes
+
+
+
+ Execution
+ NA
+ 100% (5/5) objective outcomes
+
+
+
+
+
+ Switch block "Switch "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 1
+
+
+
+ Decision
+ 100% (2/2) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ logical trigger input
+ 100%
+
+
+
+ false (output is from 3rd input port)
+ 1699/3003
T2
+
+
+
+ true (output is from 1st input port)
+ 1304/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Switch block "Switch1 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 1
+
+
+
+ Decision
+ 100% (2/2) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ logical trigger input
+ 100%
+
+
+
+ false (output is from 3rd input port)
+ 1001/3003
T2
+
+
+
+ true (output is from 1st input port)
+ 2002/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Switch block "Switch2 "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 1
+
+
+
+ Decision
+ 100% (2/2) decision outcomes
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Decisions analyzed
+
+
+
+
+ logical trigger input
+ 100%
+
+
+
+ false (output is from 3rd input port)
+ 303/3003
T2
+
+
+
+ true (output is from 1st input port)
+ 2700/3003
T1
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Sum block "Sum "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3003/3003
T1
+
+
+
+
+
+ Constant block "Constant "
+
+
+Requirement Testing Details
+
+
+
+
+
+
+
+
+
+
+ Metric
+ Coverage
+
+
+
+ Cyclomatic Complexity
+ 0
+
+
+
+ Execution
+ 100% (1/1) objective outcomes
+
+
+
+ Execution analyzed
+
+
+
+
+ Block executed
+ 100%
+
+
+
+
+ 3/3
T1
+
+
+
+
+
+Signal Ranges
+
+
+
+
+ Hierarchy
+ Min
+ Max
+
+
+
+ AHRS_voter
+
+
+
+ . . . MultiportSwitch
+
+
+
+ . . . . . . out[1]
+ -179
+ 179
+
+
+
+ . . . . . . out[2]
+ -179
+ 179
+
+
+
+ . . . . . . out[3]
+ -179
+ 179
+
+
+
+ . . . . . . out[4]
+ -179
+ 179
+
+
+
+ . . . . . . out[5]
+ -179
+ 179
+
+
+
+ . . . Sum
+ 1
+ 3
+
+
+
+ . . . Constant
+
+
+
+ . . . . . . out[1]
+ 0
+ 0
+
+
+
+ . . . . . . out[2]
+ 0
+ 0
+
+
+
+ . . . . . . out[3]
+ 0
+ 0
+
+
+
+ . . . . . . out[4]
+ 0
+ 0
+
+
+
+ . . . . . . out[5]
+ 0
+ 0
+
+
+
+ . . . Avg_Value
+
+
+
+ . . . . . . Switch
+
+
+
+ . . . . . . . . . out[1]
+ -180
+ 180
+
+
+
+ . . . . . . . . . out[2]
+ -178
+ 179
+
+
+
+ . . . . . . . . . out[3]
+ -179
+ 180
+
+
+
+ . . . . . . . . . out[4]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[5]
+ -180
+ 178
+
+
+
+ . . . . . . Switch1
+
+
+
+ . . . . . . . . . out[1]
+ -178
+ 179
+
+
+
+ . . . . . . . . . out[2]
+ -180
+ 180
+
+
+
+ . . . . . . . . . out[3]
+ -180
+ 179
+
+
+
+ . . . . . . . . . out[4]
+ -178
+ 179
+
+
+
+ . . . . . . . . . out[5]
+ -179
+ 180
+
+
+
+ . . . . . . Switch2
+
+
+
+ . . . . . . . . . out[1]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[2]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[3]
+ -178
+ 178
+
+
+
+ . . . . . . . . . out[4]
+ -180
+ 180
+
+
+
+ . . . . . . . . . out[5]
+ -178
+ 179
+
+
+
+ . . . . . . Gain
+
+
+
+ . . . . . . . . . out[1]
+ -268.5
+ 268.5
+
+
+
+ . . . . . . . . . out[2]
+ -268.5
+ 268.5
+
+
+
+ . . . . . . . . . out[3]
+ -268.5
+ 268.5
+
+
+
+ . . . . . . . . . out[4]
+ -268.5
+ 268.5
+
+
+
+ . . . . . . . . . out[5]
+ -268.5
+ 268.5
+
+
+
+ . . . . . . Sum
+
+
+
+ . . . . . . . . . out[1]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[2]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[3]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[4]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[5]
+ -537
+ 537
+
+
+
+ . . . . . . Constant
+
+
+
+ . . . . . . . . . out[1]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[2]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[3]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[4]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[5]
+ 0
+ 0
+
+
+
+ . . . Mid_Value
+
+
+
+ . . . . . . MinMax
+
+
+
+ . . . . . . . . . out[1]
+ -180
+ 179
+
+
+
+ . . . . . . . . . out[2]
+ -180
+ 179
+
+
+
+ . . . . . . . . . out[3]
+ -180
+ 179
+
+
+
+ . . . . . . . . . out[4]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[5]
+ -180
+ 178
+
+
+
+ . . . . . . MinMax1
+
+
+
+ . . . . . . . . . out[1]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[2]
+ -180
+ 178
+
+
+
+ . . . . . . . . . out[3]
+ -180
+ 178
+
+
+
+ . . . . . . . . . out[4]
+ -180
+ 179
+
+
+
+ . . . . . . . . . out[5]
+ -179
+ 179
+
+
+
+ . . . . . . MinMax2
+
+
+
+ . . . . . . . . . out[1]
+ -180
+ 178
+
+
+
+ . . . . . . . . . out[2]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[3]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[4]
+ -180
+ 178
+
+
+
+ . . . . . . . . . out[5]
+ -180
+ 178
+
+
+
+ . . . . . . MinMax3
+
+
+
+ . . . . . . . . . out[1]
+ -179
+ 179
+
+
+
+ . . . . . . . . . out[2]
+ -179
+ 179
+
+
+
+ . . . . . . . . . out[3]
+ -179
+ 179
+
+
+
+ . . . . . . . . . out[4]
+ -179
+ 179
+
+
+
+ . . . . . . . . . out[5]
+ -179
+ 179
+
+
+
+ . . . Single_Value
+
+
+
+ . . . . . . Switch
+
+
+
+ . . . . . . . . . out[1]
+ -180
+ 180
+
+
+
+ . . . . . . . . . out[2]
+ -178
+ 179
+
+
+
+ . . . . . . . . . out[3]
+ -179
+ 180
+
+
+
+ . . . . . . . . . out[4]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[5]
+ -180
+ 178
+
+
+
+ . . . . . . Switch1
+
+
+
+ . . . . . . . . . out[1]
+ -178
+ 179
+
+
+
+ . . . . . . . . . out[2]
+ -180
+ 180
+
+
+
+ . . . . . . . . . out[3]
+ -180
+ 179
+
+
+
+ . . . . . . . . . out[4]
+ -178
+ 179
+
+
+
+ . . . . . . . . . out[5]
+ -179
+ 180
+
+
+
+ . . . . . . Switch2
+
+
+
+ . . . . . . . . . out[1]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[2]
+ -179
+ 178
+
+
+
+ . . . . . . . . . out[3]
+ -178
+ 178
+
+
+
+ . . . . . . . . . out[4]
+ -180
+ 180
+
+
+
+ . . . . . . . . . out[5]
+ -178
+ 179
+
+
+
+ . . . . . . Sum
+
+
+
+ . . . . . . . . . out[1]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[2]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[3]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[4]
+ -537
+ 537
+
+
+
+ . . . . . . . . . out[5]
+ -537
+ 537
+
+
+
+ . . . . . . Constant
+
+
+
+ . . . . . . . . . out[1]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[2]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[3]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[4]
+ 0
+ 0
+
+
+
+ . . . . . . . . . out[5]
+ 0
+ 0
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/aqua.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/aqua.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0ba3b3fe8caf0b79758e4985d2363bf24477d359
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/aqua.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/black.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/black.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8624666d94348cf14ec3425b5018e8d8d5e4d358
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/black.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/blue.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/blue.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8cc948b1856de88eefe85442c6be39cd5552133e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/blue.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/codecovreport.css b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/codecovreport.css
new file mode 100644
index 0000000000000000000000000000000000000000..140448633d3a7399c4507f30944eef306498bf95
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/codecovreport.css
@@ -0,0 +1,426 @@
+/* Copyright 2014-2016 The MathWorks, Inc. */
+
+pre.code {
+ font-family: Courier;
+ font-size: small;
+}
+
+table.code {
+ border-spacing:0px;
+ border: 0px
+}
+
+table.code tr td {
+ color: #112266;
+ vertical-align: top;
+ white-space:pre;
+ padding-left: 10px;
+}
+
+table.code tr td:first-child {
+ font-style: italic;
+ color: #888888;
+ text-align: right;
+ padding-left:0px;
+}
+
+table.code tr td:not(:first-child) span a {
+ color: inherit;
+}
+
+/* tooltip for embedded coverage info */
+.tooltip {
+ display:block;
+ border:1px solid #000;
+ background: #FFFFEC;
+ position: absolute;
+}
+
+.tooltipCloseButton {
+ float:right;
+ margin: 0px;
+ padding: 0px;
+}
+
+.tooltipContent {
+ display:block;
+ padding-right: 25px;
+ padding-bottom: 25px;
+}
+
+table.tooltipManyRes {
+ border-collapse: collapse;
+ border-style: hidden;
+}
+
+table.tooltipManyRes tr {
+ border: 1px solid black;
+ border-left: 0;
+ border-right: 0;
+}
+
+table.tooltipManyRes td {
+ padding-right: 25px;
+ padding-bottom: 25px;
+}
+
+/* comment */
+.ct {
+ font-style: italic;
+ color: #117755
+}
+
+/* preprocessor */
+.pp {
+ font-weight:bold;
+ color: #992211
+}
+
+/* keyword or brace */
+.kw, .br {
+ font-weight:bold;
+ color: #112266
+}
+
+/* data-type */
+.dt {
+ font-weight:bold;
+ color: #112266
+}
+
+/* regular token */
+.tk {
+ font-style: normal;
+ color: #112266
+}
+
+/* not fully covered */
+.nfc {
+ font-weight: normal;
+ background-color: pink
+}
+
+/* justified not fully covered */
+.jnfc {
+ font-weight: normal;
+ background-color: aqua
+}
+
+/* string or char */
+.st {
+ font-weight: normal;
+ color: #B404AE
+}
+
+/* numerical value */
+.nu {
+ font-weight: normal;
+ color:blue /* #0B7EF9 */
+}
+
+/* Files Filtered from Coverage Analysis table. */
+.filter_info {
+ margin-left: 10px;
+ border-spacing: 1px;
+}
+
+.filter_info thead {
+ font-weight: bold;
+}
+
+.filter_info td {
+ padding: 5px;
+ padding-right: 10px;
+}
+
+.filter_info td:not(:first-child) {
+ padding-right: 50px;
+}
+
+/* File Information table. */
+.file_info {
+ margin-left: 10px;
+ border-spacing: 1px;
+}
+
+.file_info td {
+ padding: 5px;
+ width: 300px;
+}
+
+/* Coverage Options table. */
+.coverage_opts {
+ margin-left: 10px;
+ border-spacing: 1px;
+}
+
+.coverage_opts td {
+ padding: 5px;
+ margin-left: 10px;
+}
+
+/* Tests table. */
+
+.run_info {
+ margin-left: 10px;
+ border-spacing: 1px;
+}
+
+.run_info thead {
+ font-weight: bold;
+}
+
+.run_info td {
+ padding: 5px;
+ padding-right: 30px;
+}
+
+/* S-Function Instances table. */
+.instances_info {
+ margin-left: 10px;
+ border-spacing: 1px;
+}
+
+.instances_info tr {
+ vertical-align: top;
+}
+
+.instances_info td {
+ padding: 5px;
+}
+
+/* Top summary heading. */
+.top_summary_heading {
+ text-decoration: underline;
+}
+
+/* Top summary table. */
+.top_summary {
+ border-collapse: collapse;
+}
+
+.top_summary thead > tr > td {
+ border-top: 1px solid;
+ border-bottom: 1px solid;
+}
+
+/* Summary[ By Instance] table. */
+.summary {
+ font-size: small;
+}
+
+.summary {
+ border-spacing: 1px;
+}
+
+.summary td {
+ padding: 2px;
+}
+
+.summary td:not(:first-child) {
+ text-align: center;
+}
+
+.summary thead {
+ text-align: center;
+ font-weight: bold;
+}
+
+/* Summary table sub-section. */
+.summary_sub_section {
+ font-weight: bold;
+}
+
+/* Bar graph in a Summary[ By Instance] table. */
+.bar_graph {
+ margin-left: 5px;
+ margin-right: 5px;
+ border-spacing: 0px;
+ border-collapse: collapse;
+}
+
+.bar_graph td {
+ padding: 0px;
+}
+
+.bar_graph img {
+ border: 0px;
+ height: 6px;
+}
+
+/* Code references tables (file, function, covered expressions). */
+.code_refs_list {
+ margin-left: 25px;
+}
+
+.code_refs_list tr {
+ vertical-align: top;
+}
+
+.code_refs_list td:first-child { /* First column. */
+ font-weight: bold;
+ width: 150px;
+}
+
+/* Inner summary table. */
+.inner_summary {
+ margin-left: 25px;
+}
+
+.inner_summary thead {
+ font-weight: bold;
+}
+
+.inner_summary td:first-child { /* Metric column. */
+ width: 200px;
+}
+
+.inner_summary td:not(:first-child):not(:last-child) { /* Coverage columns except the last one. */
+ width: 400px;
+}
+
+.inner_summary td {
+ text-align: left;
+}
+
+/* Full coverage summary table. */
+.inner_full_cov_summary {
+ margin-left: 50px;
+}
+
+.inner_full_cov_summary thead {
+ font-weight: bold;
+}
+
+.inner_full_cov_summary td:first-child {
+ padding-right: 50px;
+ white-space: nowrap;
+}
+
+/* Decisions/Conditions analyzed and MC/DC analysis headings. */
+h5 {
+ margin-left: 25px;
+ margin-bottom: 0px;
+ font-size: 100%;
+ font-weight: bold;
+}
+
+/* Uncovered row in the Decisions/Conditions analyzed and MC/DC analysis table. */
+.uncovered {
+ background-color: pink;
+}
+
+/* Justified row in the Decisions/Conditions analyzed and MC/DC analysis table. */
+.justified {
+ background-color: aqua;
+}
+
+/* Decisions analyzed table. */
+.decision_details {
+ margin-left: 25px;
+ border: 1px solid;
+ border-spacing: 0px;
+}
+
+.decision_details tr td {
+ padding: 5px;
+}
+
+.decision_details tr td:first-child { /* First column */
+ padding: 5px;
+}
+
+.decision_details tr td:first-child code { /* First column containing code snippet */
+ font-size: small;
+}
+
+.decision_details tbody > tr > td:first-child { /* First column in outcome rows. */
+ padding-left: 25px;
+}
+
+.decision_details thead > tr > td:not(:first-child) { /* Results columns in decision row. */
+ text-align: center;
+}
+
+.decision_details tbody > tr > td:not(:first-child) { /* Results columns in outcome rows. */
+ text-align: right;
+}
+
+/* Conditions analyzed table. */
+.condition_details {
+ border: 1px solid;
+ border-top-color: gray;
+ border-left-color: gray;
+ border-right-color: black;
+ border-bottom-color: black;
+ border-spacing: 1px;
+ margin-left: 25px;
+}
+
+.condition_details thead { /* Header row. */
+ font-weight: bold;
+}
+
+.condition_details tr td {
+ border: 1px solid;
+ border-top-color: black;
+ border-left-color: black;
+ border-right-color: gray;
+ border-bottom-color: gray;
+ padding: 5px;
+}
+
+.condition_details tr td:first-child { /* First column */
+ padding: 5px;
+}
+
+.condition_details tr td:first-child code { /* First column containing code snippet */
+ font-size: small;
+}
+
+.condition_details tbody > tr > td:first-child { /* First column in conditions rows. */
+ padding-left: 25px;
+}
+
+.condition_details td:not(:first-child) { /* Results columns. */
+ text-align: center;
+}
+
+/* MC/DC analysis table. */
+.mcdc_details {
+ margin-left: 25px;
+ border: 1px solid;
+ border-spacing: 0px;
+}
+
+.mcdc_details thead { /* Header row. */
+ font-weight: bold;
+}
+
+.mcdc_details td {
+ padding: 5px;
+}
+
+.mcdc_details tr td:first-child { /* First column */
+ padding: 5px;
+}
+
+.mcdc_details tbody > tr:not(:first-child) > td:first-child { /* First column in conditions rows. */
+ padding-left: 25px;
+}
+
+.mcdc_details tbody > tr:not(:first-child) > td:first-child code { /* First column in conditions rows
+ containing code snippet */
+ font-size: small;
+}
+
+.mcdc_details td:not(:first-child) { /* Results columns. */
+ width: 35px;
+ text-align: center;
+}
+
+/* Current condition in a MC/DC combination. */
+.curr_cnd_in_combination {
+ font-weight: bold;
+ color: blue;
+}
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/codecovreport_utils.js b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/codecovreport_utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..d83f4cc308f9547a3ebc68a44a66bd1c9b681483
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/codecovreport_utils.js
@@ -0,0 +1,249 @@
+// Copyright 2014-2016 The MathWorks, Inc.
+
+(function() {
+
+ // Private object for storing a ref and its tooltip
+ var href2Span = {};
+
+ // Private function for extracting the recognized ref
+ // (only href like #funX, #nodeX and #covX are supported)
+ function getCandidateRef(href) {
+ var res = undefined;
+ try {
+ if (typeof(href)==="string" && href.length > 4) {
+ var ref = href.substring(1,4);
+ if (ref=="fun" || ref=="cov" || ref=="nod") {
+ res = href.substring(1);
+ }
+ }
+ } catch (err) {
+ }
+ return res;
+ }
+
+ // Initialize the candidates in the current document
+ // (only register listener for element of class "covlnk"
+ // with a supported href)
+ function register() {
+ try {
+ var lnks = document.getElementsByClassName("covlnk");
+ if (lnks) {
+ for (var i = 0; i < lnks.length; i++) {
+ var lnk = lnks[i];
+ var ref = getCandidateRef(lnk.getAttribute("href"));
+ if (ref) {
+ addListener(lnk, "mouseover", openTooltip);
+ var otherRefs = lnk.getAttribute("otherRefs");
+ if (otherRefs) {
+ var refs = otherRefs.split(",");
+ href2Span[ref] = refs;
+ }
+ }
+ }
+ }
+ } catch (err) {
+ }
+ }
+
+ // Close/delete the current opened tooltip
+ function closeTooltip(event) {
+ // Close the tooltip if opened
+ var sElem = href2Span["current"];
+ if (sElem && sElem[1]) {
+ // Close the tooltip
+ sElem[1].removeChild(sElem[0]);
+ href2Span["current"] = undefined;
+ return;
+ }
+ }
+
+ // Helper for positionning the tooltip
+ function getCoords(originalElement)
+ {
+ var left = 0;
+ var top = 0;
+ var width = 0;
+ var height = 0;
+
+ var coords = new Array();
+
+ var originalParent = null;
+ var offsetParent = null;
+ var element = null;
+
+ if (originalElement==null)
+ return null;
+
+ var originalParent = originalElement.parentNode;
+ var offsetParent = originalElement.offsetParent;
+ var element = originalElement;
+
+ if (originalElement.offsetWidth)
+ width = originalElement.offsetWidth;
+
+ if (originalElement.offsetHeight)
+ height = originalElement.offsetHeight;
+
+
+ while (element.parentNode != null) {
+ element = element.parentNode;
+
+ if (element.offsetParent != null) {
+ // Handle scrolling
+ if (element.scrollLeft && (element.scrollLeft > 0))
+ left -= element.scrollLeft;
+
+ if (element.scrollTop && (element.scrollTop > 0))
+ top -= element.scrollTop;
+ }
+
+ if (element == offsetParent) {
+ left += originalElement.offsetLeft;
+ if (element.clientLeft && element.nodeName!="TABLE")
+ left += element.clientLeft;
+
+ top += originalElement.offsetTop;
+ if (element.clientTop && element.nodeName!="TABLE")
+ top += element.clientTop;
+
+ originalElement = element;
+ offsetParent = originalElement.offsetParent;
+
+ if (originalElement.offsetParent==null) {
+ if (originalElement.offsetLeft)
+ left += originalElement.offsetLeft;
+
+ if (originalElement.offsetTop)
+ top += originalElement.offsetTop;
+ }
+ }
+ }
+
+ coords.left = left;
+ coords.top = top;
+ coords.width = width;
+ coords.height = height;
+
+ return(coords);
+ }
+
+ // Get the node's details corresponding to the given ref
+ function getNodeDetails(ref) {
+ var obj = undefined;
+ var objs = document.getElementsByName("tt_" + ref);
+ if (objs) {
+ obj = objs[0];
+ var parent = obj.parentNode;
+ if (parent && parent.nodeName.toUpperCase()=="DIV" && parent.getAttribute("name")=="node_details") {
+ obj = obj.parentNode;
+ }
+ }
+ return obj;
+ }
+
+ // Clone a DOM node and remove any inner href
+ function cloneNodeForTooltip(aNode)
+ {
+ var newObj = aNode.cloneNode(true);
+ var aList = newObj.getElementsByTagName("a");
+ for(var i = 0; i < aList.length; i++) {
+ aList[i].removeAttribute("href");
+ }
+ return newObj;
+ }
+
+ // Helper for adding a new table's row in the tooltip
+ function addTooltipRow(table, data)
+ {
+ var tr = document.createElement("tr");
+ var td = document.createElement("td");
+
+ table.appendChild(tr);
+ tr.appendChild(td);
+ td.appendChild(data);
+ }
+
+ // Create/show a tooltip
+ function openTooltip(event) {
+ try {
+ // Early return if not a supported candidate
+ var ref = getCandidateRef(event.target.getAttribute("href"));
+ if (!ref) {
+ return;
+ }
+
+ // Close the current tooltip
+ var sElem = href2Span["current"];
+ if (sElem && sElem[1]) {
+ sElem[1].removeChild(sElem[0]);
+ href2Span["current"] = undefined;
+ }
+
+ // Create a new entry
+ var obj = getNodeDetails(ref);
+ if (obj) {
+ var spanElem = document.createElement("span");
+ spanElem.className = "tooltip";
+ var newObj = cloneNodeForTooltip(obj);
+
+ var inputTopBarElem = document.createElement("input");
+ inputTopBarElem.className = "tooltipCloseButton";
+ inputTopBarElem.type = "button";
+ inputTopBarElem.value = "X";
+ addListener(inputTopBarElem, "click", closeTooltip);
+
+ var spanTopBarElem = document.createElement("span");
+ spanTopBarElem.appendChild(inputTopBarElem);
+ spanElem.appendChild(spanTopBarElem);
+
+ var otherRefs = href2Span[ref];
+ var tableElem = undefined;
+ if (otherRefs) {
+ for (var i = 0; i < otherRefs.length; i++) {
+ obj = getNodeDetails(otherRefs[i]);
+ if (obj) {
+ if (!tableElem) {
+ tableElem = document.createElement("table");
+ tableElem.setAttribute("class", "tooltipManyRes");
+ addTooltipRow(tableElem, newObj);
+ }
+ var newOtherObj = cloneNodeForTooltip(obj);
+ addTooltipRow(tableElem, newOtherObj);
+ }
+ }
+ }
+
+ if (tableElem) {
+ spanElem.appendChild(tableElem);
+ } else {
+ var spanContentElem = document.createElement("span");
+ spanContentElem.className = "tooltipContent";
+ spanContentElem.appendChild(newObj);
+ spanElem.appendChild(spanContentElem);
+ }
+
+ var pos = getCoords(event.target.parentNode);
+ spanElem.style.left = pos.left + 'px';
+ spanElem.style.top = (pos.top + pos.height) + 'px';
+ document.body.appendChild(spanElem);
+ href2Span["current"] = [spanElem, document.body];
+
+ }
+ } catch (err) {
+ }
+ }
+
+ // Helper for registering a listener
+ function addListener(obj, type, fn) {
+ if (obj.addEventListener) {
+ obj.addEventListener(type, fn, false);
+ } else if (obj.attachEvent) {
+ obj.attachEvent("on" + type, fn);
+ }
+ }
+
+ // Register the listener
+ addListener(window, "load", register);
+
+})();
+
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/covreport_utils.js b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/covreport_utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..8c61dff4e3280221597c2d9bd40ca9cb6fd49933
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/covreport_utils.js
@@ -0,0 +1,34 @@
+// Copyright 2014 The MathWorks, Inc.
+
+(function() {
+
+ function fixAbsolutePath() {
+ try {
+ var baseURI = document.baseURI;
+ if (typeof(baseURI) !== "string"){
+ if (document.location) baseURI = document.location.href;
+ if (typeof(baseURI) !== "string") baseURI = window.location.href;
+ if (typeof(baseURI) !== "string") baseURI = document.URL.replace("\\", "/");
+ }
+ var path = baseURI.substring(0, baseURI.lastIndexOf("/"));
+ var aList = document.getElementsByTagName("a");
+ for (var i = 0; i < aList.length; i++) {
+ var href = aList[i].href;
+ if (href !== "string" && href.search(/^file:\/\//)!=-1 && href.search(/\.html$/)!=-1) {
+ var idx = href.lastIndexOf("/");
+ if (idx) {
+ aList[i].setAttribute("href", path + href.substring(idx));
+ }
+ }
+ }
+ } catch (err) {}
+ }
+
+ // Register the listener
+ if (window.addEventListener) {
+ window.addEventListener("load", fixAbsolutePath, false);
+ } else if (window.attachEvent) {
+ window.attachEvent("onload", fixAbsolutePath);
+ }
+
+})();
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/dkgrn.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/dkgrn.gif
new file mode 100644
index 0000000000000000000000000000000000000000..73315079579d6b614a140c2004b43c8fd5fe064b
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/dkgrn.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/filter_add.png b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/filter_add.png
new file mode 100644
index 0000000000000000000000000000000000000000..d30378fd4943cb018e7779525882a92fc558c7d2
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/filter_add.png differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/filter_remove.png b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/filter_remove.png
new file mode 100644
index 0000000000000000000000000000000000000000..73e8678a37776ea6fa3b62582a55a65b9b582a25
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/filter_remove.png differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn01.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn01.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0b608498b29ac3fe69d22a24c579b4815537efa0
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn01.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn02.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn02.gif
new file mode 100644
index 0000000000000000000000000000000000000000..2d05732d22949518e528ce15a2d577b7a3f0206e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn02.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn03.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn03.gif
new file mode 100644
index 0000000000000000000000000000000000000000..cb9196bd601f15433d98dd7562ecf42ac1c83674
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn03.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn04.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn04.gif
new file mode 100644
index 0000000000000000000000000000000000000000..d3aee76537f852f8d33e2556555e2218d2216629
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn04.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn05.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn05.gif
new file mode 100644
index 0000000000000000000000000000000000000000..4d6bfeb5021f42ace42e1741e39a4be8b7f156eb
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn05.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn06.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn06.gif
new file mode 100644
index 0000000000000000000000000000000000000000..3ce4f85c5096aba1c8a8631fb1de4127acc697e3
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn06.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn07.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn07.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b814005ecd471b14f44971856db201e021aa29a8
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn07.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn08.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn08.gif
new file mode 100644
index 0000000000000000000000000000000000000000..995eb3a03581db21926a379a29e3da92acfec8d6
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn08.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn09.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn09.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b2df1eb1781c0d5be7bf3dbcdafb9fed18f21013
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/grn09.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/horz_line.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/horz_line.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c7c3024980ba5205d8d9afb355fab2e3b6484084
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/horz_line.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/htmlfile.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/htmlfile.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c4fe6d8b079b41ca89b7903f1f7990ef14852e3d
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/htmlfile.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/left_arrow.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/left_arrow.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e3cdc0c137ef9dc9342b74e6cceab9c3c0c6b0eb
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/left_arrow.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltBlu.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltBlu.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0ba3b3fe8caf0b79758e4985d2363bf24477d359
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltBlu.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltblue.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltblue.gif
new file mode 100644
index 0000000000000000000000000000000000000000..4e6e9a2c8a73b36912435821aac6500a6654ba87
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltblue.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltgrn.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltgrn.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7975c6ff7741eb61aff502e1d5fdf7875b51b764
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/ltgrn.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/modelcovreport.css b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/modelcovreport.css
new file mode 100644
index 0000000000000000000000000000000000000000..43664d803aff7149c9a3233051118e9eb11acf2d
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/modelcovreport.css
@@ -0,0 +1,22 @@
+/* Copyright 2017 The MathWorks, Inc. */
+.cvtablecellinfo {
+ visibility: hidden;
+ position: absolute;
+ text-align: center;
+ background-color: #CCD1D1;
+ left: -10px;
+ bottom: 20px;
+ z-index: 1;
+}
+.cvtablecell:hover .cvtablecellinfo {
+ visibility: visible;
+}
+
+.cvtablecellinfo > table {
+ white-space: nowrap;
+}
+
+.cvtable {
+ border-collapse: collapse;
+ border: 1px solid black;
+}
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/pink.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/pink.gif
new file mode 100644
index 0000000000000000000000000000000000000000..80d6bcd72341232350b39d7c9066fc783742552e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/pink.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/purple.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/purple.gif
new file mode 100644
index 0000000000000000000000000000000000000000..3d09e7ac261db07ca25ad5396ab316831f44ef5d
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/purple.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/red.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/red.gif
new file mode 100644
index 0000000000000000000000000000000000000000..f74f1105c9286d4ba4e88264b172640789823bc1
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/red.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/right_arrow.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/right_arrow.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b67bf0a84d0c4cc5c2658199875efb6b0dd87034
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/right_arrow.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/trans.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/trans.gif
new file mode 100644
index 0000000000000000000000000000000000000000..1d11fa9ada9e93505b3d736acb204083f45d5fbf
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/trans.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/version110.txt b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/version110.txt
new file mode 100644
index 0000000000000000000000000000000000000000..6c963212f9a7b76701491cfaf6d7817ba3cb2de9
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/version110.txt
@@ -0,0 +1,2 @@
+Do not delete this file! It is used for
+detecting image file changes.
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/vert_line.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/vert_line.gif
new file mode 100644
index 0000000000000000000000000000000000000000..23279fa4d89f5b7ffab4c124bf8cb6b9cc3af5cb
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/vert_line.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/white.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/white.gif
new file mode 100644
index 0000000000000000000000000000000000000000..aeff4659a65da8b3e2a15c9f9c868fec74e04131
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/white.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/yellow.gif b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/yellow.gif
new file mode 100644
index 0000000000000000000000000000000000000000..3cc4e7c46a953d7d138faed0bdebc38aa8c6f63a
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/model_coverages/high_level_tests/scv_images/yellow.gif differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test.mldatx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test.mldatx
new file mode 100644
index 0000000000000000000000000000000000000000..0ed15989a342c94456bf5f18e6b64dc5b0ae47eb
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test.mldatx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test.slmx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..4a609df6cbef96da51b9c4a3632e262bd9f1d1b2
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..77cc69a760dac03d61ec67a5876c5bab85dbc432
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test_Results.mldatx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test_Results.mldatx
new file mode 100644
index 0000000000000000000000000000000000000000..e1943c06e324b9e3adafb0995fe7a8ba9b7db9a0
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/high_level_tests/AHRS_voter_REQ_Based_Test_Results.mldatx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter.dvo b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter.dvo
new file mode 100644
index 0000000000000000000000000000000000000000..5d408328a075d6024f1d050ab568bd9c8f5bf33f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter.dvo differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_SLDV_Based_Test.mldatx b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_SLDV_Based_Test.mldatx
new file mode 100644
index 0000000000000000000000000000000000000000..29d3affefda8a4efab06b6b5e20c9f793daa85c4
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_SLDV_Based_Test.mldatx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_Test_Generation_Report.html b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_Test_Generation_Report.html
new file mode 100644
index 0000000000000000000000000000000000000000..bb0ca4d0cbfb11dc03d73523070491322dec76e4
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_Test_Generation_Report.html
@@ -0,0 +1,5 @@
+
+
+ Simulink Design Verifier Report Simulink Design Verifier Report
AHRS_voter Analysis Information
Model: AHRS_voter Mode: Test generation Model Representation: Cache from 14-May-2020 08:21:36 Test generation target: Model Status: Completed normally PreProcessing Time: 9s Analysis Time: 36s
Objectives Status
Number of Objectives: 2 Objectives Satisfied: 2
Chapter 2. Analysis InformationFile: AHRS_voter Version: 1.69 Time Stamp: Wed May 13 13:30:04 2020 Author: bpotter
Mode: TestGeneration Rebuild Model Representation: IfChangeIsDetected Test generation target: Model Test Suite Optimization: IndividualObjectives Maximum Testcase Steps: 10000time steps Test Conditions: UseLocalSettings Test Objectives: UseLocalSettings Model Coverage Objectives: MCDC Include Relational Boundary Objectives: on Floating point absolute tolerance: 1.0000e-05 Floating point relative tolerance: 0.0100 Maximum Analysis Time: 300s Block Replacement: off Parameters Analysis: off Include expected output values: on Randomize data that do not affect the outcome: off Additional analysis to reduce instances of rational approximation: on Save Data: on Save Harness: off Save Report: on
Design Min Max Constraints Chapter 3. Test Objectives StatusSimulink Design Verifier found test cases that exercise these test objectives.
# Type Model Item Description Analysis Time (sec) Test Case 1 Decision MultiportSwitch integer input value = 0 (output is from input port 0) 35 1 2 Decision Mid_Value/MinMax3 Logic to determine output element 3 input 2 is the maximum 35 2
This section presents, for each object in the model defining coverage objectives, the list of objectives and their individual status at the end of the analysis. It should match the coverage report obtained from running the generated test suite on the model, either from the harness model or by using the sldvruntest command.
#: Type Description Status Test Case 1 Decision integer input value = 0 (output is from input port 0) Satisfied 1
#: Type Description Status Test Case 2 Decision Logic to determine output element 3 input 2 is the maximum Satisfied 2
This section contains detailed information about each generated test case. Some input signals are unused. Input data will not be reported for them.
Summary
Length: 0 second (1 sample period)
Objectives Satisfied: 1
Objectives
Step Time Model Item Objectives 1 0 integer input value = 0 (output is from input port 0)
Generated Input Data
Time 0 Step 1 -180 -180 -180 -180 -180 0 -180 -180 -180 -180 -180 0 -180 -180 -180 -180 -180 0
Expected Output These output values are expected assuming that inputs that do not affect the test objectives (- in the table above) are given a default value - 0 for numeric types, and default value for enumerated types.
+
Time 0 Step 1 voted_fb [ 0 0 0 0 0 ]
Summary
Length: 0 second (1 sample period)
Objectives Satisfied: 1
Objectives
Step Time Model Item Objectives 1 0 Logic to determine output element 3 input 2 is the maximum
Generated Input Data
Time 0 Step 1 -180 -180 -180 -180 -180 1 -180 -180 -180 -180 -179 1 -180 -180 -180 -180 -178 1
Expected Output These output values are expected assuming that inputs that do not affect the test objectives (- in the table above) are given a default value - 0 for numeric types, and default value for enumerated types.
+
Time 0 Step 1 voted_fb [ -180 -180 -179 -180 -180 ]
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_Test_Generation_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_Test_Generation_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..b7df76f2a4ae8e7c39b5e8f50cf13f18655b5fb1
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_Test_Generation_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_sldvdata.mat b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_sldvdata.mat
new file mode 100644
index 0000000000000000000000000000000000000000..4b2db90db7c2c1149da29dcc66e592500ac3f8ec
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/AHRS_voter_sldvdata.mat differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/sl_test_baselines/TestCases_1.mat b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/sl_test_baselines/TestCases_1.mat
new file mode 100644
index 0000000000000000000000000000000000000000..2f47c2694a472ea552b87ad545e1a260541b760f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/sl_test_baselines/TestCases_1.mat differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/sl_test_baselines/TestCases_2.mat b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/sl_test_baselines/TestCases_2.mat
new file mode 100644
index 0000000000000000000000000000000000000000..08390f359aef502ef3240ea61b245d59a18945d9
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/AHRS_voter/verification/simulation_tests/low_level_tests/sl_test_baselines/TestCases_2.mat differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..f7ffd76a9ade5da0922911e6019c991bc5625919
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/ActuatorLoop.slmx b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/ActuatorLoop.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..cdd48a7678ef7215881bd5815ca0cc000f5d11c1
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/ActuatorLoop.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/ActuatorLoop.slx b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/ActuatorLoop.slx
new file mode 100644
index 0000000000000000000000000000000000000000..78770b1e45de42c5e72f52cb639782ad265e04bc
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/ActuatorLoop.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/documents/ActuatorLoop_SDD.pdf b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/documents/ActuatorLoop_SDD.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..6ec591754b0e6fe24cafe86b144122f8da1fe1fc
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/documents/ActuatorLoop_SDD.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/open_ActuatorLoop.m b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/open_ActuatorLoop.m
new file mode 100644
index 0000000000000000000000000000000000000000..c630188a38cd5d6a47d4617181d97416c1fd346b
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/specification/open_ActuatorLoop.m
@@ -0,0 +1 @@
+ActuatorLoop
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7ee8a1fc9029acdfb0ff5a0c420a6bd4a7319b95
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/verification/design_standard_checks/ActuatorLoop_SMS_Conformance_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/verification/design_standard_checks/ActuatorLoop_SMS_Conformance_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..bbc5b04d0edd3f14fd3d812dbe5072eea882c25e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/ActuatorLoop/verification/design_standard_checks/ActuatorLoop_SMS_Conformance_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..f7ffd76a9ade5da0922911e6019c991bc5625919
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/FCC.slmx b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/FCC.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..a1a36e7d830c9e1f88809c986777c8d001b3d324
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/FCC.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/FCC.slx b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/FCC.slx
new file mode 100644
index 0000000000000000000000000000000000000000..766913936f7efc2c544ffbb09b3507d8a2641717
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/FCC.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/documents/FCC_SDD.pdf b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/documents/FCC_SDD.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..01dd5b1554dd1807e03b5ac44a1fcfb3ac0aad21
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/documents/FCC_SDD.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/open_FCC.m b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/open_FCC.m
new file mode 100644
index 0000000000000000000000000000000000000000..dd7a031e86b143f8d0ff203e4c59b2c990008913
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/FCC/specification/open_FCC.m
@@ -0,0 +1 @@
+FCC;
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7ee8a1fc9029acdfb0ff5a0c420a6bd4a7319b95
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_Dead_Logic_Detection_Report.html b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_Dead_Logic_Detection_Report.html
new file mode 100644
index 0000000000000000000000000000000000000000..ef869c48811f5d6ed40fab9184329a48be384ed7
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_Dead_Logic_Detection_Report.html
@@ -0,0 +1,3 @@
+
+
+ Simulink Design Verifier Report Simulink Design Verifier Report
C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_03_Design\FCC\verification\design_error_detections\dead_logic\FCC_replacement.slx Analysis Information
Model: FCC Replacement Model: C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_03_Design\FCC\verification\design_error_detections\dead_logic\FCC_replacement.slx Mode: Design error detection Model Representation: Built on 13-May-2020 15:18:15 Status: Exceeded time limit PreProcessing Time: 13s Analysis Time: 299s
Objectives Status
Number of Objectives: 135 Objectives Valid: 10 Objectives Undecided: 4 Dead Logic: 6
Chapter 2. Analysis InformationFile: FCC Version: 1.71 Time Stamp: Mon May 11 08:00:40 2020 Author: bpotter
Mode: DesignErrorDetection Rebuild Model Representation: IfChangeIsDetected Detect dead logic: on Detect active logic: off Detect integer overflow: on Detect division by zero: on Detect specified minimum and maximum value violations: on Detect out of bound array access: on Detect non-finite and NaN floating-point values: off Detect subnormal floating-point values: off Detect data store access violations: off Maximum Analysis Time: 300s Block Replacement: off Parameters Analysis: off Include expected output values: off Randomize data that do not affect the outcome: off Additional analysis to reduce instances of rational approximation: on Save Data: on Save Harness: off Save Report: on
Design Min Max ConstraintsSimulink Design Verifier performed the following approximations during analysis. These can impact the precision of the results generated by Simulink Design Verifier. Please see the product documentation for further details.
# Type Description 1 Multi-instance Model reference approximation The model being analyzed references at least one model more than once. Simulink Design Verifier copies referenced model contents into the replacement model before analysis so that coverage objectives for each instance of a model are treated separately. This differs from Model Coverage reporting that combines instances for coverage. Coverage results from simulating test cases may differ from analysis results.
Simulink Design Verifier found that these decision and condition outcomes cannot occur and are dead logic in the model. Dead logic in the model can also be a side effect of parameter configurations or minimum and maximum constraints specified on input.
Chapter 4. Design Error Detection Objectives StatusSimulink Design Verifier was not able to process these objectives with the current options.
Chapter 5. Derived Ranges ActuatorControl1/TypeConversion6Summary
ActuatorControl2/TypeConversion6Summary
ActuatorControl3/TypeConversion6Summary
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_Dead_Logic_Detection_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_Dead_Logic_Detection_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..9fba38e9786d73948c963feb8bd2262d4b0f5663
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_Dead_Logic_Detection_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_replacement.dvo b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_replacement.dvo
new file mode 100644
index 0000000000000000000000000000000000000000..06b88ea249f4672d0be62bfc5bcaa4332ef0fc17
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_replacement.dvo differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_replacement.slx b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_replacement.slx
new file mode 100644
index 0000000000000000000000000000000000000000..0327309127db8eacefbb983d0443d78e231630a8
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_replacement.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_sldvdata.mat b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_sldvdata.mat
new file mode 100644
index 0000000000000000000000000000000000000000..11791568f04063d54910807aaccb2328154a5f2f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/FCC_sldvdata.mat differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/.status.txt b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/.status.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b2356a0e36ed654810df410feed310defa44d668
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/.status.txt
@@ -0,0 +1 @@
+completed:success
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_replacement.dvo b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_replacement.dvo
new file mode 100644
index 0000000000000000000000000000000000000000..0b23c43f7fb9a821af87a778a571e8366e57fc7d
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_replacement.dvo differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_replacement.slx b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_replacement.slx
new file mode 100644
index 0000000000000000000000000000000000000000..0326b39c1818e7499de94b027f9586165fd0fb3e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_replacement.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_sldvdata.mat b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_sldvdata.mat
new file mode 100644
index 0000000000000000000000000000000000000000..7509eacfdb0ab51217fa20aed76d7878be0635d5
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/FCC_sldvdata.mat differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_comments.db b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_comments.db
new file mode 100644
index 0000000000000000000000000000000000000000..0ee2cdfaa1951018a0766747034db53116fe162f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_comments.db differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_results.pscp b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_results.pscp
new file mode 100644
index 0000000000000000000000000000000000000000..f63152cb497dcdd72ee8a0e458c23e9af3fbed7f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_results.pscp differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_sources.db b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_sources.db
new file mode 100644
index 0000000000000000000000000000000000000000..437127f8ec9b361bb224cbe1a9fe545c1a78eccb
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/dead_logic/dead_logic/ps_sources.db differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_Design_Error_Detection_Report.html b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_Design_Error_Detection_Report.html
new file mode 100644
index 0000000000000000000000000000000000000000..7efb771aa5c9ccb39b8eda646ab6473281066c3a
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_Design_Error_Detection_Report.html
@@ -0,0 +1,3 @@
+
+
+ Simulink Design Verifier Report Simulink Design Verifier Report
C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_03_Design\FCC\verification\design_error_detections\design_error\FCC_replacement.slx Analysis Information
Model: FCC Replacement Model: C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_03_Design\FCC\verification\design_error_detections\design_error\FCC_replacement.slx Mode: Design error detection Model Representation: Built on 13-May-2020 13:56:51 Status: Exceeded time limit PreProcessing Time: 20s Analysis Time: 299s
Objectives Status
Number of Objectives: 14 Objectives Valid: 10 Objectives Undecided: 4
Chapter 2. Analysis InformationFile: FCC Version: 1.71 Time Stamp: Mon May 11 08:00:40 2020 Author: bpotter
Mode: DesignErrorDetection Rebuild Model Representation: IfChangeIsDetected Detect dead logic: off Detect active logic: off Detect integer overflow: on Detect division by zero: on Detect specified minimum and maximum value violations: on Detect out of bound array access: on Detect non-finite and NaN floating-point values: off Detect subnormal floating-point values: off Detect data store access violations: off Maximum Analysis Time: 300s Block Replacement: off Parameters Analysis: off Include expected output values: off Randomize data that do not affect the outcome: off Additional analysis to reduce instances of rational approximation: on Save Data: on Save Harness: off Save Report: on
Design Min Max ConstraintsSimulink Design Verifier performed the following approximations during analysis. These can impact the precision of the results generated by Simulink Design Verifier. Please see the product documentation for further details.
# Type Description 1 Multi-instance Model reference approximation The model being analyzed references at least one model more than once. Simulink Design Verifier copies referenced model contents into the replacement model before analysis so that coverage objectives for each instance of a model are treated separately. This differs from Model Coverage reporting that combines instances for coverage. Coverage results from simulating test cases may differ from analysis results.
Chapter 3. Design Error Detection Objectives StatusSimulink Design Verifier was not able to process these objectives with the current options.
Chapter 4. Derived Ranges ActuatorControl1/TypeConversion6Summary
ActuatorControl2/TypeConversion6Summary
ActuatorControl3/TypeConversion6Summary
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_Design_Error_Detection_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_Design_Error_Detection_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..9ea4931c37f06bb28796690288d481bc6a1b9a4a
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_Design_Error_Detection_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_replacement.dvo b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_replacement.dvo
new file mode 100644
index 0000000000000000000000000000000000000000..83eb496ea31e1e3afedd49d99c3d39a44a50d690
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_replacement.dvo differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_replacement.slx b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_replacement.slx
new file mode 100644
index 0000000000000000000000000000000000000000..83c089cb255fe484074d9e702cee68d000b500f6
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_replacement.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_sldvdata.mat b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_sldvdata.mat
new file mode 100644
index 0000000000000000000000000000000000000000..afa3731068f9ac00024a16ab7ec4d1e0257df66b
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_error_detections/design_error/FCC_sldvdata.mat differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_standard_checks/FCC_SMS_Conformance_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_standard_checks/FCC_SMS_Conformance_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..a2860e53fe4cc8695a53c3dec3ef83e8992a872e
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/FCC/verification/design_standard_checks/FCC_SMS_Conformance_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..f7ffd76a9ade5da0922911e6019c991bc5625919
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/Heli_inner_loop.slmx b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/Heli_inner_loop.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..2f9d1b1578f245a8f1d96a1f8da41cafbe791221
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/Heli_inner_loop.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/Heli_inner_loop.slx b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/Heli_inner_loop.slx
new file mode 100644
index 0000000000000000000000000000000000000000..0d3411fff8a6241dcd0a06120e0302721164d05d
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/Heli_inner_loop.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/documents/Heli_inner_loop_SDD.pdf b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/documents/Heli_inner_loop_SDD.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..12babcfb6284ee4b66e9de9de6e17731c618da63
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/documents/Heli_inner_loop_SDD.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/open_Heli_inner_loop.m b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/open_Heli_inner_loop.m
new file mode 100644
index 0000000000000000000000000000000000000000..543220067d13c216f7e8ed2ee47de92f849deb23
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/specification/open_Heli_inner_loop.m
@@ -0,0 +1,2 @@
+% DD_InnerLoop_Control;
+Heli_inner_loop;
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7ee8a1fc9029acdfb0ff5a0c420a6bd4a7319b95
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/verification/design_standard_checks/Heli_inner_loop_SMS_Conformance_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/verification/design_standard_checks/Heli_inner_loop_SMS_Conformance_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..d152f0184aa9cea6f7bfeb817c28df76895df081
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_inner_loop/verification/design_standard_checks/Heli_inner_loop_SMS_Conformance_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..f7ffd76a9ade5da0922911e6019c991bc5625919
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/Heli_outer_loop.slmx b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/Heli_outer_loop.slmx
new file mode 100644
index 0000000000000000000000000000000000000000..99e2d791ea625bd75c7fd317d135559dd595366f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/Heli_outer_loop.slmx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/Heli_outer_loop.slx b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/Heli_outer_loop.slx
new file mode 100644
index 0000000000000000000000000000000000000000..75021939e5fbc99bfa3ec327ff5a76e7a6a94ced
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/Heli_outer_loop.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/documents/Heli_outer_loop_SDD.pdf b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/documents/Heli_outer_loop_SDD.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..c487d9cd7ff1bd92ded8e506ae1a39ad27e1f92d
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/documents/Heli_outer_loop_SDD.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/open_Heli_outer_loop.m b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/open_Heli_outer_loop.m
new file mode 100644
index 0000000000000000000000000000000000000000..1ce4921b215458b9f82c6111bf8755b7348d7b57
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/specification/open_Heli_outer_loop.m
@@ -0,0 +1,2 @@
+%DD_OuterLoop_Control;
+Heli_outer_loop;
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7ee8a1fc9029acdfb0ff5a0c420a6bd4a7319b95
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/verification/design_standard_checks/Heli_outer_loop_SMS_Conformance_Report.pdf b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/verification/design_standard_checks/Heli_outer_loop_SMS_Conformance_Report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..10916f3477a07c49c903703acf371c0cb176a9ee
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/Heli_outer_loop/verification/design_standard_checks/Heli_outer_loop_SMS_Conformance_Report.pdf differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..e886626e2d531f7f94cf9ed628e0bdc73457c25c
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/specification/HeliLibrary.slx b/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/specification/HeliLibrary.slx
new file mode 100644
index 0000000000000000000000000000000000000000..3b485ebdd73c26c2fa6ba67ae388a67c11315664
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/specification/HeliLibrary.slx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..556cde1f6388818aa68cb31df9c5ba449634c03c
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/block_libraries/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/data/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/common/data/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..bf9974aa853650eec3723528685040d1f10493cd
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/data/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/data/HeliSystemDD.sldd b/src/DO178_Case_Study-master/DO_03_Design/common/data/HeliSystemDD.sldd
new file mode 100644
index 0000000000000000000000000000000000000000..2973a448343886941cfa3801b3c234503059d705
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/data/HeliSystemDD.sldd differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/data_types/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/common/data_types/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..743fd53fa89c327eaab2dfe07b39502abc8ea986
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/data_types/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/common/software_library_descriptions/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/common/software_library_descriptions/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..80197bf79e9d450472fe67d98698064e3bd4b6cd
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/common/software_library_descriptions/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/sample_model/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/sample_model/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..f7ffd76a9ade5da0922911e6019c991bc5625919
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/sample_model/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_03_Design/sample_model/verification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_03_Design/sample_model/verification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7ee8a1fc9029acdfb0ff5a0c420a6bd4a7319b95
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_03_Design/sample_model/verification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/00_Folder_Contents.docx b/src/DO178_Case_Study-master/DO_04_Code/specification/00_Folder_Contents.docx
new file mode 100644
index 0000000000000000000000000000000000000000..0ea83303718a8f0fce47ca4db68210b7722d6feb
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/00_Folder_Contents.docx differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.bat b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.bat
new file mode 100644
index 0000000000000000000000000000000000000000..ca6c48158e6ad937b2d6e7c8c454b5f032be7c6c
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.bat
@@ -0,0 +1,12 @@
+call "setup_msvc.bat"
+
+cd .
+
+if "%1"=="" (nmake -f FCC.mk all) else (nmake -f FCC.mk %1)
+@if errorlevel 1 goto error_exit
+
+exit 0
+
+:error_exit
+echo The make command returned an error of %errorlevel%
+exit 1
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.c b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.c
new file mode 100644
index 0000000000000000000000000000000000000000..e5c108b0ce5610dbff60d4a45896b206f7b52944
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.c
@@ -0,0 +1,262 @@
+/*
+ * File: FCC.c
+ *
+ * Code generated for Simulink model 'FCC'.
+ *
+ * Model version : 1.71
+ * Simulink Coder version : 9.2 (R2019b) 18-Jul-2019
+ * C/C++ source code generated on : Wed May 13 13:32:12 2020
+ *
+ * Target selection: ert.tlc
+ * Embedded hardware selection: Intel->x86-32 (Windows32)
+ * Code generation objectives: Unspecified
+ * Validation result: Not run
+ */
+
+#include "FCC.h"
+
+/* Block signals (default storage) */
+B_FCC_T FCC_B;
+
+/* Block states (default storage) */
+DW_FCC_T FCC_DW;
+
+/* External inputs (root inport signals with default storage) */
+ExtU_FCC_T FCC_U;
+
+/* External outputs (root outports fed by signals with default storage) */
+ExtY_FCC_T FCC_Y;
+
+/* Real-time model */
+RT_MODEL_FCC_T FCC_M_;
+RT_MODEL_FCC_T *const FCC_M = &FCC_M_;
+const AHRS_Bus FCC_rtZAHRS_Bus = { 0.0,/* theta */
+ 0.0, /* phi */
+ 0.0, /* psi */
+ 0.0, /* q */
+ 0.0, /* p */
+ 0.0, /* r */
+ false /* valid */
+};
+
+/* Model step function for TID0 */
+void FCC_step0(void) /* Sample time: [0.001s, 0.0s] */
+{
+ /* Update the flag to indicate when data transfers from
+ * Sample time: [0.001s, 0.0s] to Sample time: [0.01s, 0.0s] */
+ FCC_M->Timing.RateInteraction.b_TID0_1 = (FCC_M->Timing.RateInteraction.TID0_1
+ == 0);
+ (FCC_M->Timing.RateInteraction.TID0_1)++;
+ if ((FCC_M->Timing.RateInteraction.TID0_1) > 9) {
+ FCC_M->Timing.RateInteraction.TID0_1 = 0;
+ }
+
+ /* RateTransition: '/RateTransition1' */
+ if (FCC_M->Timing.RateInteraction.TID0_1 == 1) {
+ FCC_B.RateTransition1 = FCC_DW.RateTransition1_Buffer0;
+ }
+
+ /* End of RateTransition: '/RateTransition1' */
+
+ /* ModelReference: '/ActuatorControl1' incorporates:
+ * Inport: '/Act_Pos1'
+ * Outport: '/Actuator1'
+ *
+ * Block requirements for '/ActuatorControl1':
+ * 1. HLR_4: Hydraulic Actuator Loop Control (HelicopterSoftwareRequirements#8)
+ *
+ * Block requirements for '/Act_Pos1':
+ * 1. HLR_2 : Hydraulic Actuator Feedback (HelicopterSoftwareRequirements#6)
+ *
+ * Block requirements for '/Actuator1':
+ * 1. HLR_3: Hydraulic Actuator Drive (HelicopterSoftwareRequirements#7)
+ */
+ ActuatorLoop(&FCC_U.Act_Pos1, &FCC_B.RateTransition1, &FCC_Y.Actuator1,
+ &(FCC_DW.ActuatorControl1_InstanceData.rtb),
+ &(FCC_DW.ActuatorControl1_InstanceData.rtdw), 0.339, 0.00272,
+ 2.73);
+
+ /* RateTransition: '/RateTransition2' */
+ if (FCC_M->Timing.RateInteraction.TID0_1 == 1) {
+ FCC_B.RateTransition2 = FCC_DW.RateTransition2_Buffer0;
+ }
+
+ /* End of RateTransition: '/RateTransition2' */
+
+ /* ModelReference: '/ActuatorControl2' incorporates:
+ * Inport: '/Act_Pos2'
+ * Outport: '/Actuator2'
+ *
+ * Block requirements for '/ActuatorControl2':
+ * 1. HLR_4: Hydraulic Actuator Loop Control (HelicopterSoftwareRequirements#8)
+ *
+ * Block requirements for '/Act_Pos2':
+ * 1. HLR_2 : Hydraulic Actuator Feedback (HelicopterSoftwareRequirements#6)
+ *
+ * Block requirements for '/Actuator2':
+ * 1. HLR_3: Hydraulic Actuator Drive (HelicopterSoftwareRequirements#7)
+ */
+ ActuatorLoop(&FCC_U.Act_Pos2, &FCC_B.RateTransition2, &FCC_Y.Actuator2,
+ &(FCC_DW.ActuatorControl2_InstanceData.rtb),
+ &(FCC_DW.ActuatorControl2_InstanceData.rtdw), 0.339, 0.00272,
+ 2.73);
+
+ /* RateTransition: '/RateTransition3' */
+ if (FCC_M->Timing.RateInteraction.TID0_1 == 1) {
+ FCC_B.RateTransition3 = FCC_DW.RateTransition3_Buffer0;
+ }
+
+ /* End of RateTransition: '/RateTransition3' */
+
+ /* ModelReference: '/ActuatorControl3' incorporates:
+ * Inport: '/Act_Pos3'
+ * Outport: '/Actuator3'
+ *
+ * Block requirements for '/ActuatorControl3':
+ * 1. HLR_4: Hydraulic Actuator Loop Control (HelicopterSoftwareRequirements#8)
+ *
+ * Block requirements for '/Act_Pos3':
+ * 1. HLR_2 : Hydraulic Actuator Feedback (HelicopterSoftwareRequirements#6)
+ *
+ * Block requirements for '/Actuator3':
+ * 1. HLR_3: Hydraulic Actuator Drive (HelicopterSoftwareRequirements#7)
+ */
+ ActuatorLoop(&FCC_U.Act_Pos3, &FCC_B.RateTransition3, &FCC_Y.Actuator3,
+ &(FCC_DW.ActuatorControl3_InstanceData.rtb),
+ &(FCC_DW.ActuatorControl3_InstanceData.rtdw), 0.339, 0.00272,
+ 2.73);
+}
+
+/* Model step function for TID1 */
+void FCC_step1(void) /* Sample time: [0.01s, 0.0s] */
+{
+ /* local block i/o variables */
+ real_T rtb_Model2[5];
+ real_T rtb_Model1_o1;
+ real_T rtb_Model1_o2;
+ real_T rtb_Model1_o3;
+ real_T rtb_Model[3];
+
+ /* ModelReference: '/Model2' incorporates:
+ * Inport: '/AHRS1'
+ * Inport: '/AHRS2'
+ * Inport: '/AHRS3'
+ *
+ * Block requirements for '/Model2':
+ * 1. HLR_9 : AHRS Validity Check (HelicopterSoftwareRequirements#13)
+ * 2. HLR_11: AHRS Voting for Triple Sensors (HelicopterSoftwareRequirements#15)
+ * 3. HLR_12: AHRS Voting for Dual Sensors (HelicopterSoftwareRequirements#16)
+ * 4. HLR_13: AHRS Usage of Single Sensor (HelicopterSoftwareRequirements#17)
+ *
+ * Block requirements for '/AHRS1':
+ * 1. HLR_10: AHRS Input Signal Processing (HelicopterSoftwareRequirements#14)
+ *
+ * Block requirements for '/AHRS2':
+ * 1. HLR_10: AHRS Input Signal Processing (HelicopterSoftwareRequirements#14)
+ *
+ * Block requirements for '/AHRS3':
+ * 1. HLR_10: AHRS Input Signal Processing (HelicopterSoftwareRequirements#14)
+ */
+ AHRS_voter(&FCC_U.AHRS1, &FCC_U.AHRS2, &FCC_U.AHRS3, &rtb_Model2[0]);
+
+ /* ModelReference: '/Model1' incorporates:
+ * Inport: '/Pilot_phi_cmd'
+ * Inport: '/Pilot_r_cmd'
+ * Inport: '/Pilot_theta_cmd'
+ *
+ * Block requirements for '/Model1':
+ * 1. HLR_6: Pitch Outer Loop Control (HelicopterSoftwareRequirements#10)
+ * 2. HLR_7: Roll Outer Loop Control (HelicopterSoftwareRequirements#11)
+ * 3. HLR_8: Yaw Outer Loop Control (HelicopterSoftwareRequirements#12)
+ *
+ * Block requirements for '/Pilot_phi_cmd':
+ * 1. HLR_1: Pilot Input Signal Processing (HelicopterSoftwareRequirements#5)
+ *
+ * Block requirements for '/Pilot_r_cmd':
+ * 1. HLR_1: Pilot Input Signal Processing (HelicopterSoftwareRequirements#5)
+ *
+ * Block requirements for '/Pilot_theta_cmd':
+ * 1. HLR_1: Pilot Input Signal Processing (HelicopterSoftwareRequirements#5)
+ */
+ Heli_outer_loop(&FCC_U.Pilot_theta_cmd, &FCC_U.Pilot_phi_cmd,
+ &FCC_U.Pilot_r_cmd, &rtb_Model2[0], &rtb_Model1_o1,
+ &rtb_Model1_o2, &rtb_Model1_o3);
+
+ /* ModelReference: '/Model'
+ *
+ * Block requirements for '/Model':
+ * 1. HLR_5: Multi-Variable Inner Loop Control (HelicopterSoftwareRequirements#9)
+ */
+ Heli_inner_loop(&rtb_Model1_o1, &rtb_Model1_o2, &rtb_Model1_o3, &rtb_Model2[0],
+ &rtb_Model[0]);
+
+ /* RateTransition: '/RateTransition1' */
+ FCC_DW.RateTransition1_Buffer0 = rtb_Model[0];
+
+ /* RateTransition: '/RateTransition2' */
+ FCC_DW.RateTransition2_Buffer0 = rtb_Model[1];
+
+ /* RateTransition: '/RateTransition3' */
+ FCC_DW.RateTransition3_Buffer0 = rtb_Model[2];
+}
+
+/* Model initialize function */
+void FCC_initialize(void)
+{
+ /* Registration code */
+
+ /* initialize real-time model */
+ (void) memset((void *)FCC_M, 0,
+ sizeof(RT_MODEL_FCC_T));
+
+ /* block I/O */
+ {
+ FCC_B.RateTransition1 = 0.0;
+ FCC_B.RateTransition2 = 0.0;
+ FCC_B.RateTransition3 = 0.0;
+ }
+
+ /* states (dwork) */
+ (void) memset((void *)&FCC_DW, 0,
+ sizeof(DW_FCC_T));
+ FCC_DW.RateTransition1_Buffer0 = 0.0;
+ FCC_DW.RateTransition2_Buffer0 = 0.0;
+ FCC_DW.RateTransition3_Buffer0 = 0.0;
+
+ /* external inputs */
+ (void)memset((void *)(&FCC_U), 0, sizeof(ExtU_FCC_T));
+ FCC_U.AHRS1 = FCC_rtZAHRS_Bus;
+ FCC_U.AHRS2 = FCC_rtZAHRS_Bus;
+ FCC_U.AHRS3 = FCC_rtZAHRS_Bus;
+
+ /* external outputs */
+ (void) memset((void *)&FCC_Y, 0,
+ sizeof(ExtY_FCC_T));
+
+ /* Model Initialize function for ModelReference Block: '/ActuatorControl1' */
+ ActuatorLoop_initialize(&(FCC_DW.ActuatorControl1_InstanceData.rtb),
+ &(FCC_DW.ActuatorControl1_InstanceData.rtdw));
+
+ /* Model Initialize function for ModelReference Block: '/ActuatorControl2' */
+ ActuatorLoop_initialize(&(FCC_DW.ActuatorControl2_InstanceData.rtb),
+ &(FCC_DW.ActuatorControl2_InstanceData.rtdw));
+
+ /* Model Initialize function for ModelReference Block: '/ActuatorControl3' */
+ ActuatorLoop_initialize(&(FCC_DW.ActuatorControl3_InstanceData.rtb),
+ &(FCC_DW.ActuatorControl3_InstanceData.rtdw));
+
+ /* Model Initialize function for ModelReference Block: '/Model' */
+ Heli_inner_loop_initialize();
+
+ /* Model Initialize function for ModelReference Block: '/Model1' */
+ Heli_outer_loop_initialize();
+
+ /* Model Initialize function for ModelReference Block: '/Model2' */
+ AHRS_voter_initialize();
+}
+
+/*
+ * File trailer for generated code.
+ *
+ * [EOF]
+ */
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.h b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.h
new file mode 100644
index 0000000000000000000000000000000000000000..16ef70536ae6a9a7fa15c683483902abae4fe326
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.h
@@ -0,0 +1,159 @@
+/*
+ * File: FCC.h
+ *
+ * Code generated for Simulink model 'FCC'.
+ *
+ * Model version : 1.71
+ * Simulink Coder version : 9.2 (R2019b) 18-Jul-2019
+ * C/C++ source code generated on : Wed May 13 13:32:12 2020
+ *
+ * Target selection: ert.tlc
+ * Embedded hardware selection: Intel->x86-32 (Windows32)
+ * Code generation objectives: Unspecified
+ * Validation result: Not run
+ */
+
+#ifndef RTW_HEADER_FCC_h_
+#define RTW_HEADER_FCC_h_
+#include "rtwtypes.h"
+#include
+#ifndef FCC_COMMON_INCLUDES_
+# define FCC_COMMON_INCLUDES_
+#include "rtwtypes.h"
+#endif /* FCC_COMMON_INCLUDES_ */
+
+/* Child system includes */
+#include "ActuatorLoop.h"
+#define AHRS_voter_MDLREF_HIDE_CHILD_
+#include "AHRS_voter.h"
+#define Heli_outer_loop_MDLREF_HIDE_CHILD_
+#include "Heli_outer_loop.h"
+#define Heli_inner_loop_MDLREF_HIDE_CHILD_
+#include "Heli_inner_loop.h"
+
+/* Macros for accessing real-time model data structure */
+
+/* Forward declaration for rtModel */
+typedef struct tag_RTM_FCC_T RT_MODEL_FCC_T;
+
+#ifndef DEFINED_TYPEDEF_FOR_AHRS_Bus_
+#define DEFINED_TYPEDEF_FOR_AHRS_Bus_
+
+typedef struct {
+ real_T theta;
+ real_T phi;
+ real_T psi;
+ real_T q;
+ real_T p;
+ real_T r;
+ boolean_T valid;
+} AHRS_Bus;
+
+#endif
+
+/* Block signals (default storage) */
+typedef struct {
+ real_T RateTransition1; /* '/RateTransition1' (Output 1) */
+ real_T RateTransition2; /* '/RateTransition2' (Output 1) */
+ real_T RateTransition3; /* '/RateTransition3' (Output 1) */
+} B_FCC_T;
+
+/* Block states (default storage) for system '' */
+typedef struct {
+ real_T RateTransition1_Buffer0; /* '/RateTransition1' (DWork 1) */
+ real_T RateTransition2_Buffer0; /* '/RateTransition2' (DWork 1) */
+ real_T RateTransition3_Buffer0; /* '/RateTransition3' (DWork 1) */
+ MdlrefDW_ActuatorLoop_T ActuatorControl1_InstanceData;
+ /* '/ActuatorControl1' (DWork 1) */
+ MdlrefDW_ActuatorLoop_T ActuatorControl2_InstanceData;
+ /* '/ActuatorControl2' (DWork 1) */
+ MdlrefDW_ActuatorLoop_T ActuatorControl3_InstanceData;
+ /* '/ActuatorControl3' (DWork 1) */
+} DW_FCC_T;
+
+/* External inputs (root inport signals with default storage) */
+typedef struct {
+ int16_T Act_Pos1; /* '/Act_Pos1' */
+ int16_T Act_Pos2; /* '/Act_Pos2' */
+ int16_T Act_Pos3; /* '/Act_Pos3' */
+ int16_T Pilot_theta_cmd; /* '/Pilot_theta_cmd' */
+ int16_T Pilot_phi_cmd; /* '/Pilot_phi_cmd' */
+ int16_T Pilot_r_cmd; /* '/Pilot_r_cmd' */
+ AHRS_Bus AHRS1; /* '/AHRS1' */
+ AHRS_Bus AHRS2; /* '/AHRS2' */
+ AHRS_Bus AHRS3; /* '/AHRS3' */
+} ExtU_FCC_T;
+
+/* External outputs (root outports fed by signals with default storage) */
+typedef struct {
+ int16_T Actuator1; /* '/Actuator1' */
+ int16_T Actuator2; /* '/Actuator2' */
+ int16_T Actuator3; /* '/Actuator3' */
+} ExtY_FCC_T;
+
+/* Real-time Model Data Structure */
+struct tag_RTM_FCC_T {
+ /*
+ * Timing:
+ * The following substructure contains information regarding
+ * the timing information for the model.
+ */
+ struct {
+ struct {
+ uint32_T TID0_1;
+ boolean_T b_TID0_1;
+ } RateInteraction;
+ } Timing;
+};
+
+/* Block signals (default storage) */
+extern B_FCC_T FCC_B;
+
+/* Block states (default storage) */
+extern DW_FCC_T FCC_DW;
+
+/* External inputs (root inport signals with default storage) */
+extern ExtU_FCC_T FCC_U;
+
+/* External outputs (root outports fed by signals with default storage) */
+extern ExtY_FCC_T FCC_Y;
+
+/* External data declarations for dependent source files */
+extern const AHRS_Bus FCC_rtZAHRS_Bus; /* AHRS_Bus ground */
+
+/* Model entry point functions */
+extern void FCC_initialize(void);
+extern void FCC_step0(void);
+extern void FCC_step1(void);
+
+/* Real-time Model object */
+extern RT_MODEL_FCC_T *const FCC_M;
+
+/*-
+ * The generated code includes comments that allow you to trace directly
+ * back to the appropriate location in the model. The basic format
+ * is /block_name, where system is the system number (uniquely
+ * assigned by Simulink) and block_name is the name of the block.
+ *
+ * Use the MATLAB hilite_system command to trace the generated code back
+ * to the model. For example,
+ *
+ * hilite_system('') - opens system 3
+ * hilite_system('/Kp') - opens and selects block Kp which resides in S3
+ *
+ * Here is the system hierarchy for this model
+ *
+ * '' : 'FCC'
+ * '' : 'FCC/ModelInfo'
+ */
+
+/*-
+ * Requirements for '': FCC
+ */
+#endif /* RTW_HEADER_FCC_h_ */
+
+/*
+ * File trailer for generated code.
+ *
+ * [EOF]
+ */
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.mk b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.mk
new file mode 100644
index 0000000000000000000000000000000000000000..1346c3981afd712442bd18fb5562e31889a6d366
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.mk
@@ -0,0 +1,417 @@
+###########################################################################
+## Makefile generated for Simulink model 'FCC'.
+##
+## Makefile : FCC.mk
+## Generated on : Wed May 13 13:32:18 2020
+## MATLAB Coder version: 4.3 (R2019b)
+##
+## Build Info:
+##
+## Final product: $(RELATIVE_PATH_TO_ANCHOR)\FCC.exe
+## Product type : executable
+## Build type : Top-Level Standalone Executable
+##
+###########################################################################
+
+###########################################################################
+## MACROS
+###########################################################################
+
+# Macro Descriptions:
+# PRODUCT_NAME Name of the system to build
+# MAKEFILE Name of this makefile
+# MODELREF_LINK_RSPFILE Linker command listing model reference link objects
+# COMPILER_COMMAND_FILE Compiler command listing model reference header paths
+# CMD_FILE Command file
+
+PRODUCT_NAME = FCC
+MAKEFILE = FCC.mk
+MATLAB_ROOT = C:\PROGRA~1\MATLAB\R2019b
+MATLAB_BIN = C:\PROGRA~1\MATLAB\R2019b\bin
+MATLAB_ARCH_BIN = $(MATLAB_BIN)\win64
+MASTER_ANCHOR_DIR =
+START_DIR = C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification
+SOLVER =
+SOLVER_OBJ =
+CLASSIC_INTERFACE = 0
+TGT_FCN_LIB = ISO_C
+MODEL_HAS_DYNAMICALLY_LOADED_SFCNS = 0
+RELATIVE_PATH_TO_ANCHOR = ..
+MODELREF_LINK_RSPFILE = FCC_ref.rsp
+COMPILER_COMMAND_FILE = FCC_comp.rsp
+CMD_FILE = FCC.rsp
+C_STANDARD_OPTS =
+CPP_STANDARD_OPTS =
+NODEBUG = 1
+
+###########################################################################
+## TOOLCHAIN SPECIFICATIONS
+###########################################################################
+
+# Toolchain Name: Microsoft Visual C++ 2015 v14.0 | nmake (64-bit Windows)
+# Supported Version(s): 14.0
+# ToolchainInfo Version: 2019b
+# Specification Revision: 1.0
+#
+#-------------------------------------------
+# Macros assumed to be defined elsewhere
+#-------------------------------------------
+
+# NODEBUG
+# cvarsdll
+# cvarsmt
+# conlibsmt
+# ldebug
+# conflags
+# cflags
+
+#-----------
+# MACROS
+#-----------
+
+MW_EXTERNLIB_DIR = $(MATLAB_ROOT)\extern\lib\win64\microsoft
+MW_LIB_DIR = $(MATLAB_ROOT)\lib\win64
+CPU = AMD64
+APPVER = 5.02
+CVARSFLAG = $(cvarsmt)
+CFLAGS_ADDITIONAL = -D_CRT_SECURE_NO_WARNINGS
+CPPFLAGS_ADDITIONAL = -EHs -D_CRT_SECURE_NO_WARNINGS
+LIBS_TOOLCHAIN = $(conlibs)
+
+TOOLCHAIN_SRCS =
+TOOLCHAIN_INCS =
+TOOLCHAIN_LIBS =
+
+#------------------------
+# BUILD TOOL COMMANDS
+#------------------------
+
+# C Compiler: Microsoft Visual C Compiler
+CC = cl
+
+# Linker: Microsoft Visual C Linker
+LD = link
+
+# C++ Compiler: Microsoft Visual C++ Compiler
+CPP = cl
+
+# C++ Linker: Microsoft Visual C++ Linker
+CPP_LD = link
+
+# Archiver: Microsoft Visual C/C++ Archiver
+AR = lib
+
+# MEX Tool: MEX Tool
+MEX_PATH = $(MATLAB_ARCH_BIN)
+MEX = "$(MEX_PATH)\mex"
+
+# Download: Download
+DOWNLOAD =
+
+# Execute: Execute
+EXECUTE = $(PRODUCT)
+
+# Builder: NMAKE Utility
+MAKE = nmake
+
+
+#-------------------------
+# Directives/Utilities
+#-------------------------
+
+CDEBUG = -Zi
+C_OUTPUT_FLAG = -Fo
+LDDEBUG = /DEBUG
+OUTPUT_FLAG = -out:
+CPPDEBUG = -Zi
+CPP_OUTPUT_FLAG = -Fo
+CPPLDDEBUG = /DEBUG
+OUTPUT_FLAG = -out:
+ARDEBUG =
+STATICLIB_OUTPUT_FLAG = -out:
+MEX_DEBUG = -g
+RM = @del
+ECHO = @echo
+MV = @ren
+RUN = @cmd /C
+
+#----------------------------------------
+# "Faster Builds" Build Configuration
+#----------------------------------------
+
+ARFLAGS = /nologo
+CFLAGS = $(cflags) $(CVARSFLAG) $(CFLAGS_ADDITIONAL) \
+ /Od /Oy-
+CPPFLAGS = /TP $(cflags) $(CVARSFLAG) $(CPPFLAGS_ADDITIONAL) \
+ /Od /Oy-
+CPP_LDFLAGS = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN)
+CPP_SHAREDLIB_LDFLAGS = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN) \
+ -dll -def:$(DEF_FILE)
+DOWNLOAD_FLAGS =
+EXECUTE_FLAGS =
+LDFLAGS = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN)
+MEX_CPPFLAGS =
+MEX_CPPLDFLAGS =
+MEX_CFLAGS =
+MEX_LDFLAGS =
+MAKE_FLAGS = -f $(MAKEFILE)
+SHAREDLIB_LDFLAGS = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN) \
+ -dll -def:$(DEF_FILE)
+
+
+
+###########################################################################
+## OUTPUT INFO
+###########################################################################
+
+PRODUCT = $(RELATIVE_PATH_TO_ANCHOR)\FCC.exe
+PRODUCT_TYPE = "executable"
+BUILD_TYPE = "Top-Level Standalone Executable"
+
+###########################################################################
+## INCLUDE PATHS
+###########################################################################
+
+INCLUDES_BUILDINFO =
+
+INCLUDES = $(INCLUDES_BUILDINFO)
+
+###########################################################################
+## DEFINES
+###########################################################################
+
+DEFINES_BUILD_ARGS = -DCLASSIC_INTERFACE=0 -DALLOCATIONFCN=0 -DTERMFCN=0 -DONESTEPFCN=1 -DMAT_FILE=0 -DMULTI_INSTANCE_CODE=0 -DINTEGER_CODE=0 -DMT=1
+DEFINES_CUSTOM =
+DEFINES_IMPLIED = -DTID01EQ=0
+DEFINES_OPTS = -DPORTABLE_WORDSIZES
+DEFINES_STANDARD = -DMODEL=FCC -DNUMST=2 -DNCSTATES=0 -DHAVESTDIO -DMODEL_HAS_DYNAMICALLY_LOADED_SFCNS=0
+
+DEFINES = $(DEFINES_BUILD_ARGS) $(DEFINES_CUSTOM) $(DEFINES_IMPLIED) $(DEFINES_OPTS) $(DEFINES_STANDARD)
+
+###########################################################################
+## SOURCE FILES
+###########################################################################
+
+SRCS = $(START_DIR)\FCC_ert_rtw\FCC.c
+
+MAIN_SRC = $(START_DIR)\FCC_ert_rtw\ert_main.c
+
+ALL_SRCS = $(SRCS) $(MAIN_SRC)
+
+###########################################################################
+## OBJECTS
+###########################################################################
+
+OBJS = FCC.obj
+
+MAIN_OBJ = ert_main.obj
+
+ALL_OBJS = $(OBJS) $(MAIN_OBJ)
+
+###########################################################################
+## PREBUILT OBJECT FILES
+###########################################################################
+
+PREBUILT_OBJS =
+
+###########################################################################
+## LIBRARIES
+###########################################################################
+
+MODELREF_LIBS = C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\AHRS_voter\AHRS_voter_rtwlib.lib C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\ActuatorLoop\ActuatorLoop_rtwlib.lib C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\Heli_inner_loop\Heli_inner_loop_rtwlib.lib C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\Heli_outer_loop\Heli_outer_loop_rtwlib.lib
+
+LIBS =
+
+###########################################################################
+## SYSTEM LIBRARIES
+###########################################################################
+
+SYSTEM_LIBS =
+
+###########################################################################
+## ADDITIONAL TOOLCHAIN FLAGS
+###########################################################################
+
+#---------------
+# C Compiler
+#---------------
+
+CFLAGS_BASIC = $(DEFINES) @$(COMPILER_COMMAND_FILE)
+
+CFLAGS = $(CFLAGS) $(CFLAGS_BASIC)
+
+#-----------------
+# C++ Compiler
+#-----------------
+
+CPPFLAGS_BASIC = $(DEFINES) @$(COMPILER_COMMAND_FILE)
+
+CPPFLAGS = $(CPPFLAGS) $(CPPFLAGS_BASIC)
+
+###########################################################################
+## INLINED COMMANDS
+###########################################################################
+
+
+!include $(MATLAB_ROOT)\rtw\c\tools\vcdefs.mak
+
+
+###########################################################################
+## PHONY TARGETS
+###########################################################################
+
+.PHONY : all build buildobj clean info prebuild download execute set_environment_variables
+
+
+all : build
+ @cmd /C "@echo ### Successfully generated all binary outputs."
+
+
+build : set_environment_variables prebuild $(PRODUCT)
+
+
+buildobj : set_environment_variables prebuild $(OBJS) $(PREBUILT_OBJS)
+ @cmd /C "@echo ### Successfully generated all binary outputs."
+
+
+prebuild :
+
+
+download : $(PRODUCT)
+
+
+execute : download
+ @cmd /C "@echo ### Invoking postbuild tool "Execute" ..."
+ $(EXECUTE) $(EXECUTE_FLAGS)
+ @cmd /C "@echo ### Done invoking postbuild tool."
+
+
+set_environment_variables :
+ @set INCLUDE=$(INCLUDES);$(INCLUDE)
+ @set LIB=$(LIB)
+
+
+###########################################################################
+## FINAL TARGET
+###########################################################################
+
+#-------------------------------------------
+# Create a standalone executable
+#-------------------------------------------
+
+$(PRODUCT) : $(OBJS) $(PREBUILT_OBJS) $(MODELREF_LIBS) $(MAIN_OBJ)
+ @cmd /C "@echo ### Creating standalone executable "$(PRODUCT)" ..."
+ $(LD) $(LDFLAGS) -out:$(PRODUCT) @$(CMD_FILE) @$(MODELREF_LINK_RSPFILE) $(SYSTEM_LIBS) $(TOOLCHAIN_LIBS)
+ @cmd /C "@echo ### Created: $(PRODUCT)"
+
+
+###########################################################################
+## INTERMEDIATE TARGETS
+###########################################################################
+
+#---------------------
+# SOURCE-TO-OBJECT
+#---------------------
+
+.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+.cpp.obj :
+ $(CPP) $(CPPFLAGS) -Fo"$@" "$<"
+
+
+{$(RELATIVE_PATH_TO_ANCHOR)}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+{$(RELATIVE_PATH_TO_ANCHOR)}.cpp.obj :
+ $(CPP) $(CPPFLAGS) -Fo"$@" "$<"
+
+
+{$(START_DIR)}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+{$(START_DIR)}.cpp.obj :
+ $(CPP) $(CPPFLAGS) -Fo"$@" "$<"
+
+
+{$(START_DIR)\FCC_ert_rtw}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+{$(START_DIR)\FCC_ert_rtw}.cpp.obj :
+ $(CPP) $(CPPFLAGS) -Fo"$@" "$<"
+
+
+{$(MATLAB_ROOT)\rtw\c\src}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+{$(MATLAB_ROOT)\rtw\c\src}.cpp.obj :
+ $(CPP) $(CPPFLAGS) -Fo"$@" "$<"
+
+
+{$(MATLAB_ROOT)\simulink\src}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+{$(MATLAB_ROOT)\simulink\src}.cpp.obj :
+ $(CPP) $(CPPFLAGS) -Fo"$@" "$<"
+
+
+{$(START_DIR)\FCC_ert_rtw}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+{$(START_DIR)\FCC_ert_rtw}.c.obj :
+ $(CC) $(CFLAGS) -Fo"$@" "$<"
+
+
+###########################################################################
+## DEPENDENCIES
+###########################################################################
+
+$(ALL_OBJS) : rtw_proj.tmw $(COMPILER_COMMAND_FILE) $(MAKEFILE)
+
+
+###########################################################################
+## MISCELLANEOUS TARGETS
+###########################################################################
+
+info :
+ @cmd /C "@echo ### PRODUCT = $(PRODUCT)"
+ @cmd /C "@echo ### PRODUCT_TYPE = $(PRODUCT_TYPE)"
+ @cmd /C "@echo ### BUILD_TYPE = $(BUILD_TYPE)"
+ @cmd /C "@echo ### INCLUDES = $(INCLUDES)"
+ @cmd /C "@echo ### DEFINES = $(DEFINES)"
+ @cmd /C "@echo ### ALL_SRCS = $(ALL_SRCS)"
+ @cmd /C "@echo ### ALL_OBJS = $(ALL_OBJS)"
+ @cmd /C "@echo ### LIBS = $(LIBS)"
+ @cmd /C "@echo ### MODELREF_LIBS = $(MODELREF_LIBS)"
+ @cmd /C "@echo ### SYSTEM_LIBS = $(SYSTEM_LIBS)"
+ @cmd /C "@echo ### TOOLCHAIN_LIBS = $(TOOLCHAIN_LIBS)"
+ @cmd /C "@echo ### CFLAGS = $(CFLAGS)"
+ @cmd /C "@echo ### LDFLAGS = $(LDFLAGS)"
+ @cmd /C "@echo ### SHAREDLIB_LDFLAGS = $(SHAREDLIB_LDFLAGS)"
+ @cmd /C "@echo ### CPPFLAGS = $(CPPFLAGS)"
+ @cmd /C "@echo ### CPP_LDFLAGS = $(CPP_LDFLAGS)"
+ @cmd /C "@echo ### CPP_SHAREDLIB_LDFLAGS = $(CPP_SHAREDLIB_LDFLAGS)"
+ @cmd /C "@echo ### ARFLAGS = $(ARFLAGS)"
+ @cmd /C "@echo ### MEX_CFLAGS = $(MEX_CFLAGS)"
+ @cmd /C "@echo ### MEX_CPPFLAGS = $(MEX_CPPFLAGS)"
+ @cmd /C "@echo ### MEX_LDFLAGS = $(MEX_LDFLAGS)"
+ @cmd /C "@echo ### MEX_CPPLDFLAGS = $(MEX_CPPLDFLAGS)"
+ @cmd /C "@echo ### DOWNLOAD_FLAGS = $(DOWNLOAD_FLAGS)"
+ @cmd /C "@echo ### EXECUTE_FLAGS = $(EXECUTE_FLAGS)"
+ @cmd /C "@echo ### MAKE_FLAGS = $(MAKE_FLAGS)"
+
+
+clean :
+ $(ECHO) "### Deleting all derived files..."
+ @if exist $(PRODUCT) $(RM) $(PRODUCT)
+ $(RM) $(ALL_OBJS)
+ $(ECHO) "### Deleted all derived files."
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.obj b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.obj
new file mode 100644
index 0000000000000000000000000000000000000000..0e0e217c22305401c5c86288e52af152ec4a2782
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.obj differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.rsp b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.rsp
new file mode 100644
index 0000000000000000000000000000000000000000..1f6674c5def48d0431bec5fb9c29746c5b2e53db
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC.rsp
@@ -0,0 +1,2 @@
+FCC.obj
+ert_main.obj
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC_comp.rsp b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC_comp.rsp
new file mode 100644
index 0000000000000000000000000000000000000000..a618979fdc26a11d93b2ba2a5750474bfcd8714c
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC_comp.rsp
@@ -0,0 +1,12 @@
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\Heli_outer_loop
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\Heli_inner_loop
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\ActuatorLoop
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\AHRS_voter
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\FCC_ert_rtw
+-I"C:\Program Files\MATLAB\R2019b\extern\include"
+-I"C:\Program Files\MATLAB\R2019b\simulink\include"
+-I"C:\Program Files\MATLAB\R2019b\rtw\c\src"
+-I"C:\Program Files\MATLAB\R2019b\rtw\c\src\ext_mode\common"
+-I"C:\Program Files\MATLAB\R2019b\rtw\c\ert"
+-IC:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\_sharedutils
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC_ref.rsp b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC_ref.rsp
new file mode 100644
index 0000000000000000000000000000000000000000..f807e476630432e441cd644f824ec4e0b2b7f296
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/FCC_ref.rsp
@@ -0,0 +1,4 @@
+C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\AHRS_voter\AHRS_voter_rtwlib.lib
+C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\ActuatorLoop\ActuatorLoop_rtwlib.lib
+C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\Heli_inner_loop\Heli_inner_loop_rtwlib.lib
+C:\Users\bpotter\MATLAB\Projects\ARP_DO_Project\DO_04_Code\specification\slprj\ert\Heli_outer_loop\Heli_outer_loop_rtwlib.lib
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/buildInfo.mat b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/buildInfo.mat
new file mode 100644
index 0000000000000000000000000000000000000000..f512660d413ff8be79678afd28b3d35501ad086c
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/buildInfo.mat differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/codeInfo.mat b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/codeInfo.mat
new file mode 100644
index 0000000000000000000000000000000000000000..19f51a34ebe6b5ee5d6ab7e3434a59058cf26509
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/codeInfo.mat differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/codedescriptor.dmr b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/codedescriptor.dmr
new file mode 100644
index 0000000000000000000000000000000000000000..d17a10fab277f994213a80a9f8141cf921a7c3d1
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/codedescriptor.dmr differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/compileInfo.mat b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/compileInfo.mat
new file mode 100644
index 0000000000000000000000000000000000000000..9cb3674e93a822dc8d4f8e19ad20064aaa552b75
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/compileInfo.mat differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/defines.txt b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/defines.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c9a034d79f0cecb52f1f25ade23f35c444e5b270
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/defines.txt
@@ -0,0 +1,15 @@
+MODEL=FCC
+NUMST=2
+NCSTATES=0
+HAVESTDIO
+MODEL_HAS_DYNAMICALLY_LOADED_SFCNS=0
+CLASSIC_INTERFACE=0
+ALLOCATIONFCN=0
+TID01EQ=0
+PORTABLE_WORDSIZES
+TERMFCN=0
+ONESTEPFCN=1
+MAT_FILE=0
+MULTI_INSTANCE_CODE=0
+INTEGER_CODE=0
+MT=1
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/ert_main.c b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/ert_main.c
new file mode 100644
index 0000000000000000000000000000000000000000..de855eba6704a05ccf5874031ed56c872316569e
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/ert_main.c
@@ -0,0 +1,153 @@
+/*
+ * File: ert_main.c
+ *
+ * Code generated for Simulink model 'FCC'.
+ *
+ * Model version : 1.71
+ * Simulink Coder version : 9.2 (R2019b) 18-Jul-2019
+ * C/C++ source code generated on : Wed May 13 13:32:12 2020
+ *
+ * Target selection: ert.tlc
+ * Embedded hardware selection: Intel->x86-32 (Windows32)
+ * Code generation objectives: Unspecified
+ * Validation result: Not run
+ */
+
+#include
+#include /* This ert_main.c example uses printf/fflush */
+#include "FCC.h" /* Model's header file */
+#include "rtwtypes.h"
+
+/*
+ * Associating rt_OneStep with a real-time clock or interrupt service routine
+ * is what makes the generated code "real-time". The function rt_OneStep is
+ * always associated with the base rate of the model. Subrates are managed
+ * by the base rate from inside the generated code. Enabling/disabling
+ * interrupts and floating point context switches are target specific. This
+ * example code indicates where these should take place relative to executing
+ * the generated code step function. Overrun behavior should be tailored to
+ * your application needs. This example simply sets an error status in the
+ * real-time model and returns from rt_OneStep.
+ */
+void rt_OneStep(void);
+void rt_OneStep(void)
+{
+ static boolean_T OverrunFlags[2] = { 0, 0 };
+
+ static boolean_T eventFlags[2] = { 0, 0 };/* Model has 2 rates */
+
+ static int_T taskCounter[2] = { 0, 0 };
+
+ /* Disable interrupts here */
+
+ /* Check base rate for overrun */
+ if (OverrunFlags[0]) {
+ return;
+ }
+
+ OverrunFlags[0] = true;
+
+ /* Save FPU context here (if necessary) */
+ /* Re-enable timer or interrupt here */
+
+ /*
+ * For a bare-board target (i.e., no operating system), the
+ * following code checks whether any subrate overruns,
+ * and also sets the rates that need to run this time step.
+ */
+ if (taskCounter[1] == 0) {
+ if (eventFlags[1]) {
+ OverrunFlags[0] = false;
+ OverrunFlags[1] = true;
+ return;
+ }
+
+ eventFlags[1] = true;
+ }
+
+ taskCounter[1]++;
+ if (taskCounter[1] == 10) {
+ taskCounter[1]= 0;
+ }
+
+ /* Set model inputs associated with base rate here */
+
+ /* Step the model for base rate */
+ FCC_step0();
+
+ /* Get model outputs here */
+
+ /* Indicate task for base rate complete */
+ OverrunFlags[0] = false;
+
+ /* If task 1 is running, don't run any lower priority task */
+ if (OverrunFlags[1]) {
+ return;
+ }
+
+ /* Step the model for subrate */
+ if (eventFlags[1]) {
+ OverrunFlags[1] = true;
+
+ /* Set model inputs associated with subrates here */
+
+ /* Step the model for subrate 1 */
+ FCC_step1();
+
+ /* Get model outputs here */
+
+ /* Indicate task complete for subrate */
+ OverrunFlags[1] = false;
+ eventFlags[1] = false;
+ }
+
+ /* Disable interrupts here */
+ /* Restore FPU context here (if necessary) */
+ /* Enable interrupts here */
+}
+
+/*
+ * The example "main" function illustrates what is required by your
+ * application code to initialize, execute, and terminate the generated code.
+ * Attaching rt_OneStep to a real-time clock is target specific. This example
+ * illustrates how you do this relative to initializing the model.
+ */
+int_T main(int_T argc, const char *argv[])
+{
+ /* Unused arguments */
+ (void)(argc);
+ (void)(argv);
+
+ /* Initialize model */
+ FCC_initialize();
+
+ /* Attach rt_OneStep to a timer or interrupt service routine with
+ * period 0.001 seconds (the model's base sample time) here. The
+ * call syntax for rt_OneStep is
+ *
+ * rt_OneStep();
+ */
+ printf("Warning: The simulation will run forever. "
+ "Generated ERT main won't simulate model step behavior. "
+ "To change this behavior select the 'MAT-file logging' option.\n");
+ fflush((NULL));
+ while (1) {
+ /* Perform other application tasks here */
+ }
+
+ /* The option 'Remove error status field in real-time model data structure'
+ * is selected, therefore the following code does not need to execute.
+ */
+#if 0
+
+ /* Disable rt_OneStep() here */
+#endif
+
+ return 0;
+}
+
+/*
+ * File trailer for generated code.
+ *
+ * [EOF]
+ */
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/ert_main.obj b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/ert_main.obj
new file mode 100644
index 0000000000000000000000000000000000000000..fb5e954770f430705d808e1cad31112803258486
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/ert_main.obj differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_c.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..a33f8d78df8013383b7eceedefe1447b2a26a55d
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_c.html
@@ -0,0 +1,542 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+1 /*
+
+2 * File: FCC.c
+
+3 *
+
+4 * Code generated for Simulink model 'FCC'.
+
+5 *
+
+6 * Model version : 1.71
+
+7 * Simulink Coder version : 9.2 (R2019b) 18-Jul-2019
+
+8 * C/C++ source code generated on : Wed May 13 13:32:12 2020
+
+9 *
+
+10 * Target selection: ert.tlc
+
+11 * Embedded hardware selection: Intel->x86-32 (Windows32)
+
+12 * Code generation objectives: Unspecified
+
+13 * Validation result: Not run
+
+14 */
+
+15
+
+16 #include "FCC.h"
+
+17
+
+18 /* Block signals (default storage) */
+
+19 B_FCC_T FCC_B ;
+
+20
+
+21 /* Block states (default storage) */
+
+22 DW_FCC_T FCC_DW ;
+
+23
+
+24 /* External inputs (root inport signals with default storage) */
+
+25 ExtU_FCC_T FCC_U ;
+
+26
+
+27 /* External outputs (root outports fed by signals with default storage) */
+
+28 ExtY_FCC_T FCC_Y ;
+
+29
+
+30 /* Real-time model */
+
+31 RT_MODEL_FCC_T FCC_M_ ;
+
+32 RT_MODEL_FCC_T * const FCC_M = & FCC_M_ ;
+
+33 const AHRS_Bus FCC_rtZAHRS_Bus = { 0.0,/* theta */
+
+34 0.0, /* phi */
+
+35 0.0, /* psi */
+
+36 0.0, /* q */
+
+37 0.0, /* p */
+
+38 0.0, /* r */
+
+39 false /* valid */
+
+40 } ;
+
+41
+
+42 /* Model step function for TID0 */
+
+43 void FCC_step0 (void ) /* Sample time: [0.001s, 0.0s] */
+
+44 {
+
+45 /* Update the flag to indicate when data transfers from
+
+46 * Sample time: [0.001s, 0.0s] to Sample time: [0.01s, 0.0s] */
+
+47 FCC_M ->Timing .RateInteraction .b_TID0_1 = (FCC_M ->Timing .RateInteraction .TID0_1
+
+48 == 0);
+
+49 (FCC_M ->Timing .RateInteraction .TID0_1 )++ ;
+
+50 if ((FCC_M ->Timing .RateInteraction .TID0_1 ) > 9) {
+
+51 FCC_M ->Timing .RateInteraction .TID0_1 = 0;
+
+52 }
+
+53
+
+54 /* RateTransition: '<Root>/RateTransition1 ' */
+
+55 if (FCC_M ->Timing .RateInteraction .TID0_1 == 1) {
+
+56 FCC_B .RateTransition1 = FCC_DW .RateTransition1_Buffer0 ;
+
+57 }
+
+58
+
+59 /* End of RateTransition: '<Root>/RateTransition1 ' */
+
+60
+
+61 /* ModelReference: '<Root>/ActuatorControl1 ' incorporates:
+
+62 * Inport: '<Root>/Act_Pos1 '
+
+63 * Outport: '<Root>/Actuator1 '
+
+64 *
+
+65 * Block requirements for '<Root>/ActuatorControl1 ':
+
+66 * 1. HLR_4: Hydraulic Actuator Loop Control (HelicopterSoftwareRequirements#8)
+
+67 *
+
+68 * Block requirements for '<Root>/Act_Pos1 ':
+
+69 * 1. HLR_2 : Hydraulic Actuator Feedback (HelicopterSoftwareRequirements#6)
+
+70 *
+
+71 * Block requirements for '<Root>/Actuator1 ':
+
+72 * 1. HLR_3: Hydraulic Actuator Drive (HelicopterSoftwareRequirements#7)
+
+73 */
+
+74 ActuatorLoop (& FCC_U .Act_Pos1 , & FCC_B .RateTransition1 , & FCC_Y .Actuator1 ,
+
+75 & (FCC_DW .ActuatorControl1_InstanceData .rtb ),
+
+76 & (FCC_DW .ActuatorControl1_InstanceData .rtdw ), 0.339, 0.00272,
+
+77 2.73);
+
+78
+
+79 /* RateTransition: '<Root>/RateTransition2 ' */
+
+80 if (FCC_M ->Timing .RateInteraction .TID0_1 == 1) {
+
+81 FCC_B .RateTransition2 = FCC_DW .RateTransition2_Buffer0 ;
+
+82 }
+
+83
+
+84 /* End of RateTransition: '<Root>/RateTransition2 ' */
+
+85
+
+86 /* ModelReference: '<Root>/ActuatorControl2 ' incorporates:
+
+87 * Inport: '<Root>/Act_Pos2 '
+
+88 * Outport: '<Root>/Actuator2 '
+
+89 *
+
+90 * Block requirements for '<Root>/ActuatorControl2 ':
+
+91 * 1. HLR_4: Hydraulic Actuator Loop Control (HelicopterSoftwareRequirements#8)
+
+92 *
+
+93 * Block requirements for '<Root>/Act_Pos2 ':
+
+94 * 1. HLR_2 : Hydraulic Actuator Feedback (HelicopterSoftwareRequirements#6)
+
+95 *
+
+96 * Block requirements for '<Root>/Actuator2 ':
+
+97 * 1. HLR_3: Hydraulic Actuator Drive (HelicopterSoftwareRequirements#7)
+
+98 */
+
+99 ActuatorLoop (& FCC_U .Act_Pos2 , & FCC_B .RateTransition2 , & FCC_Y .Actuator2 ,
+
+100 & (FCC_DW .ActuatorControl2_InstanceData .rtb ),
+
+101 & (FCC_DW .ActuatorControl2_InstanceData .rtdw ), 0.339, 0.00272,
+
+102 2.73);
+
+103
+
+104 /* RateTransition: '<Root>/RateTransition3 ' */
+
+105 if (FCC_M ->Timing .RateInteraction .TID0_1 == 1) {
+
+106 FCC_B .RateTransition3 = FCC_DW .RateTransition3_Buffer0 ;
+
+107 }
+
+108
+
+109 /* End of RateTransition: '<Root>/RateTransition3 ' */
+
+110
+
+111 /* ModelReference: '<Root>/ActuatorControl3 ' incorporates:
+
+112 * Inport: '<Root>/Act_Pos3 '
+
+113 * Outport: '<Root>/Actuator3 '
+
+114 *
+
+115 * Block requirements for '<Root>/ActuatorControl3 ':
+
+116 * 1. HLR_4: Hydraulic Actuator Loop Control (HelicopterSoftwareRequirements#8)
+
+117 *
+
+118 * Block requirements for '<Root>/Act_Pos3 ':
+
+119 * 1. HLR_2 : Hydraulic Actuator Feedback (HelicopterSoftwareRequirements#6)
+
+120 *
+
+121 * Block requirements for '<Root>/Actuator3 ':
+
+122 * 1. HLR_3: Hydraulic Actuator Drive (HelicopterSoftwareRequirements#7)
+
+123 */
+
+124 ActuatorLoop (& FCC_U .Act_Pos3 , & FCC_B .RateTransition3 , & FCC_Y .Actuator3 ,
+
+125 & (FCC_DW .ActuatorControl3_InstanceData .rtb ),
+
+126 & (FCC_DW .ActuatorControl3_InstanceData .rtdw ), 0.339, 0.00272,
+
+127 2.73);
+
+128 }
+
+129
+
+130 /* Model step function for TID1 */
+
+131 void FCC_step1 (void ) /* Sample time: [0.01s, 0.0s] */
+
+132 {
+
+133 /* local block i/o variables */
+
+134 real_T rtb_Model2 [5];
+
+135 real_T rtb_Model1_o1 ;
+
+136 real_T rtb_Model1_o2 ;
+
+137 real_T rtb_Model1_o3 ;
+
+138 real_T rtb_Model [3];
+
+139
+
+140 /* ModelReference: '<Root>/Model2 ' incorporates:
+
+141 * Inport: '<Root>/AHRS1 '
+
+142 * Inport: '<Root>/AHRS2 '
+
+143 * Inport: '<Root>/AHRS3 '
+
+144 *
+
+145 * Block requirements for '<Root>/Model2 ':
+
+146 * 1. HLR_9 : AHRS Validity Check (HelicopterSoftwareRequirements#13)
+
+147 * 2. HLR_11: AHRS Voting for Triple Sensors (HelicopterSoftwareRequirements#15)
+
+148 * 3. HLR_12: AHRS Voting for Dual Sensors (HelicopterSoftwareRequirements#16)
+
+149 * 4. HLR_13: AHRS Usage of Single Sensor (HelicopterSoftwareRequirements#17)
+
+150 *
+
+151 * Block requirements for '<Root>/AHRS1 ':
+
+152 * 1. HLR_10: AHRS Input Signal Processing (HelicopterSoftwareRequirements#14)
+
+153 *
+
+154 * Block requirements for '<Root>/AHRS2 ':
+
+155 * 1. HLR_10: AHRS Input Signal Processing (HelicopterSoftwareRequirements#14)
+
+156 *
+
+157 * Block requirements for '<Root>/AHRS3 ':
+
+158 * 1. HLR_10: AHRS Input Signal Processing (HelicopterSoftwareRequirements#14)
+
+159 */
+
+160 AHRS_voter (& FCC_U .AHRS1 , & FCC_U .AHRS2 , & FCC_U .AHRS3 , & rtb_Model2 [0]);
+
+161
+
+162 /* ModelReference: '<Root>/Model1 ' incorporates:
+
+163 * Inport: '<Root>/Pilot_phi_cmd '
+
+164 * Inport: '<Root>/Pilot_r_cmd '
+
+165 * Inport: '<Root>/Pilot_theta_cmd '
+
+166 *
+
+167 * Block requirements for '<Root>/Model1 ':
+
+168 * 1. HLR_6: Pitch Outer Loop Control (HelicopterSoftwareRequirements#10)
+
+169 * 2. HLR_7: Roll Outer Loop Control (HelicopterSoftwareRequirements#11)
+
+170 * 3. HLR_8: Yaw Outer Loop Control (HelicopterSoftwareRequirements#12)
+
+171 *
+
+172 * Block requirements for '<Root>/Pilot_phi_cmd ':
+
+173 * 1. HLR_1: Pilot Input Signal Processing (HelicopterSoftwareRequirements#5)
+
+174 *
+
+175 * Block requirements for '<Root>/Pilot_r_cmd ':
+
+176 * 1. HLR_1: Pilot Input Signal Processing (HelicopterSoftwareRequirements#5)
+
+177 *
+
+178 * Block requirements for '<Root>/Pilot_theta_cmd ':
+
+179 * 1. HLR_1: Pilot Input Signal Processing (HelicopterSoftwareRequirements#5)
+
+180 */
+
+181 Heli_outer_loop (& FCC_U .Pilot_theta_cmd , & FCC_U .Pilot_phi_cmd ,
+
+182 & FCC_U .Pilot_r_cmd , & rtb_Model2 [0], & rtb_Model1_o1 ,
+
+183 & rtb_Model1_o2 , & rtb_Model1_o3 );
+
+184
+
+185 /* ModelReference: '<Root>/Model '
+
+186 *
+
+187 * Block requirements for '<Root>/Model ':
+
+188 * 1. HLR_5: Multi-Variable Inner Loop Control (HelicopterSoftwareRequirements#9)
+
+189 */
+
+190 Heli_inner_loop (& rtb_Model1_o1 , & rtb_Model1_o2 , & rtb_Model1_o3 , & rtb_Model2 [0],
+
+191 & rtb_Model [0]);
+
+192
+
+193 /* RateTransition: '<Root>/RateTransition1 ' */
+
+194 FCC_DW .RateTransition1_Buffer0 = rtb_Model [0];
+
+195
+
+196 /* RateTransition: '<Root>/RateTransition2 ' */
+
+197 FCC_DW .RateTransition2_Buffer0 = rtb_Model [1];
+
+198
+
+199 /* RateTransition: '<Root>/RateTransition3 ' */
+
+200 FCC_DW .RateTransition3_Buffer0 = rtb_Model [2];
+
+201 }
+
+202
+
+203 /* Model initialize function */
+
+204 void FCC_initialize (void )
+
+205 {
+
+206 /* Registration code */
+
+207
+
+208 /* initialize real-time model */
+
+209 (void ) memset ((void * )FCC_M , 0,
+
+210 sizeof (RT_MODEL_FCC_T ));
+
+211
+
+212 /* block I/O */
+
+213 {
+
+214 FCC_B .RateTransition1 = 0.0;
+
+215 FCC_B .RateTransition2 = 0.0;
+
+216 FCC_B .RateTransition3 = 0.0;
+
+217 }
+
+218
+
+219 /* states (dwork) */
+
+220 (void ) memset ((void * )& FCC_DW , 0,
+
+221 sizeof (DW_FCC_T ));
+
+222 FCC_DW .RateTransition1_Buffer0 = 0.0;
+
+223 FCC_DW .RateTransition2_Buffer0 = 0.0;
+
+224 FCC_DW .RateTransition3_Buffer0 = 0.0;
+
+225
+
+226 /* external inputs */
+
+227 (void )memset ((void * )(& FCC_U ), 0, sizeof (ExtU_FCC_T ));
+
+228 FCC_U .AHRS1 = FCC_rtZAHRS_Bus ;
+
+229 FCC_U .AHRS2 = FCC_rtZAHRS_Bus ;
+
+230 FCC_U .AHRS3 = FCC_rtZAHRS_Bus ;
+
+231
+
+232 /* external outputs */
+
+233 (void ) memset ((void * )& FCC_Y , 0,
+
+234 sizeof (ExtY_FCC_T ));
+
+235
+
+236 /* Model Initialize function for ModelReference Block: '<Root>/ActuatorControl1 ' */
+
+237 ActuatorLoop_initialize (& (FCC_DW .ActuatorControl1_InstanceData .rtb ),
+
+238 & (FCC_DW .ActuatorControl1_InstanceData .rtdw ));
+
+239
+
+240 /* Model Initialize function for ModelReference Block: '<Root>/ActuatorControl2 ' */
+
+241 ActuatorLoop_initialize (& (FCC_DW .ActuatorControl2_InstanceData .rtb ),
+
+242 & (FCC_DW .ActuatorControl2_InstanceData .rtdw ));
+
+243
+
+244 /* Model Initialize function for ModelReference Block: '<Root>/ActuatorControl3 ' */
+
+245 ActuatorLoop_initialize (& (FCC_DW .ActuatorControl3_InstanceData .rtb ),
+
+246 & (FCC_DW .ActuatorControl3_InstanceData .rtdw ));
+
+247
+
+248 /* Model Initialize function for ModelReference Block: '<Root>/Model ' */
+
+249 Heli_inner_loop_initialize ();
+
+250
+
+251 /* Model Initialize function for ModelReference Block: '<Root>/Model1 ' */
+
+252 Heli_outer_loop_initialize ();
+
+253
+
+254 /* Model Initialize function for ModelReference Block: '<Root>/Model2 ' */
+
+255 AHRS_voter_initialize ();
+
+256 }
+
+257
+
+258 /*
+
+259 * File trailer for generated code.
+
+260 *
+
+261 * [EOF]
+
+262 */
+
+263
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_codegen_rpt.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_codegen_rpt.html
new file mode 100644
index 0000000000000000000000000000000000000000..6233e35b51b62d503e459e4ec7cfa2ab6daed8e3
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_codegen_rpt.html
@@ -0,0 +1,33 @@
+
+
+
+FCC Code Generation Report
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_coderassumptions.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_coderassumptions.html
new file mode 100644
index 0000000000000000000000000000000000000000..19c437648fb07cf68e202015529623564ef0cd64
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_coderassumptions.html
@@ -0,0 +1,326 @@
+
+
+
+Coder Assumptions for 'FCC'
+
+
+
+
+
+Coder Assumptions for 'FCC'
+
+
+
+
+
+
+C Language Configuration for Intel->x86-32 (Windows32) Target Hardware
+
+
+
+
+
+
+
+
+BitPerChar
+
+
+8
+
+
+
+
+
+BitPerShort
+
+
+16
+
+
+
+
+
+BitPerInt
+
+
+32
+
+
+
+
+
+BitPerLong
+
+
+32
+
+
+
+
+
+BitPerFloat
+
+
+32
+
+
+
+
+
+BitPerDouble
+
+
+64
+
+
+
+
+
+BitPerPointer
+
+
+32
+
+
+
+
+
+BitPerSizeT
+
+
+32
+
+
+
+
+
+BitPerPtrDiffT
+
+
+32
+
+
+
+
+
+
+
+
+Endianess
+
+
+LittleEndian
+
+
+
+
+
+Shift right for signed integer is arithmetic shift
+
+
+True
+
+
+
+
+
+Signed integer division rounds to
+
+
+Zero
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+C Language Configuration for Development Computer
+
+
+
+
+
+Expected values are used only if the code has been compiled with PORTABLE_WORDSIZES defined, i.e. when you run a SIL simulation with PortableWordSizes set to 'on'.
+
+
+
+
+
+BitPerChar
+
+
+8
+
+
+
+
+
+BitPerShort
+
+
+16
+
+
+
+
+
+BitPerInt
+
+
+32
+
+
+
+
+
+BitPerLong
+
+
+32
+
+
+
+
+
+BitPerFloat
+
+
+32
+
+
+
+
+
+BitPerDouble
+
+
+64
+
+
+
+
+
+BitPerPointer
+
+
+64
+
+
+
+
+
+BitPerSizeT
+
+
+64
+
+
+
+
+
+BitPerPtrDiffT
+
+
+64
+
+
+
+
+
+
+
+
+Endianess
+
+
+LittleEndian
+
+
+
+
+
+Shift right for signed integer is arithmetic shift
+
+
+True
+
+
+
+
+
+Signed integer division rounds to
+
+
+Zero
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Floating-Point Numbers
+
+
+
+
+
+Code generation is configured to support floating-point numbers, therefore your target environment might perform subnormal number calculations.
+
+
+
+
+
+Flush-to-zero computed subnormal values (FTZ)
+
+
+False
+
+
+
+
+
+Flush-to-zero incoming subnormal values (DAZ)
+
+
+False
+
+
+
+
+
+
+
+
+If the assumptions are not correct, subnormal numbers might cause mismatches between model and generated code simulation results. For more information see, Subnormal Number Performance .
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_contents.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_contents.html
new file mode 100644
index 0000000000000000000000000000000000000000..6753bd80b85e23caf90cf98328f57282daa3111f
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_contents.html
@@ -0,0 +1,286 @@
+
+
+
+
+
+
+
+
+
+
+
+Generated Code
+
+
+
+
+
+
+
+
+
+
+[-]
+
+
+Main file
+
+
+
+
+
+
+
+
+
+
+
+
+ert_main.c
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[-]
+
+
+Model files
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[+]
+
+
+Shared files (1)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_h.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_h.html
new file mode 100644
index 0000000000000000000000000000000000000000..03c5de5db177ba7243c8826ff10aefa1ff59da6f
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_h.html
@@ -0,0 +1,336 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_interface.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_interface.html
new file mode 100644
index 0000000000000000000000000000000000000000..2588af9caafa9675f251623e426083b233039422
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_interface.html
@@ -0,0 +1,516 @@
+
+
+
+Code Interface Report for FCC
+
+
+
+
+
+Code Interface Report for FCC
+
+
+Table of Contents
+
+
+
+
+Function: FCC_initialize
+
+
+
+
+Prototype
+
+
+
+void FCC_initialize(void)
+
+
+
+
+
+
+
+Description
+
+
+Initialization entry point of generated code
+
+
+
+
+
+Timing
+
+
+Must be called exactly once
+
+
+
+
+
+Arguments
+
+
+None
+
+
+
+
+
+Return value
+
+
+None
+
+
+
+
+
+Header file
+
+
+FCC.h
+
+
+
+
+
+
+Function: FCC_step0
+
+
+
+
+Prototype
+
+
+
+void FCC_step0(void)
+
+
+
+
+
+
+
+Description
+
+
+Output entry point of generated code
+
+
+
+
+
+Timing
+
+
+Must be called periodically, every 0.001 seconds
+
+
+
+
+
+Arguments
+
+
+None
+
+
+
+
+
+Return value
+
+
+None
+
+
+
+
+
+Header file
+
+
+FCC.h
+
+
+
+
+
+
+Function: FCC_step1
+
+
+
+
+Prototype
+
+
+
+void FCC_step1(void)
+
+
+
+
+
+
+
+Description
+
+
+Output entry point of generated code
+
+
+
+
+
+Timing
+
+
+Must be called periodically, every 0.01 seconds
+
+
+
+
+
+Arguments
+
+
+None
+
+
+
+
+
+Return value
+
+
+None
+
+
+
+
+
+Header file
+
+
+FCC.h
+
+
+
+
+
+
+[-]
+
+
+
+Block Name
+
+
+
+
+
+Code Identifier
+
+
+
+
+
+Data Type
+
+
+
+
+
+Dimension
+
+
+
+
+
+
+
+<Root>/Act_Pos1
+
+
+FCC_U.Act_Pos1
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Act_Pos2
+
+
+FCC_U.Act_Pos2
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Act_Pos3
+
+
+FCC_U.Act_Pos3
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Pilot_theta_cmd
+
+
+FCC_U.Pilot_theta_cmd
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Pilot_phi_cmd
+
+
+FCC_U.Pilot_phi_cmd
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Pilot_r_cmd
+
+
+FCC_U.Pilot_r_cmd
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/AHRS1
+
+
+FCC_U.AHRS1
+
+
+AHRS_Bus
+
+
+1
+
+
+
+
+
+<Root>/AHRS2
+
+
+FCC_U.AHRS2
+
+
+AHRS_Bus
+
+
+1
+
+
+
+
+
+<Root>/AHRS3
+
+
+FCC_U.AHRS3
+
+
+AHRS_Bus
+
+
+1
+
+
+
+
+
+
+[-]
+
+
+
+Block Name
+
+
+
+
+
+Code Identifier
+
+
+
+
+
+Data Type
+
+
+
+
+
+Dimension
+
+
+
+
+
+
+
+<Root>/Actuator1
+
+
+FCC_Y.Actuator1
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Actuator2
+
+
+FCC_Y.Actuator2
+
+
+int16_T
+
+
+1
+
+
+
+
+
+<Root>/Actuator3
+
+
+FCC_Y.Actuator3
+
+
+int16_T
+
+
+1
+
+
+
+
+
+
+
+No interface/tunable parameters in model.
+
+
+
+No data stores in the model; note that this report lists only data stores with non-auto storage class and global data stores
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_metrics.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_metrics.html
new file mode 100644
index 0000000000000000000000000000000000000000..21ab5dd42c2843b3e505c0124bac022190947623
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_metrics.html
@@ -0,0 +1,18 @@
+
+
+
+Static Code Metrics Report
+
+
+
+
+
+Static Code Metrics Report
+
+
+
+
+ Static Code Metrics report is not generated. On the Configuration Parameters > Code Generation > Report pane, select Static code metrics . On the model diagram window, select Code > C/C++ Code > Code Generation Report > Open Model Report or rebuild the model.
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_replacements.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_replacements.html
new file mode 100644
index 0000000000000000000000000000000000000000..28b0e57bab414254c8fbf0b52ebe01437f0edaba
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_replacements.html
@@ -0,0 +1,18 @@
+
+
+
+Code replacements in FCC
+
+
+
+
+
+Code replacements in FCC
+
+
+
+
+ Code replacements report not generated. Select 'Summarize which blocks triggered code replacements' .
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_subsystems.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_subsystems.html
new file mode 100644
index 0000000000000000000000000000000000000000..7187f10870571d97f04722f54a59db81d72b2b97
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_subsystems.html
@@ -0,0 +1,87 @@
+
+
+
+Non-virtual subsystems in FCC
+
+
+
+
+
+Non-virtual subsystems in FCC
+
+
+
+
+
+
+
+
+1. Code Mapping [hide ]
+
+
+
+
+
+The following table:
+
+provides a mapping from the non-virtual subsystems in the model to functions or reusable functions in the generated code and
+
+
+notes exceptions that caused some non-virtual subsystems to not reuse code even though they were assigned a function packaging setting ('Function packaging' entry on the Subsystem Block Dialog) of 'Auto' or 'Reusable function'.
+
+
+
+
+
+
+
+
+
+
+
+
+No non-virtual subsystems generating functions in model
+
+
+
+
+
+
+
+
+2. Code Reuse Exceptions [hide ]
+
+
+
+
+
+The following section provides details on each exception that caused a non-virtual subsystem with a function packaging setting of
+
+'Auto' to become an inlined code segment,
+
+
+'Auto' to become a non-reusable function without arguments, or
+
+
+'Reusable function' to become a non-reusable function without arguments.
+
+
+
+Note: This section does not report graphically identical non-virtual subsystems marked as 'Auto' that were not reused due to differences in their functional properties (such as dimensions, datatypes, work vectors, parameters, etc.). You may identify reasons for non-reuse in such cases by inspecting the differences in the functional attributes of the subsystems in the model or in the inlined generated code.
+
+
+
+
+
+
+
+No reuse exception in model
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_survey.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_survey.html
new file mode 100644
index 0000000000000000000000000000000000000000..b18ed9fac31ea9cd3972cdce19730eda068deb9f
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_survey.html
@@ -0,0 +1,192 @@
+
+
+
+Code Generation Report for 'FCC'
+
+
+
+
+
+Code Generation Report for 'FCC'
+
+
+
+
+
+
+
+
+Model Information
+
+
+
+
+
+
+
+
+Author
+
+
+bpotter
+
+
+
+
+
+Last Modified By
+
+
+bpotter
+
+
+
+
+
+Model Version
+
+
+1.71
+
+
+
+
+
+Tasking Mode
+
+
+MultiTasking
+
+
+
+
+
+
+Configuration settings at time of code generation
+
+
+Configuration settings at time of code generation
+
+
+
+
+
+
+
+
+
+
+Code Information
+
+
+
+
+
+
+
+
+System Target File
+
+
+ert.tlc
+
+
+
+
+
+Hardware Device Type
+
+
+Intel->x86-32 (Windows32)
+
+
+
+
+
+Simulink Coder Version
+
+
+9.2 (R2019b) 18-Jul-2019
+
+
+
+
+
+Timestamp of Generated Source Code
+
+
+Wed May 13 13:32:12 2020
+
+
+
+
+
+Location of Generated Source Code
+
+
+
+
+
+
+
+
+Type of Build
+
+
+Top Model
+
+
+
+
+
+Objectives Specified
+
+
+
+
+Unspecified
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Additional Information
+
+
+
+
+
+
+
+Code Generation Advisor
+
+
+Not run
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_trace.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_trace.html
new file mode 100644
index 0000000000000000000000000000000000000000..56524e437bd1cd8ac55f25e512e44e9fe227972e
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_trace.html
@@ -0,0 +1,23 @@
+Traceability Report for FCC
+
+
+Root system: FCC Object Name Code Location <Root>/Act_Pos1 FCC.c:62 , 68 , 74 FCC.h:76 <Root>/Act_Pos2 FCC.c:87 , 93 , 99 FCC.h:77 <Root>/Act_Pos3 FCC.c:112 , 118 , 124 FCC.h:78 <Root>/Pilot_theta_cmd FCC.c:165 , 178 , 181 FCC.h:79 <Root>/Pilot_phi_cmd FCC.c:163 , 172 , 181 FCC.h:80 <Root>/Pilot_r_cmd FCC.c:164 , 175 , 182 FCC.h:81 <Root>/AHRS1 FCC.c:141 , 151 , 160 FCC.h:82 <Root>/AHRS2 FCC.c:142 , 154 , 160 FCC.h:83 <Root>/AHRS3 FCC.c:143 , 157 , 160 FCC.h:84 <Root>/ActuatorControl1 FCC.c:61 , 65 , 74 , 75 , 76 , 77 , 236 FCC.h:66 , 67 <Root>/ActuatorControl2 FCC.c:86 , 90 , 99 , 100 , 101 , 102 , 240 FCC.h:68 , 69 <Root>/ActuatorControl3 FCC.c:111 , 115 , 124 , 125 , 126 , 127 , 244 FCC.h:70 , 71 <Root>/Model FCC.c:185 , 187 , 190 , 191 , 248 <Root>/Model1 FCC.c:162 , 167 , 181 , 182 , 183 , 251 <Root>/Model2 FCC.c:140 , 145 , 160 , 254 <Root>/RateTransition1 FCC.c:54 , 55 , 56 , 59 , 193 , 194 FCC.h:56 , 63 <Root>/RateTransition2 FCC.c:79 , 80 , 81 , 84 , 196 , 197 FCC.h:57 , 64 <Root>/RateTransition3 FCC.c:104 , 105 , 106 , 109 , 199 , 200 FCC.h:58 , 65 <Root>/Actuator1 FCC.c:63 , 71 , 74 FCC.h:89 <Root>/Actuator2 FCC.c:88 , 96 , 99 FCC.h:90 <Root>/Actuator3 FCC.c:113 , 121 , 124 FCC.h:91
No traceable objects in this Subsystem.
\ No newline at end of file
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_traceInfo.js b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_traceInfo.js
new file mode 100644
index 0000000000000000000000000000000000000000..0d56e73eae38fa1ab0949b33cee65167b6f9c670
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/FCC_traceInfo.js
@@ -0,0 +1,59 @@
+function RTW_rtwnameSIDMap() {
+ this.rtwnameHashMap = new Array();
+ this.sidHashMap = new Array();
+ this.rtwnameHashMap[""] = {sid: "FCC"};
+ this.sidHashMap["FCC"] = {rtwname: ""};
+ this.rtwnameHashMap[""] = {sid: "FCC:36"};
+ this.sidHashMap["FCC:36"] = {rtwname: ""};
+ this.rtwnameHashMap["/Act_Pos1"] = {sid: "FCC:1"};
+ this.sidHashMap["FCC:1"] = {rtwname: "/Act_Pos1"};
+ this.rtwnameHashMap["/Act_Pos2"] = {sid: "FCC:8"};
+ this.sidHashMap["FCC:8"] = {rtwname: "/Act_Pos2"};
+ this.rtwnameHashMap["/Act_Pos3"] = {sid: "FCC:9"};
+ this.sidHashMap["FCC:9"] = {rtwname: "/Act_Pos3"};
+ this.rtwnameHashMap["/Pilot_theta_cmd"] = {sid: "FCC:13"};
+ this.sidHashMap["FCC:13"] = {rtwname: "/Pilot_theta_cmd"};
+ this.rtwnameHashMap["/Pilot_phi_cmd"] = {sid: "FCC:15"};
+ this.sidHashMap["FCC:15"] = {rtwname: "/Pilot_phi_cmd"};
+ this.rtwnameHashMap["/Pilot_r_cmd"] = {sid: "FCC:17"};
+ this.sidHashMap["FCC:17"] = {rtwname: "/Pilot_r_cmd"};
+ this.rtwnameHashMap["/AHRS1"] = {sid: "FCC:19"};
+ this.sidHashMap["FCC:19"] = {rtwname: "/AHRS1"};
+ this.rtwnameHashMap["/AHRS2"] = {sid: "FCC:21"};
+ this.sidHashMap["FCC:21"] = {rtwname: "/AHRS2"};
+ this.rtwnameHashMap["/AHRS3"] = {sid: "FCC:23"};
+ this.sidHashMap["FCC:23"] = {rtwname: "/AHRS3"};
+ this.rtwnameHashMap["/ActuatorControl1"] = {sid: "FCC:3"};
+ this.sidHashMap["FCC:3"] = {rtwname: "/ActuatorControl1"};
+ this.rtwnameHashMap["/ActuatorControl2"] = {sid: "FCC:4"};
+ this.sidHashMap["FCC:4"] = {rtwname: "/ActuatorControl2"};
+ this.rtwnameHashMap["/ActuatorControl3"] = {sid: "FCC:6"};
+ this.sidHashMap["FCC:6"] = {rtwname: "/ActuatorControl3"};
+ this.rtwnameHashMap["/Demux"] = {sid: "FCC:30"};
+ this.sidHashMap["FCC:30"] = {rtwname: "/Demux"};
+ this.rtwnameHashMap["/Model"] = {sid: "FCC:28"};
+ this.sidHashMap["FCC:28"] = {rtwname: "/Model"};
+ this.rtwnameHashMap["/Model1"] = {sid: "FCC:29"};
+ this.sidHashMap["FCC:29"] = {rtwname: "/Model1"};
+ this.rtwnameHashMap["/Model2"] = {sid: "FCC:31"};
+ this.sidHashMap["FCC:31"] = {rtwname: "/Model2"};
+ this.rtwnameHashMap["/ModelInfo"] = {sid: "FCC:36"};
+ this.sidHashMap["FCC:36"] = {rtwname: "/ModelInfo"};
+ this.rtwnameHashMap["/RateTransition1"] = {sid: "FCC:10"};
+ this.sidHashMap["FCC:10"] = {rtwname: "/RateTransition1"};
+ this.rtwnameHashMap["/RateTransition2"] = {sid: "FCC:11"};
+ this.sidHashMap["FCC:11"] = {rtwname: "/RateTransition2"};
+ this.rtwnameHashMap["/RateTransition3"] = {sid: "FCC:12"};
+ this.sidHashMap["FCC:12"] = {rtwname: "/RateTransition3"};
+ this.rtwnameHashMap["/Actuator1"] = {sid: "FCC:2"};
+ this.sidHashMap["FCC:2"] = {rtwname: "/Actuator1"};
+ this.rtwnameHashMap["/Actuator2"] = {sid: "FCC:5"};
+ this.sidHashMap["FCC:5"] = {rtwname: "/Actuator2"};
+ this.rtwnameHashMap["/Actuator3"] = {sid: "FCC:7"};
+ this.sidHashMap["FCC:7"] = {rtwname: "/Actuator3"};
+ this.rtwnameHashMap["/EmptySubsystem"] = {sid: "FCC:36:1"};
+ this.sidHashMap["FCC:36:1"] = {rtwname: "/EmptySubsystem"};
+ this.getSID = function(rtwname) { return this.rtwnameHashMap[rtwname];}
+ this.getRtwname = function(sid) { return this.sidHashMap[sid];}
+}
+RTW_rtwnameSIDMap.instance = new RTW_rtwnameSIDMap();
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/css/coder_app.css b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/css/coder_app.css
new file mode 100644
index 0000000000000000000000000000000000000000..d47cf0edddb4a21ffda06a2cbf05275f7fa4747d
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/css/coder_app.css
@@ -0,0 +1,184 @@
+/* Copyright 2013-2018 The MathWorks, Inc. */
+pre#code {
+ font-family: Consolas, Courier;
+ font-size: small;
+}
+
+.ct {
+ font-style: italic;
+ color: #117755
+} /* comment */
+.pp {
+ font-weight:bold;
+ color: #992211
+} /* preprocessor */
+.kw, .br {
+ font-weight:bold;
+ color: #112266
+} /* keyword or brace */
+.dt {
+ font-weight:bold;
+ color: #112266
+} /* data type */
+.tk {
+ font-style: normal;
+ color: #112266
+} /* regular token */
+pre#code a.req {
+ text-decoration: none;
+ color: #112266
+}
+pre#code a.req_active {
+ cursor: pointer;
+ text-decoration: underline;
+}
+pre#code a.req_active:hover {
+ cursor: pointer;
+ color: blue;
+ text-decoration: underline
+}
+pre#code a.blk {
+ text-decoration: none;
+}
+pre#code a.blk_active {
+ cursor: pointer;
+ text-decoration: underline;
+}
+pre#code a.blk_active:hover {
+ cursor: pointer;
+ color: blue;
+ text-decoration: underline
+}
+a.hilite {
+ font-style: normal;
+ color: black;
+ background-color: rgba(150, 12, 116, 0.1);
+} /* highlight token */
+tr.hilite {
+ font-style: normal;
+ color: black;
+ background-color: rgba(150, 12, 116, 0.1);
+} /* highlight row */
+a.hiliteToken, tr.hiliteToken, td.hiliteToken {
+ background-color: #ffff99;
+}
+.hiliteCurrentLine, tr.hiliteCurrentLine > td {
+ font-style: normal;
+ color: black;
+ background-color: rgba(150, 12, 116, 0.1);
+ box-shadow: inset 0 1px 0 0 rgba(150, 12, 116, 0.25), inset 0 -1px 0 0 rgba(150, 12, 116, 0.25);
+}
+span.hiliteTotalLine {
+ font-style: normal;
+ color: #aff;
+}
+a.tk {
+ text-decoration: none;
+}
+a.tk:hover {
+ text-decoration: none;
+}
+a.active {
+ text-decoration: underline;
+}
+a.active:hover {
+ cursor: pointer;
+ color: blue;
+ text-decoration: underline
+} /* hyperlink */
+table.code {
+ border: 0px
+}
+table.code td {
+ vertical-align: top;
+}
+table.code td.highlightedCurrent {
+ background-color: rgba(150, 12, 116, 0.1);
+}
+table.code > tr:first {
+ text-align: right;
+} /* hyperlink */
+
+ul.popup_attrib_list {
+ list-style-type:none;
+ display: block;
+ margin: 0;
+ padding: 0;
+}
+ul.popup_attrib_list li {
+ list-style-type:none;
+ display: inline;
+ margin: 0 18px 0 0;
+ padding: 0;
+}
+.highlighted {
+ background-color:yellow;
+}
+a:class1 {
+ color: -webkit-link;
+ text-decoration: underline;
+ cursor: hand;
+}
+.scroll
+{
+ height:80px;
+ overflow:scroll;
+ overflow-x:hidden;
+}
+div#popup_window {
+ position: absolute;
+ background-color: rgb(203,203,255);
+ border: solid 3px #ECECEC;
+ border-radius: 5px;
+ /* shadow box around the window*/
+ -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.4), inset 0 1px #FFF;
+ -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.4), inset 0 1px #FFF;
+ box-shadow: 0 3px 3px rgba(0,0,0,0.4), inset 0 1px #FFF;
+ padding: 2px;
+}
+div#popup_window a {
+ text-decoration: none;
+ color: green;
+}
+div#popup_window a:hover {
+ cursor: pointer;
+ text-decoration: underline;
+ color: blue;
+}
+div#popup_window tr.selected {
+ background-color: #ffff99;
+}
+div#token_usage_nav {
+ border-bottom: 1px solid gray;
+}
+table#token_usage_details {
+ cellpadding: 100px;
+ table-layout:fixed;
+ border: 0px;
+}
+.token_usage_details_tabrow {
+ width: 40px;
+}
+table#token_usage_details td {
+ padding-right: 5em;
+ padding-left: 1em;
+}
+.token_usage_details_tabrow:hover {
+ background-color: gray;
+}
+.nav_table td.hidden {
+ display: none;
+}
+table#codeTbl tr td {
+ color: #112266
+}
+table#codeTbl tr td {
+ padding-left: 10px;
+}
+table#codeTbl tr td:first-child {
+ font-style: italic;
+ color: #888888;
+ text-align: right;
+ padding-left:0px;
+}
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/define.js b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/define.js
new file mode 100644
index 0000000000000000000000000000000000000000..6b49b4076bba307ac53983459a3f1add95f2f7eb
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/define.js
@@ -0,0 +1,97 @@
+function CodeDefine() {
+this.def = new Array();
+this.def["rt_OneStep"] = {file: "ert_main_c.html",line:33,type:"fcn"};
+this.def["main"] = {file: "ert_main_c.html",line:115,type:"fcn"};
+this.def["FCC_B"] = {file: "FCC_c.html",line:19,type:"var"};
+this.def["FCC_DW"] = {file: "FCC_c.html",line:22,type:"var"};
+this.def["FCC_U"] = {file: "FCC_c.html",line:25,type:"var"};
+this.def["FCC_Y"] = {file: "FCC_c.html",line:28,type:"var"};
+this.def["FCC_M_"] = {file: "FCC_c.html",line:31,type:"var"};
+this.def["FCC_M"] = {file: "FCC_c.html",line:32,type:"var"};
+this.def["FCC_rtZAHRS_Bus"] = {file: "FCC_c.html",line:33,type:"var"};
+this.def["FCC_step0"] = {file: "FCC_c.html",line:43,type:"fcn"};
+this.def["FCC_step1"] = {file: "FCC_c.html",line:131,type:"fcn"};
+this.def["FCC_initialize"] = {file: "FCC_c.html",line:204,type:"fcn"};
+this.def["RT_MODEL_FCC_T"] = {file: "FCC_h.html",line:37,type:"type"};
+this.def["AHRS_Bus"] = {file: "FCC_h.html",line:50,type:"type"};
+this.def["B_FCC_T"] = {file: "FCC_h.html",line:59,type:"type"};
+this.def["DW_FCC_T"] = {file: "FCC_h.html",line:72,type:"type"};
+this.def["ExtU_FCC_T"] = {file: "FCC_h.html",line:85,type:"type"};
+this.def["ExtY_FCC_T"] = {file: "FCC_h.html",line:92,type:"type"};
+this.def["int8_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:51,type:"type"};
+this.def["uint8_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:52,type:"type"};
+this.def["int16_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:53,type:"type"};
+this.def["uint16_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:54,type:"type"};
+this.def["int32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:55,type:"type"};
+this.def["uint32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:56,type:"type"};
+this.def["real32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:57,type:"type"};
+this.def["real64_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:58,type:"type"};
+this.def["real_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:64,type:"type"};
+this.def["time_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:65,type:"type"};
+this.def["boolean_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:66,type:"type"};
+this.def["int_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:67,type:"type"};
+this.def["uint_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:68,type:"type"};
+this.def["ulong_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:69,type:"type"};
+this.def["char_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:70,type:"type"};
+this.def["uchar_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:71,type:"type"};
+this.def["byte_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:72,type:"type"};
+this.def["int8_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:82,type:"type"};
+this.def["uint8_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:83,type:"type"};
+this.def["int16_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:84,type:"type"};
+this.def["uint16_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:85,type:"type"};
+this.def["int32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:86,type:"type"};
+this.def["uint32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:87,type:"type"};
+this.def["real32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:88,type:"type"};
+this.def["real64_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:89,type:"type"};
+this.def["real_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:95,type:"type"};
+this.def["time_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:96,type:"type"};
+this.def["boolean_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:97,type:"type"};
+this.def["int_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:98,type:"type"};
+this.def["uint_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:99,type:"type"};
+this.def["ulong_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:100,type:"type"};
+this.def["char_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:101,type:"type"};
+this.def["uchar_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:102,type:"type"};
+this.def["byte_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:103,type:"type"};
+this.def["creal32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:115,type:"type"};
+this.def["creal64_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:120,type:"type"};
+this.def["creal_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:125,type:"type"};
+this.def["cint8_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:132,type:"type"};
+this.def["cuint8_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:139,type:"type"};
+this.def["cint16_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:146,type:"type"};
+this.def["cuint16_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:153,type:"type"};
+this.def["cint32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:160,type:"type"};
+this.def["cuint32_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:167,type:"type"};
+this.def["pointer_T"] = {file: "../../slprj/ert/_sharedutils/html/rtwtypes_h.html",line:185,type:"type"};
+}
+CodeDefine.instance = new CodeDefine();
+var testHarnessInfo = {OwnerFileName: "", HarnessOwner: "", HarnessName: "", IsTestHarness: "0"};
+var relPathToBuildDir = "../ert_main.c";
+var fileSep = "\\";
+var isPC = true;
+function Html2SrcLink() {
+ this.html2SrcPath = new Array;
+ this.html2Root = new Array;
+ this.html2SrcPath["ert_main_c.html"] = "../ert_main.c";
+ this.html2Root["ert_main_c.html"] = "ert_main_c.html";
+ this.html2SrcPath["FCC_c.html"] = "../FCC.c";
+ this.html2Root["FCC_c.html"] = "FCC_c.html";
+ this.html2SrcPath["FCC_h.html"] = "../FCC.h";
+ this.html2Root["FCC_h.html"] = "FCC_h.html";
+ this.html2SrcPath["rtwtypes_h.html"] = "../rtwtypes.h";
+ this.html2Root["rtwtypes_h.html"] = "../../slprj/ert/_sharedutils/html/rtwtypes_h.html";
+ this.getLink2Src = function (htmlFileName) {
+ if (this.html2SrcPath[htmlFileName])
+ return this.html2SrcPath[htmlFileName];
+ else
+ return null;
+ }
+ this.getLinkFromRoot = function (htmlFileName) {
+ if (this.html2Root[htmlFileName])
+ return this.html2Root[htmlFileName];
+ else
+ return null;
+ }
+}
+Html2SrcLink.instance = new Html2SrcLink();
+var fileList = [
+"ert_main_c.html","FCC_c.html","FCC_h.html","rtwtypes_h.html"];
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/ert_main_c.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/ert_main_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..20e2c6a9b33969dd7dc3193f2530fb79e69ce08f
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/ert_main_c.html
@@ -0,0 +1,324 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+1 /*
+
+2 * File: ert_main.c
+
+3 *
+
+4 * Code generated for Simulink model 'FCC'.
+
+5 *
+
+6 * Model version : 1.71
+
+7 * Simulink Coder version : 9.2 (R2019b) 18-Jul-2019
+
+8 * C/C++ source code generated on : Wed May 13 13:32:12 2020
+
+9 *
+
+10 * Target selection: ert.tlc
+
+11 * Embedded hardware selection: Intel->x86-32 (Windows32)
+
+12 * Code generation objectives: Unspecified
+
+13 * Validation result: Not run
+
+14 */
+
+15
+
+16 #include <stddef.h>
+
+17 #include <stdio.h> /* This ert_main.c example uses printf/fflush */
+
+18 #include "FCC.h" /* Model's header file */
+
+19 #include "rtwtypes.h"
+
+20
+
+21 /*
+
+22 * Associating rt_OneStep with a real-time clock or interrupt service routine
+
+23 * is what makes the generated code "real-time". The function rt_OneStep is
+
+24 * always associated with the base rate of the model. Subrates are managed
+
+25 * by the base rate from inside the generated code. Enabling/disabling
+
+26 * interrupts and floating point context switches are target specific. This
+
+27 * example code indicates where these should take place relative to executing
+
+28 * the generated code step function. Overrun behavior should be tailored to
+
+29 * your application needs. This example simply sets an error status in the
+
+30 * real-time model and returns from rt_OneStep.
+
+31 */
+
+32 void rt_OneStep (void );
+
+33 void rt_OneStep (void )
+
+34 {
+
+35 static boolean_T OverrunFlags [2] = { 0, 0 } ;
+
+36
+
+37 static boolean_T eventFlags [2] = { 0, 0 } ;/* Model has 2 rates */
+
+38
+
+39 static int_T taskCounter [2] = { 0, 0 } ;
+
+40
+
+41 /* Disable interrupts here */
+
+42
+
+43 /* Check base rate for overrun */
+
+44 if (OverrunFlags [0]) {
+
+45 return ;
+
+46 }
+
+47
+
+48 OverrunFlags [0] = true;
+
+49
+
+50 /* Save FPU context here (if necessary) */
+
+51 /* Re-enable timer or interrupt here */
+
+52
+
+53 /*
+
+54 * For a bare-board target (i.e., no operating system), the
+
+55 * following code checks whether any subrate overruns,
+
+56 * and also sets the rates that need to run this time step.
+
+57 */
+
+58 if (taskCounter [1] == 0) {
+
+59 if (eventFlags [1]) {
+
+60 OverrunFlags [0] = false;
+
+61 OverrunFlags [1] = true;
+
+62 return ;
+
+63 }
+
+64
+
+65 eventFlags [1] = true;
+
+66 }
+
+67
+
+68 taskCounter [1]++ ;
+
+69 if (taskCounter [1] == 10) {
+
+70 taskCounter [1]= 0;
+
+71 }
+
+72
+
+73 /* Set model inputs associated with base rate here */
+
+74
+
+75 /* Step the model for base rate */
+
+76 FCC_step0 ();
+
+77
+
+78 /* Get model outputs here */
+
+79
+
+80 /* Indicate task for base rate complete */
+
+81 OverrunFlags [0] = false;
+
+82
+
+83 /* If task 1 is running, don't run any lower priority task */
+
+84 if (OverrunFlags [1]) {
+
+85 return ;
+
+86 }
+
+87
+
+88 /* Step the model for subrate */
+
+89 if (eventFlags [1]) {
+
+90 OverrunFlags [1] = true;
+
+91
+
+92 /* Set model inputs associated with subrates here */
+
+93
+
+94 /* Step the model for subrate 1 */
+
+95 FCC_step1 ();
+
+96
+
+97 /* Get model outputs here */
+
+98
+
+99 /* Indicate task complete for subrate */
+
+100 OverrunFlags [1] = false;
+
+101 eventFlags [1] = false;
+
+102 }
+
+103
+
+104 /* Disable interrupts here */
+
+105 /* Restore FPU context here (if necessary) */
+
+106 /* Enable interrupts here */
+
+107 }
+
+108
+
+109 /*
+
+110 * The example "main" function illustrates what is required by your
+
+111 * application code to initialize, execute, and terminate the generated code.
+
+112 * Attaching rt_OneStep to a real-time clock is target specific. This example
+
+113 * illustrates how you do this relative to initializing the model.
+
+114 */
+
+115 int_T main (int_T argc , const char * argv [])
+
+116 {
+
+117 /* Unused arguments */
+
+118 (void )(argc );
+
+119 (void )(argv );
+
+120
+
+121 /* Initialize model */
+
+122 FCC_initialize ();
+
+123
+
+124 /* Attach rt_OneStep to a timer or interrupt service routine with
+
+125 * period 0.001 seconds (the model's base sample time) here. The
+
+126 * call syntax for rt_OneStep is
+
+127 *
+
+128 * rt_OneStep();
+
+129 */
+
+130 printf ("Warning: The simulation will run forever. "
+
+131 "Generated ERT main won't simulate model step behavior. "
+
+132 "To change this behavior select the 'MAT-file logging' option.\n");
+
+133 fflush ((NULL ));
+
+134 while (1) {
+
+135 /* Perform other application tasks here */
+
+136 }
+
+137
+
+138 /* The option 'Remove error status field in real-time model data structure'
+
+139 * is selected, therefore the following code does not need to execute.
+
+140 */
+
+141 #if 0
+
+142
+
+143 /* Disable rt_OneStep() here */
+
+144 #endif
+
+145
+
+146 return 0;
+
+147 }
+
+148
+
+149 /*
+
+150 * File trailer for generated code.
+
+151 *
+
+152 * [EOF]
+
+153 */
+
+154
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/hilite_warning.png b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/hilite_warning.png
new file mode 100644
index 0000000000000000000000000000000000000000..f013f815ae58acfcb9112170c871851d666b820f
Binary files /dev/null and b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/hilite_warning.png differ
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/inspect.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/inspect.html
new file mode 100644
index 0000000000000000000000000000000000000000..b628c7a9b9bb6b35d1d71511d01fcff40959fe1b
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/inspect.html
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/js/coder_app.js b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/js/coder_app.js
new file mode 100644
index 0000000000000000000000000000000000000000..3c34823e1b5445bb6421e4f73479ca3bc4f50299
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/js/coder_app.js
@@ -0,0 +1,525 @@
+/* Copyright 2013-2018 The MathWorks, Inc. */
+function queryByClassName(className, elem) {
+ if (!elem) elem = document.body;
+ if (typeof elem.querySelectorAll === "function") {
+ return elem.querySelectorAll("."+className);
+ } else {
+ return elem.getElementsByClass(className);
+ }
+}
+
+function nav_token_usage_details(direction) {
+ var els = queryByClassName("token_usage_details_tabrow");
+ var selectedIdx = 0;
+ var selectedClassName = "selected";
+ for (selectedIdx; selectedIdx < els.length; selectedIdx++) {
+ if (els[selectedIdx].classList.contains(selectedClassName)) {
+ break;
+ }
+ }
+ var nextIdx = selectedIdx;
+ if (direction === -1 && selectedIdx > 0) {
+ nextIdx = selectedIdx-1;
+ } else if (direction === 1 && selectedIdx < els.length - 1) {
+ nextIdx = selectedIdx + 1;
+ }
+ if (nextIdx !== selectedIdx) {
+ els[selectedIdx].classList.remove(selectedClassName);
+ els[nextIdx].classList.add(selectedClassName);
+ els[nextIdx].scrollIntoView(alignWithTop=false);
+ }
+ return false;
+}
+
+function tabrowClicked(event) {
+}
+
+function popupOnload() {
+ var els = queryByClassName("token_usage_details_tabrow");
+ for (var i=0; i" +
+ top.rtwGetFileName(link2Src) + "";
+ var bodyNode = document.body;
+ bodyNode.insertBefore(link, bodyNode.firstElementChild);
+ }
+ top.updateHyperlinks();
+ // update fileSelector frame
+ if (top.fileSelector) {
+ var o = top.fileSelector.document.getElementById('fileSelector');
+ if (o) {
+ o.value = filename;
+ }
+ }
+ // add links to line numbers
+ var hasLineFlag = null;
+ if (top.TraceInfoLineFlag && top.TraceInfoLineFlag.instance) {
+ hasLineFlag = true;
+ } else {
+ hasLineFlag = false;
+ }
+
+ if(hasLineFlag) {
+ var lines = queryByClassName("ln", codeElement);
+ var lineTraceFlag = top.TraceInfoLineFlag.instance.lineTraceFlag;
+ var lineNo = null;
+ for (var i=0; i= 0; --i) {
+ var childNode = trNode.childNodes[i];
+ if (childNode.tagName.toUpperCase() === "TD") {
+ return childNode.childNodes;
+ }
+ }
+ return null;
+}
+
+// see g1225075
+function fixBoxStyleFnHeaderLineWidths() {
+ // Match strings like "/**********/" which is the top line of
+ // a box-style function comment header
+ var reBoxHeader = /\/\*+\//;
+
+ // Match strings like "' */" which is the contents of the text
+ // element originally generated in the report to pad the width of
+ // the line.
+ var rePadding = /'\s*\*\//;
+
+ // All block identifier elements in the report page
+ blkLineElts = queryByClassName("blk");
+ for (var i = 0; i < blkLineElts.length; ++i) {
+ var origPadding = blkLineElts[i].nextSibling;
+ if (origPadding.textContent.match(rePadding)) {
+ var spanElt = findParent(blkLineElts[i], { tagName: "span", className: "ct" });
+ if (!spanElt) {
+ continue;
+ }
+
+ // The numbered line in the report containing block identifier "i"
+ var tableRowElt = findParent(spanElt, { tagName: "tr" });
+ if (!tableRowElt) {
+ continue;
+ }
+
+ // Loop backward through table rows (i.e., report lines) looking
+ // for the "/***************/" start of the header. When found save
+ // its pixel width. Not actually the width of the itself but
+ // the span inside its last . This is will determine the real
+ // padding that is needed for proper alignment regardless of font
+ // or CKJ characters.
+ var targetWidth = 0;
+ var sanity = Number.MAX_VALUE;
+ var node = tableRowElt.previousSibling;
+ while (node && (sanity-- > 0)) {
+ var lastCellContents = getLastTableCellContents(node);
+ if (lastCellContents) {
+ if (lastCellContents.length === 0) {
+ break;
+ }
+ if (lastCellContents[0].textContent.match(reBoxHeader)) {
+ targetWidth = lastCellContents[0].offsetWidth;
+ break;
+ }
+ }
+ node = node.previousSibling;
+ }
+
+ // If applying a new padding (i.e., targetWidth > 0), replace
+ // the original padding "' */' (a single text element) with
+ // two text elements and a span in between. The span will be the
+ // new pixel-accurate padding.
+ if (targetWidth > 0) {
+ var singleQuoteNode = document.createTextNode("'");
+ var spacerNode = document.createElement('span');
+ origPadding.textContent = "*/";
+ origPadding.parentNode.insertBefore(spacerNode, origPadding);
+ origPadding.parentNode.insertBefore(singleQuoteNode, spacerNode);
+
+ var padWidth = targetWidth - spanElt.offsetWidth;
+ spacerNode.style.display = 'inline-block';
+ spacerNode.style.width = String(padWidth) + "px";
+ spacerNode.style.height = '1em'; // cursor won't work w/o some height
+ spacerNode.style.cursor = 'text';
+ }
+ }
+ }
+}
+
+// the onload function for source file
+function srcFileOnload() {
+ var codeElement = document.getElementById("codeTbl");
+ var insertFunction = getInsertFunction(codeElement);
+ try {
+ var els = codeElement.getElementsByTagName("tr");
+ for (var i = 0; i < els.length; i++) {
+ registerDelayedOnMouseOver(els[i], lineOnMouseIn, lineOnMouseOut);
+ }
+ updateToken(codeElement);
+ } catch (err) {};
+ insertFunction();
+ // add code to model hyperlinks for all tokens
+ var filename = location.pathname.split(/\//);
+ filename = filename[filename.length-1];
+ // highlight the filename in the TOC frame
+ if (top.rtwreport_contents_frame && top.hiliteByFileName(top.rtwreport_document_frame.document.location.href)) {
+ // remove the highlights in the TOC frame if filename is hilite successfully
+ top.removeHiliteTOC(top.rtwreport_contents_frame);
+ }
+
+ // annotate code with code coverage data
+ if (typeof rtwannotate === 'function') {
+ rtwannotate(filename.replace(/.html$/,"_cov.xml"));
+ }
+
+ fixBoxStyleFnHeaderLineWidths();
+
+ // highlight token and row
+ if (top.RTW_TraceInfo.instance && top.RTW_TraceArgs.instance) {
+ var i;
+ // find the highlight file name
+ var fileIdx = top.RTW_TraceArgs.instance.getFileIdx(filename);
+ var ids=[], rows=[];
+ if (typeof fileIdx !== "undefined") {
+ ids = top.RTW_TraceArgs.instance.getIDs(fileIdx);
+ rows = top.RTW_TraceArgs.instance.getRows(fileIdx);
+ // highlight rows in file
+ for (i=0; i 0)
+ top.RTW_TraceInfo.instance.setInitLocation(filename,rows[0]);
+ else {
+ top.toggleNavSideBar("off");
+ return;
+ }
+ }
+
+ // display navigation side bar
+ if (top.rtwreport_nav_frame) top.rtwreport_nav_frame.location.reload();
+ if (rows.length>0) {
+ top.toggleNavSideBar("on");
+ top.toggleNavToolBar("on");
+ } else {
+ top.toggleNavSideBar("off");
+ }
+ }
+ top.scrollToLineBasedOnHash(document.location.hash);
+ function getHash() {
+ var loc;
+ var aHash="";
+ var topDocObj = top.window.document;
+ // get the hash value from location.
+ loc = topDocObj.location;
+ loc = loc.search || loc.hash;
+ aHash = loc.substring(1);
+ aHash = decodeURI(aHash);
+ return aHash;
+ }
+}
+
+function createPopup(filename, evt) {
+ var anchorObj = evt.currentTarget;
+ if (anchorObj.children.length > 0)
+ return;
+ var filename = location.pathname.split(/\//);
+ filename = filename[filename.length-1];
+ var windowObj = top.getInspectWindow();
+ var propObj = top.getInspectData(filename, anchorObj);
+ var navObj = top.getInspectLink(filename, location.pathname, anchorObj);
+ if (propObj) {
+ windowObj.appendChild(propObj);
+ windowObj.style.left = "0px";
+ if (anchorObj.parentElement.nodeName === "TD" &&
+ anchorObj.parentElement.parentElement.nodeName === "TR") {
+ anchorObj.parentElement.parentElement.lastChild.insertBefore(windowObj,
+ anchorObj.parentElement.parentElement.lastChild.lastChild.nextSibling);
+ var left = Math.min(evt.clientX , window.innerWidth - windowObj.scrollWidth - 30);
+ left = Math.max(0, left);
+ windowObj.style.left = "" + left + "px";
+ }
+ }
+};
+
+function destroyPopup(anchorObj) {
+ var popWindow = document.getElementById("popup_window");
+ if (popWindow) {
+ popWindow.parentElement.removeChild(popWindow);
+ }
+};
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/nav.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/nav.html
new file mode 100644
index 0000000000000000000000000000000000000000..64f68dbc1980c5d6eaedcb14230e0eff7a1e2ee2
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/nav.html
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/navToolbar.html b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/navToolbar.html
new file mode 100644
index 0000000000000000000000000000000000000000..d07c72e0a8141cd7e044a11304c611d8c30999fc
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/navToolbar.html
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/rtwhilite.js b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/rtwhilite.js
new file mode 100644
index 0000000000000000000000000000000000000000..168d8238152dbdf2b9ffa58c08025b7e0edafb8a
--- /dev/null
+++ b/src/DO178_Case_Study-master/DO_04_Code/specification/FCC_ert_rtw/html/rtwhilite.js
@@ -0,0 +1,2072 @@
+// Copyright 2006-2019 The MathWorks, Inc.
+
+// Class RTW_Hash ------------------------------------------------------------
+// Internal web browser doesn't change window.location.hash if the link points
+// to the same page.
+// RTW_Hash remembers the hash value when the page is loaded in the first time
+// or a link is clicked.
+// removeHiliteByHash cleans the high lighted elements according to the stored
+// hash value
+function RTW_Hash(aHash) {
+ if (aHash == null) {
+ this.fHash = "";
+ } else {
+ this.fHash = aHash;
+ };
+
+ this.getHash = function() {
+ return this.fHash;
+ }
+
+ this.setHash = function(aHash) {
+ this.fHash = aHash;
+ }
+}
+
+RTW_Hash.instance = null;
+
+// Class RTW_TraceInfo --------------------------------------------------------
+function RTW_TraceInfo(aFileLinks) {
+ this.fFileLinks = aFileLinks;
+ this.fLines = new Array();
+ this.fTotalLines = 0; // total number of highlighted lines
+ this.fNumLines = new Array();
+ this.fFileIdxCache = new Array();
+ this.fDisablePanel = false;
+ this.fCurrFileIdx = -1;
+ this.fCurrLineIdx = -1;
+ this.fCurrCodeNode = null;
+ this.getHtmlFileName = function(aIndex) {
+ if (aIndex < this.fFileLinks.length) {
+ var href = this.fFileLinks[aIndex].href;
+ return href.substring(href.lastIndexOf('/')+1);
+ }
+ }
+ this.getSrcFileName = function(aIndex) {
+ var name = this.getHtmlFileName(aIndex);
+ if (name)
+ name = RTW_TraceInfo.toSrcFileName(name);
+ return name;
+ }
+ this.getNumFileLinks = function() {
+ return this.fFileLinks.length;
+ }
+ this.setFileLinkColor = function(aIndex, aColor) {
+ var link = this.fFileLinks[aIndex];
+ if (link && link.parentNode && link.parentNode.style)
+ link.parentNode.style.backgroundColor = aColor;
+ }
+ this.highlightFileLink = function(aIndex, aColor) {
+ for (var i = 0; i < this.fFileLinks.length; ++i) {
+ this.setFileLinkColor(i, i == aIndex ? aColor : "");
+ }
+ }
+ this.highlightCurrFileLink = function(aColor) {
+ this.highlightFileLink(this.fCurrFileIdx);
+ }
+ this.highlightLines = function(aCodeNode,aColor) {
+ this.fCurrCodeNode = aCodeNode;
+ var lines = this.fLines[this.getHtmlFileName(this.fCurrFileIdx)];
+ if (lines && aCodeNode) {
+ for (var i = 0; i < lines.length; ++i) {
+ var lineObj = aCodeNode.childNodes[lines[i]-1];
+ if (lineObj)
+ lineObj.style.backgroundColor=aColor;
+ }
+ }
+ }
+ this.getFileIdx = function(aFile) {
+ if (this.fFileIdxCache[aFile] != null)
+ return this.fFileIdxCache[aFile];
+ for (var i = 0; i < this.fFileLinks.length; ++i) {
+ if (this.getHtmlFileName(i) == aFile) {
+ this.fFileIdxCache[aFile] = i;
+ return i;
+ }
+ }
+ return null;
+ }
+ this.getCurrFileIdx = function() { return this.fCurrFileIdx; }
+ this.setNumHighlightedLines = function(aFileIdx, aNumLines) {
+ this.fNumLines[aFileIdx] = aNumLines;
+ updateNumHighlightedLines(this.fFileLinks[aFileIdx], aNumLines);
+ }
+ this.getNumLines = function(aFileIdx) {
+ return this.fNumLines[aFileIdx] != null ? this.fNumLines[aFileIdx] : 0;
+ }
+ this.getNumLinesAll = function() {
+ var sum = 0;
+ var len = this.fNumLines.length;
+ for (var i = 0; i < len; ++i) {
+ sum += this.getNumLines(i);
+ }
+ return sum;
+ }
+ this.getPrevButton = function() {
+ var aFrame = getNavFrame();
+ if (typeof aFrame !== "undefined" && aFrame !== null)
+ return aFrame.document.getElementById("rtwIdButtonPrev");
+ else
+ return document.getElementById("rtwIdButtonPrev");
+ }
+ this.getNextButton = function() {
+ var aFrame = getNavFrame();
+ if (typeof aFrame !== "undefined" && aFrame !== null)
+ return aFrame.document.getElementById("rtwIdButtonNext");
+ else
+ return document.getElementById("rtwIdButtonNext");
+ }
+ this.getPanel = function() {
+ var aFrame = getNavFrame();
+ if (typeof aFrame !== "undefined" && aFrame !== null)
+ return aFrame.document.getElementById("rtwIdTracePanel");
+ else
+ return document.getElementById("rtwIdTracePanel");
+ }
+ this.removeHighlighting = function() {
+ for (var i = 0; i < this.fFileLinks.length; ++i) {
+ this.setFileLinkColor(i, "");
+ this.setNumHighlightedLines(i, 0);
+ }
+ // remove highlight and reset current code node
+ try {
+ if (this.fCurrCodeNode != null)
+ this.highlightLines(getCodeNode(),"");
+ } catch (e) {};
+ this.fCurrCodeNode = null;
+ if (this.getPrevButton()) { this.getPrevButton().disabled = true; }
+ if (this.getNextButton()) { this.getNextButton().disabled = true; }
+ if (this.getPanel()) { this.getPanel().style.display = "none"; }
+ this.fCurrFileIdx = -1;
+ this.fCurrLineIdx = -1;
+ }
+ this.setCurrLineIdx = function(aLineIdx) {
+ this.fCurrLineIdx = aLineIdx;
+ }
+ this.getCurrLineIdx = function() { return this.fCurrLineIdx; }
+ this.setCurrent = function(aFileIdx, aLineIdx) {
+ this.fCurrFileIdx = aFileIdx;
+ var numLines = this.getNumLines(aFileIdx);
+ if (!numLines || aLineIdx >= numLines)
+ this.fCurrLineIdx = -1;
+ else
+ this.fCurrLineIdx = aLineIdx;
+ var allNumLines = this.getNumLinesAll();
+ if (this.getPrevButton()) {
+ this.getPrevButton().disabled = (allNumLines <= 1 || !this.hasPrev());
+ }
+ if (this.getNextButton()) {
+ this.getNextButton().disabled = (allNumLines <= 1 || !this.hasNext());
+ }
+ if (this.getPanel() && !this.fDisablePanel) {
+ this.getPanel().style.display = 'block';
+ }
+ }
+ this.setDisablePanel = function(aDisable) {
+ this.fDisablePanel = aDisable;
+ }
+ this.getPrevFileIdx = function() {
+ if (this.fCurrLineIdx > 0)
+ return this.fCurrFileIdx;
+ for (var i = this.fCurrFileIdx - 1; i >= 0; --i)
+ if (this.fNumLines[i] > 0)
+ return i;
+ return null;
+ }
+ // update the navigation bar state
+ this.updateNavState = function() {
+ if (this.getPrevButton())
+ this.getPrevButton().disabled = !this.hasPrev();
+ if (this.getNextButton())
+ this.getNextButton().disabled = !this.hasNext();
+ setTraceNumber();
+ }
+ this.hasPrev = function() {
+ return this.getPrevFileIdx() != null;
+ }
+ this.getFirstFileIdx = function() {
+ for (var i = 0; i < this.getNumFileLinks(); ++i)
+ if (this.fNumLines[i] > 0)
+ return i;
+ }
+ this.getLastFileIdx = function() {
+ for (var i = this.getNumFileLinks(); i >= 0; --i)
+ if (this.fNumLines[i] > 0)
+ return i;
+ }
+ this.goFirst = function() {
+ this.fCurrFileIdx = this.getFirstFileIdx();
+ this.fCurrLineIdx = 0;
+ this.updateNavState();
+ }
+ this.goLast = function() {
+ this.fCurrFileIdx = this.getLastFileIdx();;
+ this.fCurrLineIdx = this.getNumLines(this.fCurrFileIdx) - 1;
+ this.updateNavState();
+ }
+ this.goPrev = function() {
+ var fileIdx = this.getPrevFileIdx();
+ if (fileIdx == null)
+ return;
+ if (fileIdx == this.fCurrFileIdx)
+ --this.fCurrLineIdx;
+ else {
+ this.fCurrFileIdx = fileIdx;
+ this.fCurrLineIdx = this.getNumLines(fileIdx) - 1;
+ }
+ this.updateNavState();
+ }
+ this.getNextFileIdx = function() {
+ if (this.fCurrLineIdx < this.getNumLines(this.fCurrFileIdx) - 1 && this.getNumLines(this.fCurrFileIdx) > 0)
+ return this.fCurrFileIdx;
+ for (var i = this.fCurrFileIdx + 1; i < this.getNumFileLinks(); ++i)
+ if (this.fNumLines[i] > 0)
+ return i;
+ return null;
+ }
+ this.hasNext = function() {
+ return this.getNextFileIdx() != null;
+ }
+ this.goNext = function() {
+ var fileIdx = this.getNextFileIdx();
+ if (fileIdx == null)
+ return;
+ if (fileIdx == this.fCurrFileIdx)
+ ++this.fCurrLineIdx;
+ else {
+ this.fCurrFileIdx = fileIdx;
+ this.fCurrLineIdx = 0;
+ }
+ this.updateNavState();
+ }
+ this.setTotalLines = function(num) {
+ this.fTotalLines = num;
+ }
+ this.getTotalLines = function() { return this.fTotalLines;}
+ this.setLines = function(aFile, aLines) {
+ this.fLines[aFile] = aLines;
+ var index = this.getFileIdx(aFile);
+ if (index != null)
+ this.setNumHighlightedLines(index,aLines.length);
+ }
+ this.getLines = function(aFile) {
+ return this.fLines[aFile];
+ }
+ // get current on focus line number
+ this.getCurrLine = function() {
+ var file = this.getHtmlFileName(this.getCurrFileIdx());
+ var lines = this.fLines[file];
+ var line = null;
+ if (lines) {
+ var line = lines[this.fCurrLineIdx];
+ }
+ return line;
+ }
+ this.getHRef = function(aFileIdx, aLineIdx, offset) {
+ var file = this.getHtmlFileName(aFileIdx);
+ var lines = this.fLines[file];
+ if (lines) {
+ var line = lines[aLineIdx];
+ line = offset_line(line, offset);
+ file = file+"#"+line;
+ }
+ return file;
+ }
+
+ this.getCurrentHRef = function(offset) {
+ return this.getHRef(this.fCurrFileIdx, this.fCurrLineIdx, offset);
+ }
+ this.setInitLocation = function(aFile, aLine) {
+ var fileIdx = this.getFileIdx(aFile);
+ var lineIdx = null;
+ if (fileIdx != null && aLine) {
+ var lines = this.getLines(aFile);
+ for (var i = 0; i < lines.length; ++i) {
+ if (lines[i] == aLine) {
+ lineIdx = i;
+ break;
+ }
+ }
+ }
+ if (fileIdx == null || lineIdx == null)
+ this.setCurrent(-1,-1);
+ else
+ this.setCurrent(fileIdx,lineIdx);
+ }
+}
+
+// Static methods in RTW_TraceInfo
+
+RTW_TraceInfo.getFileLinks = function(docObj) {
+ var links;
+ if (docObj && docObj.getElementsByName)
+ links = docObj.getElementsByName("rtwIdGenFileLinks");
+ return links ? links : new Array();
+}
+
+RTW_TraceInfo.toSrcFileName = function(aHtmlFileName) {
+ aHtmlFileName = aHtmlFileName.replace(/_c.html$/,".c");
+ aHtmlFileName = aHtmlFileName.replace(/_h.html$/,".h");
+ aHtmlFileName = aHtmlFileName.replace(/_cpp.html$/,".cpp");
+ aHtmlFileName = aHtmlFileName.replace(/_hpp.html$/,".hpp");
+ aHtmlFileName = aHtmlFileName.replace(/_cc.html$/,".hpp");
+ return aHtmlFileName;
+}
+
+RTW_TraceInfo.instance = null;
+
+// Class RTW_TraceArgs --------------------------------------------------------
+// file.c:10,20,30&file.h:10,20,30[&color=value] or
+// sid=model:1[&color=value]
+RTW_TraceArgs = function(aHash) {
+ this.fColor = null;
+ this.fFontSize = null;
+ this.fInitFile = null;
+ this.fInitLine = null;
+ this.fSID = null;
+ this.fFiles = new Array();
+ this.fLines = new Array();
+ this.fMessage = null;
+ this.fBlock = null;
+ this.fNumBlocks = 0;
+ this.fUseExternalBrowser = true;
+ this.fInStudio = false;
+ this.fModel2CodeSrc = null;
+ this.fInCodeTrace = false;
+ this.fTraceData = null;
+ this.fFileIdx = []; // filename to fileId
+ this.fRows = []; // highlighted rows indexed by fileId
+ this.fIDs = []; // highlighted IDs indexed by fileId
+
+ this.hasSid = function() {
+ return !(this.fSID == null);
+ }
+ this.parseCommand = function(aHash) {
+ var args = new Array();
+ args = aHash.split('&');
+ for (var i = 0; i < args.length; ++i) {
+ var arg = args[i];
+ sep = arg.indexOf('=');
+ if (sep != -1) {
+ var cmd = arg.substring(0,sep);
+ var opt = arg.substring(sep+1);
+ switch (cmd.toLowerCase()) {
+ case "color":
+ this.fColor = opt;
+ break;
+ case "fontsize":
+ this.fFontSize = opt;
+ break;
+ case "initfile":
+ this.fInitFile = RTW_TraceArgs.toHtmlFileName(opt);
+ break;
+ case "initline":
+ this.fInitLine = opt;
+ break;
+ case "msg":
+ this.fMessage = opt;
+ break;
+ case "block":
+ this.fBlock = unescape(opt);
+ break;
+ case "numblocks":
+ this.fNumBlocks = parseInt(opt);
+ break;
+ case "sid":
+ this.fSID = opt;
+ // convert sid to code location
+ break;
+ case "model2code_src":
+ // model2code_src from model or webview
+ this.fModel2CodeSrc = opt;
+ break;
+ case "useexternalbrowser":
+ this.fUseExternalBrowser = (opt=="true");
+ break;
+ case "instudio":
+ this.fInStudio = (opt=="true");
+ break;
+ case "incodetrace":
+ this.fInCodeTrace = (opt=="true");
+ break;
+ case "tracedata":
+ this.fTraceData = decodeURI(opt);
+ break;
+ }
+ }
+ }
+ }
+ this.parseUrlHash = function(aHash) {
+ var rows, sep, assignSep;
+ if (aHash) {
+ args = aHash.split('&');
+ for (var i = 0; i < args.length; ++i) {
+ var arg = args[i];
+ sep = arg.indexOf(':');
+ assignSep = arg.indexOf('=');
+ if (sep !== -1 && assignSep === -1) {
+ var fileLines = arg.split(':');
+ var htmlFileName = RTW_TraceArgs.toHtmlFileName(fileLines[0]);
+ this.fFileIdx[htmlFileName] = i;
+ this.fFiles.push(htmlFileName);
+ if (fileLines[1]) {
+ rows = fileLines[1].split(',');
+ rows = uniqueRows(rows);
+ this.fLines.push(rows);
+ this.fRows[i] = rows;
+ }
+ }
+ }
+ if (this.fInitFile == null && this.fFiles.length > 0) {
+ this.fInitFile = this.fFiles[0];
+ this.fInitLine = (this.fLines[0] == null ? -1 : this.fLines[0][0]);
+ }
+ }
+ }
+ this.parseUrlHash2 = function(aHash) {
+ aHash = decodeURI(aHash);
+ var rows;
+ var ids;
+ if (aHash && aHash.length > 0 && aHash[0] === "[") {
+ var input = eval(aHash);
+ var i;
+ var j;
+ // set highlight files from url
+ for (i=0; i 0
+ && top.rtwreport_document_frame.location.href !== "about:blank" && forceReload !== true) {
+ updateHyperlinks();
+ return;
+ }
+
+ // modify modelref links
+ update_modelref_report_link(top.rtwreport_contents_frame.document);
+ try {
+ // ignore browser security error
+ update_modelref_report_link(top.rtwreport_document_frame.document);
+ } catch(e) {};
+
+ // redirect the page based on the url
+ var initPage = null;
+ if (RTW_TraceArgs.instance.getNumFiles()) {
+ var fileLinks = RTW_TraceInfo.getFileLinks(tocDocObj);
+ RTW_TraceInfo.instance = new RTW_TraceInfo(fileLinks);
+ RTW_TraceInfo.instance.removeHighlighting()
+ var numFiles = RTW_TraceArgs.instance.getNumFiles();
+ var tLines = 0;
+ for (var i = 0; i < numFiles; ++i) {
+ RTW_TraceInfo.instance.setLines(RTW_TraceArgs.instance.getFile(i),RTW_TraceArgs.instance.getLines(i));
+ tLines += RTW_TraceArgs.instance.getLines(i).length;
+ }
+ RTW_TraceInfo.instance.setTotalLines(tLines);
+ if (aPanel == false) {
+ RTW_TraceInfo.instance.setDisablePanel(true);
+ }
+ var initFile = RTW_TraceArgs.instance.getInitFile();
+ RTW_TraceInfo.instance.setInitLocation(initFile,RTW_TraceArgs.instance.getInitLine());
+ if (!hasInCodeTrace()) {
+ initPage = RTW_TraceInfo.instance.getCurrentHRef();
+ } else {
+ initPage = initFile;
+ }
+ } else {
+ // catch error that document frame is in another domain
+ try {
+ var fileDocObj = top.rtwreport_document_frame.document;
+ if (fileDocObj.location && (!fileDocObj.location.href || fileDocObj.location.href == "about:blank")) {
+ var summaryPage = tocDocObj.getElementById("rtwIdSummaryPage");
+ var tracePage = tocDocObj.getElementById("rtwIdTraceability");
+ if (summaryPage) {
+ initPage = summaryPage.href;
+ } else if (tracePage) {
+ initPage = tracePage;
+ }
+ }
+ } catch(e) {};
+ }
+ if (RTW_TraceArgs.instance && RTW_TraceArgs.instance.fMessage) {
+ // display diagnostic message
+ var linkId = "rtwIdMsgFileLink";
+ var msgFile = tocDocObj.getElementById(linkId);
+ if (msgFile && msgFile.style) {
+ msgFile.style.display = "block";
+ // Highlight the background of msg link
+ tocHiliteById(linkId);
+ }
+ initPage = "rtwmsg.html";
+ }
+ if (initPage) {
+ var is_same_page = false;
+ try {
+ var fileDocObj = top.rtwreport_document_frame.document;
+ is_same_page = isSamePage(fileDocObj.location.href, initPage);
+ } catch(e) {};
+ if (document.getElementById("rtwreport_document_frame")) {
+ document.getElementById("rtwreport_document_frame").setAttribute("src", initPage);
+ } else {
+ top.rtwreport_document_frame.location.href = initPage;
+ }
+
+ if (is_same_page) {
+ // Goto the same page won't trigger onload function.
+ // Call it manuelly to highligh new code location.
+ rtwFileOnLoad(top.rtwreport_document_frame.document);
+ }
+ }
+}
+
+// Compare if href1(i.e. file:///path/file1.html#222) and href2(i.e.file2.html) are same pages.
+// isSamePage return true if file1 == file2.
+function isSamePage(href1, href2) {
+ var page1 = href1.substring(href1.lastIndexOf('/')+1,href1.lastIndexOf('.html'));
+ var page2 = href2.substring(href2.lastIndexOf('/')+1,href2.lastIndexOf('.html'));
+ return (page1 == page2);
+}
+
+// Callback for main document loading
+function rtwMainOnLoad() {
+ rtwMainOnLoadFcn(document,null,true, false);
+ var newUrl;
+ // modify history state to avoid reload from pressing back
+ if (RTW_TraceArgs.instance && !RTW_TraceArgs.instance.getUseExternalBrowser() &&
+ typeof window.history.replaceState === "function") {
+ if (window.location.search.length > 0) {
+ if (window.location.search.indexOf("loaded=true") === -1) {
+ newUrl = document.location.pathname + window.location.search + '&loaded=true';
+ } else {
+ newUrl = document.location.pathname + window.location.search;
+ }
+ } else {
+ newUrl = document.location.pathname + window.location.search + '?loaded=true';
+ }
+ window.history.replaceState("","",newUrl);
+ }
+}
+
+// Helper function for traceability report
+function rtwMainReload(location) {
+ // remove highlight filename and lines before reloading the page
+ if (RTW_TraceInfo.instance)
+ RTW_TraceInfo.instance.removeHighlighting();
+ rtwMainOnLoadFcn(document,location,true,true);
+}
+
+function rtwMainReloadNoPanel(location) {
+ rtwMainOnLoadFcn(document,location,false,true);
+}
+
+// Callback for hyperlink "Remove Highlighting"
+function rtwRemoveHighlighting() {
+ if (RTW_TraceInfo.instance)
+ RTW_TraceInfo.instance.removeHighlighting();
+ if (rtwSrcFrame()) {
+ rtwSrcFrame().focus();
+ }
+ if (hasInCodeTrace()) {
+ removeInCodeTraceHighlight();
+ }
+}
+
+// Display diagnostic message in document frame
+function rtwDisplayMessage() {
+ var docObj = top.rtwreport_document_frame.document;
+ var msg = docObj.getElementById(RTW_TraceArgs.instance.fMessage);
+ if (!msg) {
+ msg = docObj.getElementById("rtwMsg_notTraceable");
+ }
+ if (msg && msg.style) {
+ msg.style.display = "block"; // make message visible
+ var msgstr = msg.innerHTML;
+ // replace '%s' in message with block name
+ if (top.RTW_TraceArgs.instance) {
+ var sid = top.RTW_TraceArgs.instance.getBlock();
+ if (sid) {
+ var block = sid;
+ if (top.RTW_rtwnameSIDMap && top.RTW_rtwnameSIDMap.instance && top.RTW_rtwnameSIDMap.instance.getRtwname(sid)) {
+ block = top.RTW_rtwnameSIDMap.instance.getRtwname(sid).rtwname;
+ block = block.replace("<", "<").replace(">", ">");
+ } else {
+ block = sid;
+ }
+ if (block) {
+ msgstr = msgstr.replace("%s", block);
+ }
+ }
+ }
+ msg.innerHTML = msgstr;
+ }
+}
+
+function updateHyperlinks() {
+ docObj = top.rtwreport_document_frame;
+ if (docObj && docObj.document) {
+ if (RTW_TraceArgs.instance === null || !RTW_TraceArgs.instance.getUseExternalBrowser()) {
+ var plain_link = docObj.document.getElementById("linkToText_plain");
+ if (plain_link && plain_link.href && plain_link.href.indexOf("matlab:coder.internal.editUrlTextFile") === -1 ) {
+ plain_link.href = "matlab:coder.internal.editUrlTextFile('" + str2StrVar(plain_link.href) + "')";
+ }
+ var alink = docObj.document.getElementById("linkToCS");
+ var linkCmd = "matlab:coder.internal.viewCodeConfigsetFromReport";
+ if (alink && alink.href && alink.href.indexOf(linkCmd) === -1) {
+ alink.href = linkCmd+ "('" + str2StrVar(alink.href) + "');";
+ if(alink.style) {
+ alink.style.display = "";
+ hidden_link = docObj.document.getElementById("linkToCS_disabled");
+ if (hidden_link) {
+ hidden_link.style.display = "none";
+ }
+ }
+ }
+ } else {
+ var alink = docObj.document.getElementById("linkToCS");
+ if (alink && alink.style) {
+ alink.style.display = "none";
+ hidden_link = docObj.document.getElementById("linkToCS_disabled");
+ if (hidden_link)
+ hidden_link.style.display = "";
+ }
+ if (typeof docObj.document.getElementsByClassName === "function") {
+ alinks = docObj.document.getElementsByClassName("callMATLAB");
+ } else if (typeof docObj.document.getElementsByName === "function") {
+ alinks = docObj.document.getElementsByName("callMATLAB");
+ } else {
+ alinks = [];
+ }
+ alink = docObj.document.getElementById("CodeGenAdvCheck");
+ if (alink && alink.href && alink.href.indexOf("externalweb=true")===-1) {
+ alink.href = alink.href + "?externalweb=true";
+ }
+
+ if (typeof docObj.document.getElementsByName === "function")
+ var objs = docObj.document.getElementsByName("MATLAB_link");
+ else
+ objs = [];
+ for (var objIndex = 0; objIndex < objs.length; ++objIndex) {
+ objs[objIndex].style.display = "none";
+ }
+ }
+ }
+ updateCode2ModelLinks(docObj.document);
+ // modify modelref links
+ update_modelref_report_link(top.rtwreport_contents_frame.document);
+ try {
+ // ignore browser security error
+ update_modelref_report_link(top.rtwreport_document_frame.document);
+ } catch(e) {};
+}
+
+function update_modelref_report_link(docObj) {
+ if (docObj.getElementsByName) {
+ var arg = "";
+ if (RTW_TraceArgs.instance && !RTW_TraceArgs.instance.getUseExternalBrowser()) {
+ arg = "?useExternalBrowser=false";
+ }
+ if (RTW_TraceArgs && RTW_TraceArgs.instance && RTW_TraceArgs.instance.getModel2CodeSrc() != null) {
+ if (arg.length > 0)
+ arg = arg + "&model2code_src=" + RTW_TraceArgs.instance.getModel2CodeSrc();
+ else
+ arg = "?model2code_src=" + RTW_TraceArgs.instance.getModel2CodeSrc();
+ }
+ if (arg.length > 0) {
+ links = docObj.getElementsByName('external_link');
+ for (var link_idx = 0; link_idx < links.length; ++link_idx) {
+ links[link_idx].href = links[link_idx].href + arg;
+ }
+ }
+ }
+}
+
+function rtwResizeFrame(f) {
+ if (f) {
+ f.style.height = f.contentWindow.document.body.scrollHeight + "px";
+ }
+}
+
+function rtwPageOnLoad(id) {
+ // highlight toc entry
+ tocHiliteById(id);
+ // restore elements state
+ if (top && top.restoreState) {
+ if (top.rtwreport_contents_frame && top.rtwreport_contents_frame.document)
+ top.restoreState(top.rtwreport_contents_frame.document);
+ if (top.rtwreport_document_frame && top.rtwreport_document_frame.document) {
+ top.restoreState(top.rtwreport_document_frame.document);
+ rtwResizeFrame(top.rtwreport_document_frame.document.getElementById("rtwIdContentsIframe"));
+ }
+ }
+ updateHyperlinks();
+}
+
+// highlight code after changeSys
+function rtwChangeSysCallback(sid) {
+ if (sid == "" || typeof RTW_Sid2UrlHash == "undefined" || !RTW_Sid2UrlHash.instance)
+ return false;
+ urlHash = RTW_Sid2UrlHash.instance.getUrlHash(sid);
+ if (urlHash != undefined) {
+ if (RTW_TraceArgs && RTW_TraceArgs.instance &&
+ !RTW_TraceArgs.instance.getUseExternalBrowser())
+ urlHash = (urlHash == "")? "?useExternalBrowser=false" :
+ urlHash+"&useExternalBrowser=false";
+ rtwMainReload(urlHash, true);
+ return true;
+ } else {
+ // remove highlighting from traceinfo
+ rtwRemoveHighlighting();
+ return false;
+ }
+}
+
+function emlFileOnload(docObj) {
+ var loc = docObj.location;
+ if (loc.hash) {
+ var line = loc.hash.substring(1);
+ hiliteEmlLine(docObj, line);
+ }
+}
+
+function hiliteEmlLine(docObj, line) {
+ var bgColor;
+ if (top.HiliteCodeStatus)
+ bgColor = "#66CCFF";
+ else
+ bgColor = "#E8D152";
+ // unhighlight
+ if (typeof docObj.HiliteLine != "undefined") {
+ trObj = docObj.getElementById("LN_"+docObj.HiliteLine);
+ if (trObj != null) {
+ trObj.style.backgroundColor = "";
+ }
+ }
+ // hilighlight
+ trObj = docObj.getElementById("LN_"+line);
+ if (trObj != null) {
+ trObj.style.backgroundColor = bgColor;
+ docObj.HiliteLine = line;
+ }
+}
+
+function emlLineOnClick(docObj,sid,line) {
+ if (top) {
+ top.HiliteCodeStatus = top.rtwChangeSysCallback(sid);
+ }
+ hiliteEmlLine(docObj, line);
+}
+
+function updateCode2ModelLinks(docObj) {
+ var webviewFrame = top.document.getElementById('rtw_webviewMidFrame');
+ var link2model = false;
+ var isTestHarness = false;
+ if (top.testHarnessInfo && top.testHarnessInfo.IsTestHarness === "1") {
+ isTestHarness = true;
+ }
+ if (webviewFrame || isTestHarness) {
+ if (webviewFrame && RTW_TraceArgs.instance &&
+ (RTW_TraceArgs.instance.getModel2CodeSrc() !== "model" ||
+ RTW_TraceArgs.instance.getUseExternalBrowser())
+ ) {
+ hiliteCmd = "javascript:top.rtwHilite(";
+ } else {
+ hiliteCmd = "matlab:coder.internal.code2model(";
+ link2model = true;
+ }
+ var objs = docObj.getElementsByName('code2model');
+ var o = null;
+ var str = '';
+ var sid = '';
+ var pattern = "'code2model',";
+ for (var objIndex = 0; objIndex < objs.length; ++objIndex) {
+ o = objs[objIndex];
+ str = o.href.substring(o.href.indexOf('(')+1);
+ if (str.indexOf(pattern) > -1) {
+ str = str.substring(str.indexOf(pattern) + pattern.length);
+ }
+ o.href = hiliteCmd + str;
+ if (link2model && isTestHarness) {
+ sid = str.substring(0, str.indexOf(")"));
+ o.href = hiliteCmd + sid + ",'" +
+ top.testHarnessInfo.HarnessName+ "','" +
+ top.testHarnessInfo.HarnessOwner+ "','" +
+ top.testHarnessInfo.OwnerFileName + "');";
+ }
+ }
+ }
+}
+
+function rtwHilite(aBlock,aParentSID) {
+ if (aBlock.indexOf('-') !== -1) {
+ // remove sid range: model:sid:2-10 => model:sid
+ var s;
+ s = aBlock.split(':');
+ if (s.length > 0) {
+ s = s[s.length-1];
+ if (s.indexOf('-') != -1) {
+ aBlock = aBlock.substring(0, aBlock.lastIndexOf(':'));
+ }
+ }
+ }
+ if (typeof aParentSID === "undefined") {
+ if (top.RTW_SidParentMap && top.RTW_SidParentMap.instance)
+ aParentSID = top.RTW_SidParentMap.instance.getParentSid(aBlock);
+ else
+ aParentSID = aBlock;
+ }
+ top.HiliteCodeStatus = true;
+
+ // webview 2 defines an interface api, call slwebview.
+ if (top.slwebview) {
+ // webview 2.x
+ if (top.codeToWebView(aBlock, aParentSID) === -1) {
+ alert("Cannot highlight block in model Web view. It may not be exported.");
+ }
+
+ } else {
+ // webview 1.x
+ if (hiliteBlockForRTWReport(aBlock,aParentSID) === false) {
+ if (hiliteBlockForRTWReport(aBlock, aBlock) === false) {
+ rtwHilite(aParentSID);
+ }
+ }
+ }
+}
+
+function str2StrVar(str) {
+ return str.replace(/'/g,"''");
+}
+window.onload=rtwMainOnLoad;
+
+// handle incode traceability highlighting
+function inCodeTraceOnload() {
+ var tocDocObj = top.rtwreport_contents_frame.document;
+ if (!top.RTW_TraceArgs.instance) {
+ var summaryPage = tocDocObj.getElementById("rtwIdSummaryPage");
+ top.rtwreport_document_frame.location.href = summaryPage.href;
+ return;
+ }
+
+ var files = top.RTW_TraceArgs.instance.getFile();
+ if (files.length === 0) {
+ if (top.RTW_TraceArgs.instance) {
+ var block = top.RTW_TraceArgs.instance.getBlock();
+ block = block.replace("<", "<").replace(">", ">");
+ }
+ top.rtwreport_document_frame.document.write("No traceability information for block " + block + ". ");
+ return;
+ };
+
+ var fileLinks = RTW_TraceInfo.getFileLinks(tocDocObj);
+ RTW_TraceInfo.instance = new RTW_TraceInfo(fileLinks);
+
+ // update filelist with num of highlighted lines
+ var tocDoc = top.rtwreport_contents_frame.document;
+ var tLines = 0;
+ for (var i=0; i 1) {
+ var spanNodes = parent.getElementsByTagName('span');
+ var len = spanNodes.length;
+ if (len > 0) {
+ if (aNumLines > 0) {
+ /* display number of matches */
+ spanNodes.item(len-1).innerHTML = " ("+aNumLines+")";
+ } else {
+ /* clear number of matches */
+ spanNodes.item(len-1).innerHTML = "";
+ }
+ }
+ }
+}
+
+function setupInStudio() {
+ if (top.whole) {
+ var tmp = top.whole.rows.split(",");
+ tmp[0] = "35px";
+ top.whole.rows = tmp.join();
+ }
+ if (top.main) {
+ var tmp = top.main.cols.split(",");
+ tmp[0] = "0";
+ top.main.cols = tmp.join();
+ }
+ // add file list to source file
+ if (top.Html2SrcLink && top.Html2SrcLink.instance && top.fileSelector) {
+ var myDoc = top.fileSelector.document;
+ var fileSelector = myDoc.createElement("select");
+ fileSelector.id = "fileSelector";
+ fileSelector.onchange = top.fileSelectorOnChange;
+ var filename;
+ var filelink;
+ fileSelector.innerHTML += "Summary ";
+ for (var i=0; i < top.fileList.length; i++) {
+ filename = top.fileList[i];
+ filelink = top.Html2SrcLink.instance.getLink2Src(filename);
+ fileSelector.innerHTML += "" + filelink.substring(filelink.lastIndexOf('/')+1); + " ";
+ }
+ var bodyNode = myDoc.body;
+ bodyNode.insertBefore(fileSelector, bodyNode.firstElementChild);
+ var textNode = myDoc.createElement("span");
+ textNode.innerHTML = "Goto: ";
+ bodyNode.insertBefore(textNode, fileSelector);
+ var myCss = myDoc.createElement("link");
+ myCss.type = "text/css";
+ myCss.rel = "stylesheet";
+ myCss.href = "rtwreport.css";
+ myDoc.getElementsByTagName("head")[0].appendChild(myCss);
+ }
+}
+
+function toggleNavSideBar(val) {
+ if (top.main) {
+ var tmp = top.main.cols.split(",");
+
+ if (val === "on") {
+ tmp[tmp.length-1] = "15px";
+ } else {
+ tmp[tmp.length-1] = "0";
+ }
+ top.main.cols = tmp.join();
+ if (top.rtwreport_nav_frame)
+ top.rtwreport_nav_frame.location.href = "nav.html";
+ }
+};
+
+function toggleNavToolBar(val)
+{
+ var midFrame = rtwMidFrame();
+ if (midFrame) {
+ var tmp1 = midFrame.rows.split(",");
+ var frameIdx = getNavToolbarFrameIdx();
+ if (val === "on") {
+ tmp1[frameIdx] = "40px";
+ } else {
+ tmp1[frameIdx] = "0";
+ }
+ midFrame.rows = tmp1.join();
+ if (top.rtwreport_navToolbar_frame) {
+ top.rtwreport_navToolbar_frame.location.href = "navToolbar.html";
+ }
+ }
+};
+
+var GlobalConfig = {
+ navHiliteColor: "#0000ff",
+ fileLinkHiliteColor: "#ffff99",
+ navToolbarBgcolor: "ivory",
+ offset: 10,
+ hiliteToken: false
+};
+var NavSideBarState = {
+ calLineHeight: 0,
+ overLink: false,
+ linkTarget: null,
+ lastLinkTarget: null,
+ linkTargetIdx: 0
+}
+function drawNavSideBar() {
+ var rectHeight = 1;
+ if (!top || !top.rtwreport_document_frame || !top.rtwreport_nav_frame) return;
+
+ if (!top.RTW_TraceArgs.instance) return;
+ var fileIdx = top.RTW_TraceArgs.instance.getFileIdx();
+ if (fileIdx === undefined) return;
+ var rows = top.RTW_TraceArgs.instance.getRows(fileIdx);
+ if (rows.length === 0) return; // no highlighted line
+
+ var codeTbl = top.rtwreport_document_frame.document.getElementById("codeTbl");
+ if (!codeTbl) return; // no code table
+
+ var nRows = codeTbl.rows.length + 1;
+ var canvas = top.rtwreport_nav_frame.document.getElementById("canvas");
+ canvas.width = top.rtwreport_nav_frame.innerWidth;
+ canvas.height = top.rtwreport_nav_frame.innerHeight-2;
+ NavSideBarState.calLineHeight = canvas.height/nRows;
+ if (canvas.getContext) {
+ var ctx = canvas.getContext("2d");
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
+ // fill background
+ ctx.fillStyle = GlobalConfig.navToolbarBgcolor;
+ ctx.fillRect(0, 0, canvas.width, canvas.height);
+ ctx.fillStyle = GlobalConfig.navHiliteColor;
+ for (var i=0;i" + anchorObj.text + ""+
+ size + " ";
+ }
+ propObj.appendChild(ulObj);
+
+ return propObj;
+}
+function getInspectLink(file, pathname, anchorObj) {
+ var model = top.reportModel;
+ var tokenId = anchorObj.id;
+ var navObj = document.createElement("div");
+ navObj.id = "token_usage_nav";
+ ulObj = document.createElement("ul");
+ ulObj.id = "token_nav_links";
+ ulObj.className="popup_attrib_list";
+ var srcFileName = RTW_TraceInfo.toSrcFileName(file);
+ var defObj;
+ if (top.CodeDefine.instance.def[srcFileName + ":" + anchorObj.text]) {
+ defObj = top.CodeDefine.instance.def[srcFileName + ":" + anchorObj.text];
+ } else if (top.CodeDefine.instance.def[anchorObj.text]) {
+ defObj = top.CodeDefine.instance.def[anchorObj.text];
+ }
+ var line = anchorObj.id.substring(0,anchorObj.id.indexOf("c"));
+ // link to model
+ if (top.TraceInfoFlag && top.TraceInfoFlag.instance &&
+ top.TraceInfoFlag.instance.traceFlag[srcFileName+":"+anchorObj.id]) {
+ return null;
+ }
+ // link to def/decl
+ if (defObj) {
+ var filename = defObj.file.split(/\//);
+ filename = filename[filename.length-1];
+ ulObj.innerHTML += "" + anchorObj.text + " defined at " + RTW_TraceInfo.toSrcFileName(filename) + " line " + defObj.line + " ";
+ }
+ navObj.appendChild(ulObj);
+ return navObj;
+}
+
+var LastHiliteTokenId = null;
+function rmHiliteClickedToken() {
+ if (LastHiliteTokenId) {
+ var o = top.rtwreport_document_frame.document.getElementById(LastHiliteTokenId);
+ if (o) {
+ o.className = o.className.replace("hiliteToken", "");
+ }
+ }
+}
+function hiliteClickedToken(elem) {
+ rmHiliteClickedToken();
+ LastHiliteTokenId = elem.id;
+ elem.className += " hiliteToken";
+}
+
+var initLine = null;
+function scrollToInitLine() {
+ if (initLine) {
+ var lineElem = top.rtwreport_document_frame.document.getElementById(initLine);
+ if (lineElem) {
+ lineElem.scrollIntoView();
+ }
+ }
+}
+
+function scrollToLineBasedOnHash(hashValue) {
+ // move to the current highlight line if the hash is not empty
+ if (hashValue === "") {
+ if (top.RTW_TraceInfo.instance && top.RTW_TraceInfo.instance.getCurrLine() !== null) {
+ top.rtwreport_document_frame.document.location.href=top.RTW_TraceInfo.instance.getCurrentHRef();
+ top.initLine = top.rtwreport_document_frame.document.location.hash.substr(1);
+ }
+ } else {
+ // scroll and hilite line
+ hashValue = hashValue.substr(1);
+ if (isNaN(hashValue)) {
+ // #fcn_name
+ var pattern = "+newPage";
+ if (hashValue.indexOf(pattern) != -1) {
+ hashValue = hashValue.replace(pattern, '');
+ var lineElem = top.rtwreport_document_frame.document.getElementById(hashValue);
+ initLine = hashValue; // save initLine in case the dom is updated later by anootation
+ if (lineElem) {
+ lineElem.scrollIntoView();
+ addTagToCurrentLine();
+ }
+
+ } else {
+ var token = null;
+ pattern = ["var_", "fcn_", "type_"];
+ for (var i =0; i < pattern.length; i++) {
+ if (hashValue.indexOf(pattern[i]) === 0) {
+ token = hashValue.substr(pattern[i].length);
+ break;
+ }
+ }
+ if (token !== null && top.CodeDefine && top.CodeDefine.instance) {
+ var addr;
+ var filename = location.pathname.split(/\//);
+ filename = filename[filename.length-1];
+ var srcFileName;
+ if (top.RTW_TraceInfo) {
+ srcFileName = top.RTW_TraceInfo.toSrcFileName(filename);
+ }
+ if (top.CodeDefine.instance.def[srcFileName + ":" + token]) {
+ addr = top.CodeDefine.instance.def[srcFileName + ":" + token];
+ } else {
+ addr = top.CodeDefine.instance.def[token];
+ }
+ if (addr) {
+ hilite_line(addr.line);
+ }
+ } else { // token id like #line"c"#col
+ if (hashValue.indexOf("c") !== -1) {
+ hilite_line(hashValue.substr(0, hashValue.indexOf("c")), hashValue);
+ }
+ }
+ }
+ } else { // #line
+ hilite_line(hashValue);
+ }
+ }
+ return false;
+ // hilite line number and scroll with an offset
+ function hilite_line(line, tokenId) {
+ if (isNaN(line)) return;
+ if (!tokenId) {
+ tokenId = line;
+ }
+ var elem = top.rtwreport_document_frame.document.getElementById(tokenId);
+ hiliteClickedToken(elem);
+ initLine = offset_line(line);
+ scrollToInitLine();
+ }
+}
+
+function tokenLinkOnClick(event) {
+ var alink = event.currentTarget;
+ if (alink.pathname === top.rtwreport_document_frame.location.pathname) {
+ event.preventDefault();
+ scrollToLineBasedOnHash(alink.hash);
+ }
+ return false;
+}
+function inspectToken(file, pathname, event) {
+ var height = "70px";
+ // show inspect data
+ if (top.rtwreport_inspect_frame) {
+ var windowObj = getInspectWindow();
+ var propObj = getInspectData(file, event.currentTarget);
+ var navObj = getInspectLink(file, pathname, event.currentTarget);
+ if (navObj === null) {
+ closeInspectWindow();
+ return false;
+ }
+ if (propObj === null) {
+ height = "50px";
+ } else {
+ windowObj.appendChild(propObj);
+ }
+ windowObj.appendChild(navObj);
+ var data = top.rtwreport_inspect_frame.document.getElementById("popup_window");
+ if (data) {
+ data.parentNode.replaceChild(windowObj.cloneNode(true), data);
+ }
+ }
+ var offsetHeight = 0;
+ var docHeight = 0;
+ if (typeof(top.rtwInspectFrame().document.body.offsetHeight) === "number") {
+ offsetHeight = top.rtwInspectFrame().document.body.offsetHeight;
+ }
+ if (typeof(top.rtwInspectFrame().document.height) === "number") {
+ docHeight = top.rtwInspectFrame().document.height;
+ }
+ if (offsetHeight > 0) {
+ height = ""+offsetHeight+"px";
+ } else if (docHeight > 0) {
+ height = ""+docHeight+"px";
+ }
+ setInspectWindow(height);
+ return false;
+}
+function setInspectWindow(height) {
+ // show inspect code frame
+ var midFrame = rtwMidFrame();
+ if (midFrame) {
+ var tmp = midFrame.rows.split(",");
+ tmp[getInspectFrameIdx()] = height;
+ midFrame.rows = tmp.join();
+ }
+}
+function closeInspectWindow() {
+ setInspectWindow(0);
+ return false;
+}
+
+// set the trace number in the navigation toolbar
+function setTraceNumber() {
+ if (RTW_TraceInfo.instance) {
+ var aFrame = rtwNavToolbarFrame();
+ if (aFrame) {
+ var node = aFrame.document.getElementById("rtwIdTraceNumber");
+ // calculate current line index over total highlighted lines
+ var currNum = RTW_TraceInfo.instance.getCurrLineIdx();
+ for (var idx=0;idx 0)
+ line = (line > GlobalConfig.offset ? line - GlobalConfig.offset : 1);
+ return line;
+}
+
+function load_js(frame, file) {
+ var h = frame.document.getElementsByTagName("head")[0];
+ var o = h.getElementsByTagName('script');
+ for (var i=0;iBlock-to-Code Highlighting Message
+
+
+
+Block-to-Code Highlighting Message
+ Code for '%s' cannot be traced because traceability information is not found.
'%s' is a virtual block. Code is not generated for virtual blocks.
'%s' is reduced during model compilation. Code is not generated for reduced blocks.
Code for '%s' is from reusable function and cannot be traced.
'%s' is outside of source subsystem and cannot be traced.
'%s' contains illegal character (single quote) that disables model-to-code navigation. Remove single quote from block name and rebuild model.
'%s' is a masked subsystem and cannot be traced at the subsystem block level. Traceability information is available for individual blocks under the mask.
Traceability information is not available for the selected blocks.
Block '%s' is eliminated by code generation optimization. Code is not generated for eliminated blocks.
Block '%s' is eliminated by Simulink block reduction. Code is not generated for eliminated blocks.
Stateflow object '%s' is eliminated by optimization. Code is not generated for eliminated Stateflow objects.
+