1 /* Copyright (c) MediaArea.net SARL. All Rights Reserved. 2 * 3 * Use of this source code is governed by a BSD-style license that can 4 * be found in the License.html file in the root of the source tree. 5 */ 6 7 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 8 // 9 // Information about AFD and Bar Data files 10 // 11 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 12 13 //--------------------------------------------------------------------------- 14 #ifndef MediaInfo_AfdBarDataH 15 #define MediaInfo_AfdBarDataH 16 //--------------------------------------------------------------------------- 17 18 //--------------------------------------------------------------------------- 19 #include "MediaInfo/File__Analyze.h" 20 //--------------------------------------------------------------------------- 21 22 namespace MediaInfoLib 23 { 24 25 //*************************************************************************** 26 // Class File_AfdBarData 27 //*************************************************************************** 28 29 class File_AfdBarData : public File__Analyze 30 { 31 public : 32 //In 33 enum format 34 { 35 Format_Unknown, 36 Format_A53_4_DTG1, //Active Format Description 37 Format_A53_4_GA94_06, //Bar Data 38 Format_S2016_3, //Active Format Description & Bar Data 39 }; 40 format Format; 41 int8u aspect_ratio_FromContainer; //May come from the containing parser 42 43 //Constructor/Destructor 44 File_AfdBarData(); 45 46 private : 47 //Streams management 48 void Streams_Fill(); 49 50 //Buffer - Global 51 void Read_Buffer_Continue(); 52 53 //Elements 54 void afd_data(); 55 void bar_data(); 56 57 //Sream 58 struct stream 59 { 60 int16u line_number_end_of_top_bar; 61 int16u line_number_start_of_bottom_bar; 62 int16u pixel_number_end_of_left_bar; 63 int16u pixel_number_start_of_right_bar; 64 int8u active_format; 65 int8u aspect_ratio; 66 streamstream67 stream() 68 { 69 line_number_end_of_top_bar=(int16u)-1; 70 line_number_start_of_bottom_bar=(int16u)-1; 71 pixel_number_end_of_left_bar=(int16u)-1; 72 pixel_number_start_of_right_bar=(int16u)-1; 73 active_format=(int8u)-1; 74 aspect_ratio=(int8u)-1; 75 } 76 }; 77 stream Stream; 78 79 //Temp 80 int16u line_number_end_of_top_bar; 81 int16u line_number_start_of_bottom_bar; 82 int16u pixel_number_end_of_left_bar; 83 int16u pixel_number_start_of_right_bar; 84 int8u active_format; 85 int8u aspect_ratio; 86 }; 87 88 } //NameSpace 89 90 #endif 91 92