24 #include "../utils/satellite-env-variables.h"
27 #include <ns3/double.h>
29 #include <ns3/object.h>
30 #include <ns3/singleton.h>
31 #include <ns3/string.h>
35 NS_LOG_COMPONENT_DEFINE(
"SatLinkResults");
44 NS_OBJECT_ENSURE_REGISTERED(SatLinkResults);
47 : m_isInitialized(false)
49 std::string dataPath = Singleton<SatEnvVariables>::Get()->GetDataPath();
50 m_inputPath = Singleton<SatEnvVariables>::Get()->LocateDirectory(dataPath +
"/linkresults/");
56 static TypeId tid = TypeId(
"ns3::SatLinkResults").SetParent<Object>();
63 NS_LOG_FUNCTION(
this);
82 static TypeId tid = TypeId(
"ns3::SatLinkResultsRtn").SetParent<
SatLinkResults>();
89 NS_LOG_FUNCTION(
this << waveformId << ebNoDb);
93 NS_FATAL_ERROR(
"Error retrieving link results, call Initialize first");
96 return m_table.at(waveformId)->GetBler(ebNoDb);
102 NS_LOG_FUNCTION(
this << waveformId << blerTarget);
106 NS_FATAL_ERROR(
"Error retrieving link results, call Initialize first");
109 return m_table.at(waveformId)->GetEsNoDb(blerTarget);
125 static TypeId tid = TypeId(
"ns3::SatLinkResultsDvbRcs2").SetParent<
SatLinkResultsRtn>();
132 NS_LOG_FUNCTION(
this);
135 for (uint32_t i = 2; i <= 22; ++i)
137 std::ostringstream ss;
139 std::string filePathName =
m_inputPath +
"rcs2_waveformat" + ss.str() +
".txt";
140 m_table.insert(std::make_pair(i, CreateObject<SatLookUpTable>(filePathName)));
157 static TypeId tid = TypeId(
"ns3::SatLinkResultsFSim").SetParent<
SatLinkResultsRtn>();
164 NS_LOG_FUNCTION(
this);
167 for (uint32_t i = 1; i <= 2; ++i)
169 std::ostringstream ss;
171 std::string filePathName =
m_inputPath +
"fsim_waveformat" + ss.str() +
".txt";
172 m_table.insert(std::make_pair(i, CreateObject<SatLookUpTable>(filePathName)));
177 CreateObject<SatMutualInformationTable>(
m_inputPath +
"mutualInformationTable.txt");
193 static TypeId tid = TypeId(
"ns3::SatLinkResultsLora").SetParent<
SatLinkResultsRtn>();
200 NS_LOG_FUNCTION(
this);
203 for (uint32_t i = 1; i <= 2; ++i)
205 std::ostringstream ss;
207 std::string filePathName =
m_inputPath +
"lora_waveformat" + ss.str() +
".txt";
208 m_table.insert(std::make_pair(i, CreateObject<SatLookUpTable>(filePathName)));
213 CreateObject<SatMutualInformationTable>(
m_inputPath +
"mutualInformationTable.txt");
225 m_shortFrameOffsetInDb(0.0)
233 TypeId(
"ns3::SatLinkResultsFwd")
235 .AddAttribute(
"EsNoOffsetForShortFrame",
236 "EsNo increase offset for short BB frame with a given BLER",
239 MakeDoubleChecker<double_t>());
248 NS_LOG_FUNCTION(
this << modcod << esNoDb);
252 NS_FATAL_ERROR(
"Error retrieving link results, call Initialize first");
265 return m_table.at(modcod)->GetBler(esNoDb);
271 double blerTarget)
const
273 NS_LOG_FUNCTION(
this << modcod << blerTarget);
277 NS_FATAL_ERROR(
"Error retrieving link results, call Initialize first");
281 double esno =
m_table.at(modcod)->GetEsNoDb(blerTarget);
309 static TypeId tid = TypeId(
"ns3::SatLinkResultsDvbS2").SetParent<
SatLinkResultsFwd>();
316 NS_LOG_FUNCTION(
this);
320 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_1_to_2.txt");
322 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_2_to_3.txt");
324 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_3_to_4.txt");
326 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_3_to_5.txt");
328 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_4_to_5.txt");
330 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_5_to_6.txt");
332 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_8_to_9.txt");
334 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_qpsk_9_to_10.txt");
338 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_8psk_2_to_3.txt");
340 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_8psk_3_to_4.txt");
342 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_8psk_3_to_5.txt");
344 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_8psk_5_to_6.txt");
346 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_8psk_8_to_9.txt");
348 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_8psk_9_to_10.txt");
352 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_16apsk_2_to_3.txt");
354 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_16apsk_3_to_4.txt");
356 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_16apsk_4_to_5.txt");
358 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_16apsk_5_to_6.txt");
360 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_16apsk_8_to_9.txt");
362 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_16apsk_9_to_10.txt");
366 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_32apsk_3_to_4.txt");
368 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_32apsk_4_to_5.txt");
370 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_32apsk_5_to_6.txt");
372 CreateObject<SatLookUpTable>(
m_inputPath +
"s2_32apsk_8_to_9.txt");
375 CreateObject<SatLookUpTable>(
m_inputPath +
"lora_waveformat2.txt");
392 static TypeId tid = TypeId(
"ns3::SatLinkResultsDvbS2X").SetParent<
SatLinkResultsFwd>();
399 NS_LOG_FUNCTION(
this);
403 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_5_short_pilots.txt");
405 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_2_short_pilots.txt");
407 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_14_to_45_short_nopilots.txt");
409 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_3_normal_pilots.txt");
411 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_4_short_pilots.txt");
413 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_9_to_20_normal_nopilots.txt");
415 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_4_to_15_short_nopilots.txt");
417 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_4_short_pilots.txt");
419 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_4_to_5_short_pilots.txt");
421 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_5_short_pilots.txt");
423 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_5_normal_pilots.txt");
425 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_2_normal_pilots.txt");
427 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_3_short_nopilots.txt");
429 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_11_to_20_normal_nopilots.txt");
431 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_5_normal_nopilots.txt");
433 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_3_normal_nopilots.txt");
435 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_5_to_6_short_nopilots.txt");
437 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_32_to_45_short_nopilots.txt");
439 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_9_to_10_normal_pilots.txt");
441 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_8_to_9_short_pilots.txt");
443 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_3_normal_pilots.txt");
445 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_5_to_6_normal_pilots.txt");
447 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_8_to_15_short_pilots.txt");
449 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_13_to_45_normal_nopilots.txt");
451 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_5_normal_nopilots.txt");
453 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_4_to_5_normal_nopilots.txt");
455 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_4_short_nopilots.txt");
457 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_3_short_nopilots.txt");
459 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_4_to_15_short_pilots.txt");
461 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_14_to_45_short_pilots.txt");
463 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_4_normal_nopilots.txt");
465 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_5_normal_pilots.txt");
467 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_2_short_nopilots.txt");
469 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_4_to_5_short_nopilots.txt");
471 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_7_to_15_short_nopilots.txt");
473 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_5_short_nopilots.txt");
475 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_3_short_pilots.txt");
477 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_11_to_45_short_nopilots.txt");
479 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_2_normal_nopilots.txt");
481 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_8_to_9_normal_nopilots.txt");
483 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_13_to_45_normal_pilots.txt");
485 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_5_to_6_short_pilots.txt");
487 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_4_normal_pilots.txt");
489 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_11_to_45_short_pilots.txt");
491 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_5_short_nopilots.txt");
493 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_4_normal_nopilots.txt");
495 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_4_short_nopilots.txt");
497 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_1_to_3_normal_nopilots.txt");
499 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_8_to_9_short_nopilots.txt");
501 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_7_to_15_short_pilots.txt");
503 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_9_to_10_normal_nopilots.txt");
505 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_11_to_20_normal_pilots.txt");
507 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_4_to_5_normal_pilots.txt");
509 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_32_to_45_short_pilots.txt");
511 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_8_to_15_short_nopilots.txt");
513 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_9_to_20_normal_pilots.txt");
515 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_2_to_3_short_pilots.txt");
517 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_8_to_9_normal_pilots.txt");
519 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_5_to_6_normal_nopilots.txt");
521 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_qpsk_3_to_4_normal_pilots.txt");
525 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_8_to_9_short_nopilots.txt");
527 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_2_to_3_short_nopilots.txt");
529 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_4_short_nopilots.txt");
531 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_4_normal_nopilots.txt");
533 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_13_to_18_normal_pilots.txt");
535 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_13_to_18_normal_nopilots.txt");
537 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_7_to_15_short_pilots.txt");
539 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_2_to_3_short_pilots.txt");
541 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_8_to_15_short_pilots.txt");
543 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_8_to_15_short_nopilots.txt");
545 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_2_to_3_normal_nopilots.txt");
547 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_32_to_45_short_nopilots.txt");
549 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_5_short_pilots.txt");
551 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_9_to_10_normal_nopilots.txt");
553 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_5_to_6_short_nopilots.txt");
555 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_25_to_36_normal_nopilots.txt");
557 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_4_short_pilots.txt");
559 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_26_to_45_short_pilots.txt");
561 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_23_to_36_normal_nopilots.txt");
563 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_23_to_36_normal_pilots.txt");
565 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_25_to_36_normal_pilots.txt");
567 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_5_normal_nopilots.txt");
569 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_2_to_3_normal_pilots.txt");
571 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_5_to_6_short_pilots.txt");
573 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_7_to_15_short_nopilots.txt");
575 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_26_to_45_short_nopilots.txt");
577 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_8_to_9_normal_pilots.txt");
579 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_5_short_nopilots.txt");
581 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_8_to_9_normal_nopilots.txt");
583 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_5_to_6_normal_nopilots.txt");
585 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_5_to_6_normal_pilots.txt");
587 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_32_to_45_short_pilots.txt");
589 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_9_to_10_normal_pilots.txt");
591 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_8_to_9_short_pilots.txt");
593 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_4_normal_pilots.txt");
595 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8psk_3_to_5_normal_pilots.txt");
599 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8apsk_26_to_45_l_normal_nopilots.txt");
601 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8apsk_26_to_45_l_normal_pilots.txt");
603 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8apsk_5_to_9_l_normal_pilots.txt");
605 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_8apsk_5_to_9_l_normal_nopilots.txt");
609 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_7_to_9_normal_pilots.txt");
611 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_5_to_6_normal_pilots.txt");
613 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_5_normal_nopilots.txt");
615 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_5_l_normal_pilots.txt");
617 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_9_short_nopilots.txt");
619 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_25_to_36_normal_nopilots.txt");
621 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_1_to_2_l_normal_pilots.txt");
623 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_5_normal_pilots.txt");
625 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_2_to_3_short_nopilots.txt");
627 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_13_to_18_normal_pilots.txt");
629 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_4_to_5_short_pilots.txt");
631 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_9_short_pilots.txt");
633 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_28_to_45_normal_nopilots.txt");
635 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_5_to_6_short_pilots.txt");
637 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_2_to_3_l_normal_pilots.txt");
639 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_4_to_5_normal_pilots.txt");
641 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_23_to_36_normal_pilots.txt");
643 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_5_to_9_l_normal_nopilots.txt");
645 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_4_short_nopilots.txt");
647 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_9_normal_pilots.txt");
649 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_15_short_pilots.txt");
651 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_26_to_45_normal_pilots.txt");
653 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_15_l_normal_nopilots.txt");
655 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_5_to_6_normal_nopilots.txt");
657 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_5_l_normal_nopilots.txt");
659 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_23_to_36_normal_nopilots.txt");
661 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_5_to_6_short_nopilots.txt");
663 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_28_to_45_normal_pilots.txt");
665 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_7_to_9_normal_nopilots.txt");
667 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_7_to_15_short_pilots.txt");
669 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_25_to_36_normal_pilots.txt");
671 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_5_to_9_l_normal_pilots.txt");
673 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_32_to_45_short_pilots.txt");
675 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_26_to_45_short_nopilots.txt");
677 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_1_to_2_l_normal_nopilots.txt");
679 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_13_to_18_normal_nopilots.txt");
681 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_2_to_3_normal_pilots.txt");
683 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_9_to_10_normal_nopilots.txt");
685 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_32_to_45_short_nopilots.txt");
687 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_2_to_3_short_pilots.txt");
689 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_26_to_45_short_pilots.txt");
691 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_4_normal_nopilots.txt");
693 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_15_short_nopilots.txt");
695 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_4_to_5_short_nopilots.txt");
697 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_2_to_3_l_normal_nopilots.txt");
699 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_15_l_normal_pilots.txt");
701 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_4_normal_pilots.txt");
703 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_77_to_90_normal_pilots.txt");
705 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_26_to_45_normal_nopilots.txt");
707 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_5_short_nopilots.txt");
709 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_77_to_90_normal_nopilots.txt");
711 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_7_to_15_short_nopilots.txt");
713 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_8_to_9_normal_nopilots.txt");
715 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_2_to_3_normal_nopilots.txt");
717 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_4_to_5_normal_nopilots.txt");
719 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_5_short_pilots.txt");
721 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_3_to_4_short_pilots.txt");
723 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_16apsk_9_to_10_normal_pilots.txt");
727 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_7_to_9_normal_pilots.txt");
729 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_5_to_6_short_pilots.txt");
731 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_8_to_9_normal_pilots.txt");
733 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_11_to_15_normal_nopilots.txt");
735 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_32_to_45_normal_nopilots.txt");
737 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_2_to_3_l_normal_nopilots.txt");
739 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_2_to_3_short_nopilots.txt");
741 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_8_to_9_short_nopilots.txt");
743 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_2_to_3_l_normal_pilots.txt");
745 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_5_to_6_short_nopilots.txt");
747 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_32_to_45_short_nopilots.txt");
749 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_3_to_4_normal_pilots.txt");
751 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_32_to_45_short_pilots.txt");
753 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_4_to_5_normal_pilots.txt");
755 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_5_to_6_normal_nopilots.txt");
757 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_8_to_9_short_pilots.txt");
759 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_11_to_15_normal_pilots.txt");
761 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_4_to_5_normal_nopilots.txt");
763 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_3_to_4_short_nopilots.txt");
765 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_7_to_9_normal_nopilots.txt");
767 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_5_to_6_normal_pilots.txt");
769 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_2_to_3_short_pilots.txt");
771 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_3_to_4_normal_nopilots.txt");
773 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_9_to_10_normal_pilots.txt");
775 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_3_to_4_short_pilots.txt");
777 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_32_to_45_normal_pilots.txt");
779 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_9_to_10_normal_nopilots.txt");
781 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_8_to_9_normal_nopilots.txt");
783 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_4_to_5_short_nopilots.txt");
785 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_32apsk_4_to_5_short_pilots.txt");
789 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_4_to_5_normal_nopilots.txt");
791 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_32_to_45_l_normal_pilots.txt");
793 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_5_to_6_normal_nopilots.txt");
795 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_4_to_5_normal_pilots.txt");
797 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_7_to_9_normal_pilots.txt");
799 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_5_to_6_normal_pilots.txt");
801 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_11_to_15_normal_nopilots.txt");
803 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_7_to_9_normal_nopilots.txt");
805 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_11_to_15_normal_pilots.txt");
807 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_64apsk_32_to_45_l_normal_nopilots.txt");
811 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_128apsk_7_to_9_normal_pilots.txt");
813 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_128apsk_7_to_9_normal_nopilots.txt");
815 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_128apsk_3_to_4_normal_pilots.txt");
817 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_128apsk_3_to_4_normal_nopilots.txt");
821 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_29_to_45_l_normal_nopilots.txt");
823 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_31_to_45_l_normal_nopilots.txt");
825 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_3_to_4_normal_pilots.txt");
827 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_11_to_15_l_normal_pilots.txt");
829 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_29_to_45_l_normal_pilots.txt");
831 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_31_to_45_l_normal_pilots.txt");
833 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_2_to_3_l_normal_pilots.txt");
835 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_11_to_15_l_normal_nopilots.txt");
837 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_32_to_45_normal_nopilots.txt");
839 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_32_to_45_normal_pilots.txt");
841 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_2_to_3_l_normal_nopilots.txt");
843 CreateObject<SatLookUpTable>(
m_inputPath +
"s2x_256apsk_3_to_4_normal_nopilots.txt");
SatBbFrameType_t
BB frame type used in DVB-S2 FWD link.
SatModcod_t
Modulation scheme and coding rate for DVB-S2.
@ SAT_MODCOD_S2X_16APSK_2_TO_3_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_9_TO_10_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_2_TO_3_NORMAL_PILOTS
@ SAT_MODCOD_S2X_256APSK_32_TO_45_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_5_TO_6_SHORT_PILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_128APSK_7_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_8_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_256APSK_11_TO_15_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_4_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_3_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_256APSK_3_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_3_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_4_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_32_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_13_TO_45_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_7_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_1_TO_2_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_32_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_5_TO_6_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_7_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_8_TO_9_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_23_TO_36_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_2_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_256APSK_11_TO_15_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_64APSK_32_TO_45_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_1_TO_2_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_5_TO_6_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_9_TO_10_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_8_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_25_TO_36_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_32_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_3_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_5_TO_9_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_64APSK_32_TO_45_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_128APSK_3_TO_4_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_8_TO_9_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_13_TO_18_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8APSK_5_TO_9_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_32_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_32APSK_32_TO_45_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8APSK_26_TO_45_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_2_TO_3_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_128APSK_3_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_4_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_15_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_5_TO_6_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_4_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_26_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_32APSK_9_TO_10_NORMAL_NOPILOTS
@ SAT_MODCOD_16APSK_3_TO_4
@ SAT_MODCOD_S2X_64APSK_11_TO_15_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_5_TO_6_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_8_TO_9_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_23_TO_36_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_4_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_4_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_64APSK_7_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_8_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_16APSK_2_TO_3
@ SAT_MODCOD_S2X_32APSK_2_TO_3_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_4_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_2_TO_3_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_5_TO_6_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_5_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_2_TO_3_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_8_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_28_TO_45_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_23_TO_36_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_25_TO_36_NORMAL_NOPILOTS
@ SAT_MODCOD_16APSK_8_TO_9
@ SAT_MODCOD_S2X_8PSK_3_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_3_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_14_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_5_TO_6_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_5_TO_6_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_32_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_5_TO_6_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_3_TO_4_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_4_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_5_TO_6_NORMAL_PILOTS
@ SAT_MODCOD_QPSK_9_TO_10
@ SAT_MODCOD_16APSK_5_TO_6
@ SAT_MODCOD_S2X_QPSK_11_TO_20_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_32_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_7_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_11_TO_20_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_4_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_256APSK_29_TO_45_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_64APSK_11_TO_15_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_8PSK_9_TO_10
@ SAT_MODCOD_S2X_16APSK_2_TO_3_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_5_TO_6_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_3_NORMAL_PILOTS
@ SAT_MODCOD_32APSK_5_TO_6
@ SAT_MODCOD_32APSK_3_TO_4
@ SAT_MODCOD_S2X_QPSK_3_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_32APSK_8_TO_9
@ SAT_MODCOD_S2X_16APSK_7_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_256APSK_31_TO_45_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_8_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_7_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_4_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_28_TO_45_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_3_TO_4_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_13_TO_45_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_64APSK_5_TO_6_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_5_TO_6_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_2_TO_3_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_25_TO_36_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_5_TO_6_SHORT_PILOTS
@ SAT_MODCOD_S2X_32APSK_11_TO_15_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_4_TO_5_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_5_TO_6_SHORT_PILOTS
@ SAT_MODCOD_S2X_32APSK_32_TO_45_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_4_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_4_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8APSK_5_TO_9_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_13_TO_18_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_8_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_5_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_5_TO_6_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_4_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_256APSK_31_TO_45_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_9_SHORT_PILOTS
@ SAT_MODCOD_S2X_256APSK_32_TO_45_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_5_TO_6_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_7_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_7_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_64APSK_5_TO_6_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_9_TO_10_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_13_TO_18_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_9_TO_20_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8APSK_26_TO_45_L_NORMAL_NOPILOTS
@ SAT_MODCOD_32APSK_4_TO_5
@ SAT_MODCOD_S2X_64APSK_7_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_4_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_9_TO_20_NORMAL_PILOTS
@ SAT_MODCOD_16APSK_9_TO_10
@ SAT_MODCOD_S2X_16APSK_3_TO_4_SHORT_PILOTS
@ SAT_MODCOD_S2X_256APSK_2_TO_3_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_26_TO_45_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_2_TO_3_SHORT_PILOTS
@ SAT_MODCOD_S2X_256APSK_29_TO_45_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_256APSK_2_TO_3_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_64APSK_4_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_4_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_5_TO_9_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_4_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_2_TO_3_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_13_TO_18_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_77_TO_90_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_4_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_9_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_9_TO_10_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_8_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_2_TO_3_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_32_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_3_SHORT_PILOTS
@ SAT_MODCOD_S2X_32APSK_7_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_32_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_4_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_4_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_25_TO_36_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_3_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_3_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_3_TO_4_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_7_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_8_TO_9_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_2_NORMAL_PILOTS
@ SAT_MODCOD_S2X_64APSK_4_TO_5_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_5_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_8_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_8_TO_9_NORMAL_PILOTS
@ SAT_MODCOD_16APSK_4_TO_5
@ SAT_MODCOD_S2X_8PSK_2_TO_3_NORMAL_PILOTS
@ SAT_MODCOD_S2X_8PSK_2_TO_3_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_2_TO_3_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_4_TO_15_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_2_TO_3_L_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_23_TO_36_NORMAL_PILOTS
@ SAT_MODCOD_S2X_16APSK_26_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_26_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_3_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_8_TO_9_SHORT_PILOTS
@ SAT_MODCOD_S2X_QPSK_14_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_4_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_26_TO_45_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_2_SHORT_PILOTS
@ SAT_MODCOD_S2X_32APSK_8_TO_9_SHORT_PILOTS
@ SAT_MODCOD_S2X_8PSK_26_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_8PSK_9_TO_10_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_8PSK_9_TO_10_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_8_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_3_TO_4_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_2_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_11_TO_45_SHORT_PILOTS
@ SAT_MODCOD_S2X_16APSK_8_TO_15_L_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_11_TO_15_NORMAL_PILOTS
@ SAT_MODCOD_S2X_32APSK_3_TO_4_SHORT_PILOTS
@ SAT_MODCOD_S2X_8PSK_7_TO_15_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_1_TO_4_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_128APSK_7_TO_9_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_QPSK_9_TO_10_NORMAL_PILOTS
@ SAT_MODCOD_S2X_QPSK_11_TO_45_SHORT_NOPILOTS
@ SAT_MODCOD_S2X_16APSK_77_TO_90_NORMAL_NOPILOTS
@ SAT_MODCOD_S2X_32APSK_4_TO_5_SHORT_PILOTS
@ SAT_MODCOD_S2X_256APSK_3_TO_4_NORMAL_PILOTS
Link results for DVB-RCS2.
virtual void DoInitialize()
Initialize by loading DVB-RCS2 look up tables.
static TypeId GetTypeId()
Get the type ID.
SatLinkResultsDvbRcs2()
Default constructor.
static TypeId GetTypeId()
Get the type ID.
SatLinkResultsDvbS2()
Default constructor.
void DoInitialize()
Initialize by loading DVB-S2 look up tables.
Link results for DVB-S2X.
SatLinkResultsDvbS2X()
Default constructor.
static TypeId GetTypeId()
Get the type ID.
void DoInitialize()
Initialize by loading DVB-S2 look up tables.
Ptr< SatMutualInformationTable > m_mutualInformationTable
Mutual information table.
static TypeId GetTypeId()
Get the type ID.
void DoInitialize()
Initialize by loading F-SIM look up tables.
SatLinkResultsFSim()
Default constructor.
Link results for forward link.
SatLinkResultsFwd()
Default constructor.
std::map< SatEnums::SatModcod_t, Ptr< SatLookUpTable > > m_table
Map of satellite link result look up tables.
double m_shortFrameOffsetInDb
static TypeId GetTypeId()
Get the type ID.
double GetEsNoDb(SatEnums::SatModcod_t modcod, SatEnums::SatBbFrameType_t frameType, double blerTarget) const
Get a Es/No requirement for a given BLER target from link results.
double GetBler(SatEnums::SatModcod_t modcod, SatEnums::SatBbFrameType_t frameType, double esNoDb) const
Get a BLER value from link results.
Abstract class for storing link results.
SatLinkResults()
Default constructor.
std::string m_inputPath
The base path where the text files containing link results data can be found.
bool m_isInitialized
Indicates if SatLinkResults::Initialize has been called.
static TypeId GetTypeId()
Get the type ID.
virtual void DoInitialize()=0
Initialize look up tables.
void Initialize()
Initialize look up tables.
Ptr< SatMutualInformationTable > m_mutualInformationTable
Mutual information table.
void DoInitialize()
Initialize by loading F-SIM look up tables.
SatLinkResultsLora()
Default constructor.
static TypeId GetTypeId()
Get the type ID.
Link results for DVB-RCS2.
double GetBler(uint32_t waveformId, double ebNoDb) const
Get a BLER value from link results.
double GetEbNoDb(uint32_t waveformId, double blerTarget) const
Get a Eb/No requirement for a given BLER target from link results.
static TypeId GetTypeId()
Get the type ID.
SatLinkResultsRtn()
Default constructor.
std::map< uint32_t, Ptr< SatLookUpTable > > m_table
Map of satellite link result look up tables.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.