diff --git a/youtube/video_series/bit_blast/cxx_enums/compiler explorer.png b/youtube/video_series/bit_blast/cxx_enums/compiler explorer.png new file mode 100644 index 0000000..7ed7261 Binary files /dev/null and b/youtube/video_series/bit_blast/cxx_enums/compiler explorer.png differ diff --git a/youtube/video_series/bit_blast/cxx_enums/default_case_2.png b/youtube/video_series/bit_blast/cxx_enums/default_case_2.png index d3bb162..f1ec441 100644 Binary files a/youtube/video_series/bit_blast/cxx_enums/default_case_2.png and b/youtube/video_series/bit_blast/cxx_enums/default_case_2.png differ diff --git a/youtube/video_series/bit_blast/cxx_enums/default_case_3.png b/youtube/video_series/bit_blast/cxx_enums/default_case_3.png index 9bee122..9106ffb 100644 Binary files a/youtube/video_series/bit_blast/cxx_enums/default_case_3.png and b/youtube/video_series/bit_blast/cxx_enums/default_case_3.png differ diff --git a/youtube/video_series/bit_blast/cxx_enums/default_case_4.png b/youtube/video_series/bit_blast/cxx_enums/default_case_4.png index 95595a0..337d050 100644 Binary files a/youtube/video_series/bit_blast/cxx_enums/default_case_4.png and b/youtube/video_series/bit_blast/cxx_enums/default_case_4.png differ diff --git a/youtube/video_series/bit_blast/cxx_enums/description.md b/youtube/video_series/bit_blast/cxx_enums/description.md new file mode 100644 index 0000000..51d0962 --- /dev/null +++ b/youtube/video_series/bit_blast/cxx_enums/description.md @@ -0,0 +1,63 @@ +< INSERT VIDEO DESCRIPTION > + +*//=======================[ Code Snippets ]=======================//* +_Unscoped Declaration_: https://godbolt.org/z/9MosoovPP +_Scoped Declaration_: https://godbolt.org/z/oT5TbP6vx +_Anonymous Declaration_: https://godbolt.org/z/s97n5jETs +_Scoped vs Unscoped_: https://godbolt.org/z/h65cjMEhb +_Explicit Underlying Type_: https://godbolt.org/z/ehY7Gns6E +_Default Case_: https://godbolt.org/z/a6KWE8b4c +_Utilize Zero_: https://godbolt.org/z/fvE6z9jMf +_Utilize Counting_: https://godbolt.org/z/5EEhYrcr9 +_Using Enum Syntax_: https://godbolt.org/z/shaE6Yc64 +_Bitfield Operators_: https://godbolt.org/z/acMW45K9o +_Standard Utilities_: https://godbolt.org/z/9xKcxEsP5 + +*//============================[ Sources ]============================//* +_cppreference_: https://en.cppreference.com/w/cpp/language/enum.html + +Proposal Papers: +_N2347 — Strongly Typed Enums_: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2347.pdf +_N3815 — Enumerator List Property Queries_:https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3815.html +_N4196 — Attributes for namespaces and enumerators_: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4196.html +_P0138R2 — Construction Rules for enum class Values_: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0138r2.pdf +_P1682R3 — std::to_underlying for enumerations_: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1682r3.html +_P1099R5 — Using Enum_: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1099r2.html + +*//========================[ Forge & Mirrors ]========================//* +_Forge_: https://forge.light7734.com/light7734 | https://git.light7734.com/light7734 +_Github Mirrors: https://github.com/light7734 +_Gitlab Mirrors: https://gitlab.com/light7734 +_Codeberg Mirrors: https://codeberg.org/light7734 + +*//============================[ Socials ]============================//* +**Matrix Community**: https://matrix.to/#/#hELL:matrix.org +**Discord Community**: https://discord.gg/N3AJJG2tGF +**Matrix**: @light7734:matrix.org +**Discord**: @light7734 +**Mail**: mail@light7734.com +**YouTube**: https://www.youtube.com/@light.7734 +**XTwitter**: https://x.com/light7734 +**BlueSky**: https://bsky.app/profile/light7734.bsky.social +**Reddit** (currently suspended...): https://www.reddit.com/user/Light7734/ +**Steam** (don't judge me): https://steamcommunity.com/id/light7734/ +**Itch.io**: https://light7734.itch.io/ + +*//========================[ Software I Use ]========================//* +_OS_: Arch Linux x86-64 +_Shell_: Zsh +_DE/WM_: Gnome/XMonad +_Terminal_: Kitty +_Colorscheme_: Gruvbox +_Font_: JetbrainsMono Nerd Font + +_Code Editor_: Neovim +_Image Editor_: GIMP +_Video Editor_: Kdenlive + +_3D Art_: Blender +_Pixel Art_: Aseprite +_Digial Art_: Krita +_Vector Art_: Inkscape + +_DAW_: FL Studio 24 (on Windows, with support of flchan ofc) diff --git a/youtube/video_series/bit_blast/cxx_enums/project.kdenlive b/youtube/video_series/bit_blast/cxx_enums/project.kdenlive index 8ec0653..b521588 100644 --- a/youtube/video_series/bit_blast/cxx_enums/project.kdenlive +++ b/youtube/video_series/bit_blast/cxx_enums/project.kdenlive @@ -66,7 +66,7 @@ 00:00:05:00 was here -1 - 9 + 7 {0fc6307f-dc1f-4133-9e1d-5843cdee54e4} 2 265829 @@ -75,7 +75,865 @@ 1 backdrop - + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Traditional Unscoped Enum + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="264" y="668"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="100" box-width="2027.31" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="100" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Traditional Unscoped Enum</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 8 + 2 + d90a77c4289fcff607248099a4c44bba + 0 + 256 + [ + { + "in": 0, + "name": "Zone 1", + "out": 204 + } +] + + {ed8dd686-e201-422e-a8b2-23aba3acb5a1} + {08569a2b-3cbf-4c7f-a048-c971b1981091} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Specify the ... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="238" y="662"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="112" box-width="2079.25" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="112" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Specify Underlying Type</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 10 + 2 + 968f6e6d79a2136cf5951d58537d837c + 0 + 256 + {7dd8e342-adf6-46fb-8f78-617cc4f26990} + {fde6d0b4-602c-4e9b-9b88-178e234ac60a} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Avoid the De... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="235" y="647"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="141" box-width="2085.69" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="141" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Avoid Default Case</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 11 + 2 + c49c69dfa277a7b35ee6d4717e6a2276 + 0 + 256 + {4cab6d9b-3a41-4e56-8658-45dbb0a1a26b} + {d479436b-68a3-4d80-8c38-874ddb45af0a} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Utilize Coun... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="262" y="635"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="165" box-width="2032.41" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="165" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Utilize Counting</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 12 + 2 + 42ba4b3c6c8f8d35a587d57e1fd4d6b5 + 0 + 256 + {a9b82118-c87f-4b1b-95b8-a1d7a763da96} + {f9597a47-13c5-478b-b997-6d8a7eedb907} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Bitfield? Ov... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="223" y="674"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="88" box-width="2110.67" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="88" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Bitfield? Overload Bitwise OPs</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 13 + 2 + 0a683ffba883e9458659db06774a04a8 + 0 + 256 + {35eb8e38-40d0-4d0d-8d6c-ae8361231426} + {6b173af3-2df0-45da-bb39-d10ce5225a54} + 2560 + 1440 + + + 00:00:05.000 + pause + bitwise_operators.png + 25 + 1 + 1 + 1 + 2 + 1177 + 1164 + qimage + 00:00:05:00 + was here + 15 + 14 + {0b4e9362-0c55-47a2-aa57-a6b34feab803} + 2 + 115299 + 77f15eca6ff6facfa9b325426f99200f + 0 + 1 + + + 00:00:05.000 + pause + counting_enum.png + 25 + 1 + 1 + 1 + 2 + 691 + 500 + qimage + 00:00:05:00 + was here + 15 + 16 + {9b1aeab7-a8fa-44fd-80f4-5bd530a261cc} + 2 + 22157 + f6cdd3fc8d858fb1d0352766e089ef4e + 1 + 0 + + + 00:00:05.000 + pause + counting_enum_arr.png + 25 + 1 + 1 + 1 + 2 + 992 + 537 + qimage + 00:00:05:00 + was here + 15 + 17 + {a24f831c-cf30-4353-98fa-84fa7d11b3ad} + 2 + 32575 + 4dd1fd72d818f71541138c48c3c940b9 + 1 + 0 + + + 00:00:05.000 + pause + default_case_1.png + 25 + 1 + 1 + 1 + 2 + 676 + 945 + qimage + 00:00:05:00 + was here + 15 + 18 + {16838c6c-df33-42ff-b0e5-2f6a7688d43d} + 2 + 53052 + b176927e191de664403c6215420942b0 + 1 + 0 + + + 00:00:05.000 + pause + explicit_vs_implicit_a.png + 25 + 1 + 1 + 1 + 2 + 760 + 571 + qimage + 00:00:05:00 + was here + 15 + 22 + {583ad5d7-364f-4fad-ac92-e284f6ad1c42} + 2 + 38513 + c63244ce987a3cb7c4037a9912218a0c + 1 + 0 + + + 00:00:05.000 + pause + explicit_vs_implicit_b.png + 25 + 1 + 1 + 1 + 2 + 2463 + 571 + qimage + 00:00:05:00 + was here + 15 + 23 + {979f2e02-df0b-468b-8deb-b71742ebb712} + 2 + 58970 + 2edc93fae75f50153c9fb2a88f75710c + 1 + 128 + + + 00:00:05.000 + pause + scoped_enum_since_cpp11.png + 25 + 1 + 1 + 1 + 2 + 1472 + 708 + qimage + 00:00:05:00 + was here + 15 + 24 + {fb0178ed-4ff1-4100-acf4-f097689bc078} + 2 + 174503 + 57dfe77a2f90264bb4cd39ecf61aa02e + 1 + 87 + + + 00:00:05.000 + pause + specify_underlying_type.png + 25 + 1 + 1 + 1 + 2 + 2526 + 347 + qimage + 00:00:05:00 + was here + 15 + 25 + {31703df8-e68f-442b-9e21-792c2f44975f} + 2 + 29523 + 5243f0e5df4f3cf84d52d7e89f2cfb5c + 1 + 0 + + + 262 + pause + std_utils.png + 25 + 1 + 1 + 1 + 2 + 1319 + 963 + qimage + 00:00:05:00 + was here + 15 + 26 + {eacb50d8-8c67-47e1-b304-52ce9ac82811} + 2 + 127712 + e1d698e7f8293b68932a9a67c9d47b14 + 1 + + + 00:00:05.000 + pause + the_zen_of_python.png + 25 + 1 + 1 + 1 + 2 + 1228 + 839 + qimage + 00:00:05:00 + was here + 15 + 27 + {bb46c5e4-dd21-4ab4-a3ac-29121822385f} + 2 + 173841 + fe953158a00f69c6f231dcfd03e62d1d + 1 + 0 + + + 00:00:05.000 + pause + vk_result.png + 25 + 1 + 1 + 1 + 2 + 804 + 1039 + qimage + 00:00:05:00 + was here + 15 + 28 + {ebf58c6f-3559-457d-a3e3-05f5d4713947} + 2 + 143255 + 47f9e893c1526e650d4ffea30897be25 + + + 00:00:05.000 + pause + way_anon.png + 25 + 1 + 1 + 1 + 2 + 1255 + 834 + qimage + 00:00:05:00 + was here + 15 + 29 + {fe2a730d-1ae6-4f22-9bd3-c9edc0a4bd89} + 2 + 64068 + 428ea3054e6de67cc056ff24b5de271a + 1 + 25 + + + 00:00:05.000 + pause + way_modern.png + 25 + 1 + 1 + 1 + 2 + 1255 + 914 + qimage + 00:00:05:00 + was here + 15 + 30 + {b5cb2830-bfcc-4b3d-a6b1-9407c3267ae3} + 2 + 84679 + 70e0ad6590811ef916388433f1e257d4 + 1 + 0 + + + 249 + pause + way_traditional.png + 25 + 1 + 1 + 1 + 2 + 1255 + 710 + qimage + 00:00:05:00 + was here + 15 + 31 + {a35e2648-5aa8-43b3-8f8e-a05aa1c469ea} + 2 + 54162 + 1fe6fa01767f289a9250838588034f09 + 1 + 0 + + + 00:00:05.000 + pause + zero.png + 25 + 1 + 1 + 1 + 2 + 486 + 738 + qimage + 00:00:05:00 + was here + 15 + 32 + {21641cec-2b76-4eca-b00b-5c6253f72258} + 2 + 36130 + 02f278e5b040326fd2052cdf7d17d27a + 1 + 0 + + + 00:00:05.000 + pause + zen_of_python.png + 25 + 1 + 1 + 1 + 2 + 1239 + 837 + qimage + 00:00:05:00 + was here + 15 + 33 + {e23a613e-f858-4a0f-8eec-7ac5fb7ae182} + 2 + 179127 + c255894954b3dc3ad0bf342320e8fcb8 + 55 + 1 + + + 8979 + pause + #ff282828 + 1 + color + Color Clip + 00:00:05:00 + was here + 1 + -1 + 34 + {bbb3ce25-3b28-4057-b01c-ffda1a1d68b9} + rgb + 2 + 0 + bfc64056ed1861d77a89c0bf05d179ae + + + 00:00:05.000 + pause + bjarne_long.jpg + 25 + 1 + 1 + 1 + 1 + 1060 + 481 + qimage + 00:00:05:00 + was here + 36 + 35 + {bdc1bc76-7b8f-49b8-9363-aac0162fe180} + 2 + 77597 + 1b6a1d10de46f4ce0b63d01e652aae7f + 0 + 1 + + + 396 + pause + bjarne_normal.jpg + 25 + 1 + 1 + 1 + 1 + 900 + 413 + qimage + 00:00:05:00 + was here + 36 + 37 + {3e406fe2-ad8d-48da-a4d5-e1f64327bed0} + 2 + 71300 + a88bc891491760858b03c8eeec715cf0 + 1 + 34 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Declarations + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="379" y="624"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="187" box-width="1797" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="187" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Declarations</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 38 + 2 + d7dc004197a9685fc837ae4b848d4dca + 0 + 256 + {e5a7d181-119f-4776-a7d3-6e87f859a493} + {0f148231-869c-407a-bc4e-901551594abb} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Prefer Scope... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="289" y="656"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="123" box-width="1978.98" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="123" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Prefer Scoped Enums</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 39 + 2 + 91fd7889951a2d367f043e1380e220b6 + 0 + 256 + {5ff058ca-e27a-49e0-a973-e7e082227cf5} + {00293c8b-02b3-4d30-b567-2fc5a1f70433} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Modern Scope... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="427" y="662"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="111" box-width="1701.56" font="04b" font-color="226,26,65,255" font-italic="0" font-pixel-size="111" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Modern Scoped Enum</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 40 + 2 + e5b388c58d81d8f7500688c7b51e2522 + 0 + 256 + [ + { + "in": 0, + "name": "Zone 1", + "out": 204 + } +] + + {9628d72f-c325-4669-a116-9a0cb5d374fa} + {64c31534-edf6-4888-8995-7b26df146828} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Anonymous En... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="563" y="658"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="120" box-width="1429.75" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="120" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Anonymous Enum</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 42 + 2 + 55e71876aa250e525d9ed7dfe70f63ec + 0 + 256 + [ + { + "in": 0, + "name": "Zone 1", + "out": 204 + } +] + + {7792d6f2-f9ff-4785-99a7-9c9f14429e1e} + {6c51ed7f-b16b-4247-8d81-d6b7b5f20856} + 2560 + 1440 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + The Right Wa... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="574" y="658"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="120" box-width="1408.59" font="04b" font-color="226,26,65,255" font-italic="0" font-pixel-size="120" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">The Right Way?</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 44 + 2 + 1140616be82a2639f717f5f0ad917fbe + 0 + 256 + [ + { + "in": 0, + "name": "Zone 1", + "out": 204 + } +] + + {a3fb2204-24c4-4665-a343-29e289521cd7} + {022bcfe0-2157-4334-8987-661a8534cdc9} + 2560 + 1440 + + + 00:00:05.000 + pause + linus_fuck.png + 25 + 1 + 1 + 1 + 2 + 639 + 349 + qimage + 00:00:05:00 + was here + 36 + 46 + {ca9579d1-97c5-4602-b7fa-be4d0c9e8330} + 2 + 116504 + 4efef396fb424afb32cc070d8c1f54ee + 1 + 0 + + + 579 + pause + + 1 + 1 + 1 + kdenlivetitle + 00:00:10.000 + Tips 'n' Tri... + <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> + <item type="QGraphicsTextItem" z-index="0"> + <position x="320" y="635"> + <transform>1,0,0,0,1,0,0,0,1</transform> + </position> + <content alignment="4" box-height="165" box-width="1915.94" font="04b" font-color="226,26,65,255" font-italic="0" font-pixel-size="165" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Tips 'n' Tricks!</content> + </item> + <startviewport rect="0,0,2560,1440"/> + <endviewport rect="0,0,2560,1440"/> + <background color="246,245,244,0"/> +</kdenlivetitle> + + was here + 5 + 47 + 2 + 18abd9ef784e2524d482ff59c442712e + 0 + 256 + {62bfaabd-0970-44a4-9b44-e4abc1aa6959} + {b2d31430-2168-42ac-b22f-8e0dd2bcd398} + 2560 + 1440 + + 2147483647 continue black @@ -157,201 +1015,58 @@ 1 - - 5514 - pause - #ff282828 - 1 - color - Color Clip - 00:00:05:00 - was here - 1 - -1 - 35 - {bbb3ce25-3b28-4057-b01c-ffda1a1d68b9} - rgb - 2 - 0 - - - 35 + + + 34 + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.400=0 + 0 + - + 72 1 + 0 + Backdrop + + - + 00:00:05.000 pause - zen_of_python.png + using_enum.png 25 1 1 1 2 - 1239 - 837 + 725 + 1118 qimage 00:00:05:00 was here 15 - 34 - {e23a613e-f858-4a0f-8eec-7ac5fb7ae182} + 48 + {4da7dbb6-05e0-4e72-aacb-c16a9acf2375} 2 - 179127 - c255894954b3dc3ad0bf342320e8fcb8 - 55 - 1 - - - 249 - pause - way_traditional.png - 25 - 1 - 1 - 1 - 2 - 1255 - 710 - qimage - 00:00:05:00 - was here - 15 - 32 - {a35e2648-5aa8-43b3-8f8e-a05aa1c469ea} - 2 - 54162 - 1fe6fa01767f289a9250838588034f09 - 1 - 0 - - - 00:00:05.000 - pause - way_modern.png - 25 - 1 - 1 - 1 - 2 - 1255 - 914 - qimage - 00:00:05:00 - was here - 15 - 31 - {b5cb2830-bfcc-4b3d-a6b1-9407c3267ae3} - 2 - 84679 - 70e0ad6590811ef916388433f1e257d4 - 1 - 0 - - - 00:00:05.000 - pause - way_anon.png - 25 - 1 - 1 - 1 - 2 - 1255 - 834 - qimage - 00:00:05:00 - was here - 15 - 30 - {fe2a730d-1ae6-4f22-9bd3-c9edc0a4bd89} - 2 - 64068 - 428ea3054e6de67cc056ff24b5de271a - 1 - 25 - - - 00:00:05.000 - pause - explicit_vs_implicit_a.png - 25 - 1 - 1 - 1 - 2 - 760 - 571 - qimage - 00:00:05:00 - was here - 15 - 23 - {583ad5d7-364f-4fad-ac92-e284f6ad1c42} - 2 - 38513 - c63244ce987a3cb7c4037a9912218a0c - 1 - 0 - - - 00:00:05.000 - pause - explicit_vs_implicit_b.png - 25 - 1 - 1 - 1 - 2 - 2463 - 571 - qimage - 00:00:05:00 - was here - 15 - 24 - {979f2e02-df0b-468b-8deb-b71742ebb712} - 2 - 58970 - 2edc93fae75f50153c9fb2a88f75710c - 1 - 128 - - - 00:00:05.000 - pause - long_bjarne.jpg - 25 - 1 - 1 - 1 - 1 - 1060 - 481 - qimage - 00:00:05:00 - was here - 36 - 37 - {bdc1bc76-7b8f-49b8-9363-aac0162fe180} - 2 - 77597 - 1b6a1d10de46f4ce0b63d01e652aae7f - 0 + 86294 + c88bedba1f2b71610649a9b00b5e9e7c 1 + 23 - 34 - -1 - + 33 + 1 1 brightness @@ -359,7 +1074,7 @@ 00:00:00.000=0;00:00:00.333=1 0 - + 1 1 brightness @@ -368,19 +1083,49 @@ 0 - - 9 - + + 37 + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=30;00:00:04.000=0 + 00:00:00.000=30;00:00:04.000=0 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 1 + + 1 qtblend qtblend 0 0 - 00:00:00.000=0 0 5120 2880 1.000000;00:00:13.067=-332 -332 5120 2880 1.000000 - 00:00:00.000=0;00:00:13.067=15 + 00:00:00.000=-61 -169 3145 1790 1.000000 + 00:00:00.000=0 + 1 + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:10.167=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:10.167=15 0 - + avfilter.gblur avfilter.gblur 1 @@ -389,7 +1134,7 @@ 00:00:00.000=15 0 - + 1 1 brightness @@ -397,17 +1142,6 @@ 00:00:00.000=1;00:00:00.367=0 0 - - 1 - 1 - brightness - fade_from_black - 00:00:00.000=0;00:00:00.467=1 - - - - - 32 1 1 @@ -416,7 +1150,18 @@ 00:00:00.000=0;00:00:00.333=1 0 - + + + 31 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + 1 1 brightness @@ -425,50 +1170,35 @@ 0 - - - 31 - - 1 - 1 - brightness - fade_from_fast_fade_in - 0=0;-1=1 + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 0 - - - 30 - - 1 - 1 - brightness - fade_from_fast_fade_in - 0=0;-1=1 - - - - - 23 - - 1 - 1 - brightness - fade_from_black - 00:00:00.000=0;00:00:00.133=1 + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 0 - + 1 1 brightness fade_to_black - 00:00:00.000=1;00:00:01.000=0 + 00:00:00.000=1;00:00:00.367=0 0 - - - 24 1 1 @@ -478,14 +1208,13 @@ 0 - - - 37 + + 30 1 1 brightness - fade_from_black + fade_from_fast_fade_in 00:00:00.000=0;00:00:00.333=1 0 @@ -498,9 +1227,547 @@ 0 + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.367=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 29 + 1 + + 1 + 1 + brightness + fade_from_fast_fade_in + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-208 -10 2560 1440 1.000000 + 00:00:00.000=0 + 0 + + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.367=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 35 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.233=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-350 -197 3260 1834 1.000000 + 00:00:00.000=0 + 0 + + + + 46 + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=100 + 00:00:00.000=100 + 1 + + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-112 -63 2783 1566 1.000000 + 00:00:00.000=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.467=0 + 0 + + + + 24 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.667=0 + + + + 29 + + 1 + 1 + brightness + fade_from_fast_fade_in + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 30 + + 1 + 1 + brightness + fade_from_fast_fade_in + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:06.867=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:06.867=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.633=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 22 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.133=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + + 23 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.633=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 25 + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.633=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + + 48 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-820 0 2560 1440 1.000000 + 00:00:00.000=0 + 0 + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.633=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 32 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-824 0 2560 1440 1.000000 + 00:00:00.000=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.633=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + + 17 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + + + 7 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 + 00:00:00.000=0;00:00:04.967=15 + 0 + + + avfilter.gblur + avfilter.gblur + 1 + 7 + 00:00:00.000=15 + 00:00:00.000=15 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.633=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + - + 72 1 0 @@ -509,352 +1776,102 @@ - - 396 + + 00:00:05.000 pause - bjarne_normal.jpg + default_case_2.png 25 1 1 1 - 1 - 900 - 413 + 2 + 1470 + 756 + qimage + 00:00:05.000 + was here + 15 + 19 + {2df08370-b35c-40df-a671-f947a75f8c6f} + 2 + 63404 + b71c6bbee6719c676dd37945b6ebf2bd + 1 + 0 + + + 00:00:05.000 + pause + default_case_3.png + 25 + 1 + 1 + 1 + 2 + 1470 + 642 + qimage + 00:00:05.000 + was here + 15 + 20 + {e72d59f2-fe25-406f-b8c0-abe8a242532e} + 2 + 55909 + 61507bf5b0f8c372ed279bd04514a8f8 + 1 + 0 + + + 00:00:05.000 + pause + default_case_4.png + 25 + 1 + 1 + 1 + 2 + 1057 + 895 + qimage + 00:00:05.000 + was here + 15 + 21 + {d07e0c8c-7161-4c11-b63b-638c0429c399} + 2 + 70914 + 98dc984d016d517c6339356e9669265d + 1 + 0 + + + 00:00:05.000 + pause + bitwise_operators.png + 25 + 1 + 1 + 1 + 2 + 1177 + 1164 qimage 00:00:05:00 was here - 36 - 38 - {3e406fe2-ad8d-48da-a4d5-e1f64327bed0} + -1 + 50 + {74211223-9701-44d2-938f-6877a6d74edd} 2 - 71300 - a88bc891491760858b03c8eeec715cf0 + 115299 + 77f15eca6ff6facfa9b325426f99200f 1 - - + + 38 - 3 - - avfilter.gblur - avfilter.gblur - 1 - 7 - 00:00:00.000=15;00:00:01.000=5 - 00:00:00.000=15;00:00:01.000=5 - 0 - - - 1 - 1 - brightness - fade_to_black - 00:00:00.000=1;00:00:01.000=0 - 1 - - - 1 - 1 - brightness - fade_from_black - 00:00:00.000=0;00:00:00.767=1 - 0 - - - 1 - qtblend - qtblend - 0 - 0 - 00:00:00.000=-61 -169 3134 1762 1.000000 - 00:00:00.000=0 - 0 - - - - - 9 - - 1 - qtblend - qtblend - 0 - 0 - 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 - 00:00:00.000=0;00:00:04.967=15 - 0 - - - avfilter.gblur - avfilter.gblur - 1 - 7 - 00:00:00.000=15 - 00:00:00.000=15 - 0 - - - 1 - 1 - brightness - fade_to_black - 00:00:00.000=1;00:00:00.367=0 - 0 - - - - - 9 - - 1 - qtblend - qtblend - 0 - 0 - 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 - 00:00:00.000=0;00:00:04.967=15 - 0 - - - avfilter.gblur - avfilter.gblur - 1 - 7 - 00:00:00.000=15 - 00:00:00.000=15 - 0 - - - - - 9 - - 1 - qtblend - qtblend - 0 - 0 - 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 - 00:00:00.000=0;00:00:04.967=15 - 0 - - - avfilter.gblur - avfilter.gblur - 1 - 7 - 00:00:00.000=15 - 00:00:00.000=15 - 0 - - - - - 9 - - 1 - qtblend - qtblend - 0 - 0 - 00:00:00.000=0 0 5120 2880 1.000000;00:00:04.967=-332 -332 5120 2880 1.000000 - 00:00:00.000=0;00:00:04.967=15 - 0 - - - avfilter.gblur - avfilter.gblur - 1 - 7 - 00:00:00.000=15 - 00:00:00.000=15 - 0 - - - - - 9 - - 1 - qtblend - qtblend - 0 - 0 - 00:00:00.000=0 0 5120 2880 1.000000;00:00:05.033=-332 -332 5120 2880 1.000000 - 00:00:00.000=0;00:00:05.033=15 - 0 - - - avfilter.gblur - avfilter.gblur - 1 - 7 - 00:00:00.000=15 - 00:00:00.000=15 - 0 - - - - - - 72 - 1 - 0 - - - - - - - 579 - pause - - 1 - 1 - 1 - kdenlivetitle - 00:00:10.000 - Prefer Scope... - <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> - <item type="QGraphicsTextItem" z-index="0"> - <position x="262.578" y="655"> - <transform>1,0,0,0,1,0,0,0,1</transform> - </position> - <content alignment="4" box-height="126" box-width="2027.16" font="04b" font-color="226,26,65,255" font-italic="0" font-pixel-size="126" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Prefer Scoped Enums</content> - </item> - <startviewport rect="0,0,2560,1440"/> - <endviewport rect="0,0,2560,1440"/> - <background color="246,245,244,0"/> -</kdenlivetitle> - - was here - 5 - 10 - 2 - d90a77c4289fcff607248099a4c44bba - 0 - 256 - [ - { - "in": 0, - "name": "Zone 1", - "out": 204 - } -] - - {ed8dd686-e201-422e-a8b2-23aba3acb5a1} - {08569a2b-3cbf-4c7f-a048-c971b1981091} - 2560 - 1440 - - - 579 - pause - - 1 - 1 - 1 - kdenlivetitle - 00:00:10.000 - Specify the ... - <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> - <item type="QGraphicsTextItem" z-index="0"> - <position x="238" y="662"> - <transform>1,0,0,0,1,0,0,0,1</transform> - </position> - <content alignment="4" box-height="112" box-width="2079.25" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="112" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Specify Underlying Type</content> - </item> - <startviewport rect="0,0,2560,1440"/> - <endviewport rect="0,0,2560,1440"/> - <background color="246,245,244,0"/> -</kdenlivetitle> - - was here - 5 - 11 - 2 - 968f6e6d79a2136cf5951d58537d837c - 0 - 256 - {7dd8e342-adf6-46fb-8f78-617cc4f26990} - {fde6d0b4-602c-4e9b-9b88-178e234ac60a} - 2560 - 1440 - - - 579 - pause - - 1 - 1 - 1 - kdenlivetitle - 00:00:10.000 - Avoid the De... - <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> - <item type="QGraphicsTextItem" z-index="0"> - <position x="235" y="647"> - <transform>1,0,0,0,1,0,0,0,1</transform> - </position> - <content alignment="4" box-height="141" box-width="2085.69" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="141" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Avoid Default Case</content> - </item> - <startviewport rect="0,0,2560,1440"/> - <endviewport rect="0,0,2560,1440"/> - <background color="246,245,244,0"/> -</kdenlivetitle> - - was here - 5 - 12 - 2 - c49c69dfa277a7b35ee6d4717e6a2276 - 0 - 256 - {4cab6d9b-3a41-4e56-8658-45dbb0a1a26b} - {d479436b-68a3-4d80-8c38-874ddb45af0a} - 2560 - 1440 - - - 579 - pause - - 1 - 1 - 1 - kdenlivetitle - 00:00:10.000 - Utilize Coun... - <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> - <item type="QGraphicsTextItem" z-index="0"> - <position x="262" y="635"> - <transform>1,0,0,0,1,0,0,0,1</transform> - </position> - <content alignment="4" box-height="165" box-width="2032.41" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="165" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Utilize Counting</content> - </item> - <startviewport rect="0,0,2560,1440"/> - <endviewport rect="0,0,2560,1440"/> - <background color="246,245,244,0"/> -</kdenlivetitle> - - was here - 5 - 13 - 2 - 42ba4b3c6c8f8d35a587d57e1fd4d6b5 - 0 - 256 - {a9b82118-c87f-4b1b-95b8-a1d7a763da96} - {f9597a47-13c5-478b-b997-6d8a7eedb907} - 2560 - 1440 - - - - - 10 - + 1 qtblend POP IN! @@ -864,7 +1881,42 @@ 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 0 - + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.833=0 + 0 + + + + 8 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + + + + 40 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + 1 1 brightness @@ -873,10 +1925,108 @@ 0 - - + + + 42 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + + + + 44 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.567=0 + 0 + + + + + 47 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.667=0 + 0 + + + + 39 + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.767=0 + + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + + + + + 10 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.667=0 + + + + 11 - + 1 qtblend POP IN! @@ -886,15 +2036,126 @@ 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 0 + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.667=0 + - - - 12 + + 18 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-760 0 2560 1440 1.000000 + 00:00:00.000=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + - - + + 19 + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-24 0 2560 1440 1.000000 + 00:00:00.000=0 + 0 + + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + + 20 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + + 21 + 2 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-432 0 2560 1440 1.000000 + 00:00:00.000=0 + 0 + + + + 6 - + 1 + 1 qtblend POP IN! @@ -904,14 +2165,78 @@ 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 0 + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:01.000=0 + 0 + - - - 13 + + + 12 + + 1 + qtblend + POP IN! + 0 + 0 + 00:00:00.000$=1280 720 1 1 1.000000;00:00:00.167$=-320 -180 3200 1800 1.000000;00:00:00.233$=0 0 2560 1440 1.000000 + 00:00:00.000$=0;00:00:00.167$=0;00:00:00.233$=0 + 0 + + + 1 + 1 + brightness + fade_to_black + 00:00:00.000=1;00:00:00.667=0 + 0 + + + + + 26 + + 1 + 1 + brightness + fade_from_black + 00:00:00.000=0;00:00:00.333=1 + 0 + 1 + + + 1 + qtblend + qtblend + 0 + 0 + 00:00:00.000=-324 0 2560 1440 1.000000;00:00:04.000=-324 0 2560 1440 1.000000;00:00:05.000=15 238 1714 964 1.000000 + 00:00:00.000=0;00:00:04.000=0;00:00:05.000=0 + 0 + + + + + 50 + + + 72 + 1 + 0 + + + + + + - + 72 1 0 @@ -920,9 +2245,9 @@ - - 00:03:03.800 - 5514 + + 00:03:20.733 + 6022 Sequence 1 {448b7f7c-b202-4bc6-82f7-a54eb1ca5186} @@ -938,7 +2263,7 @@ {448b7f7c-b202-4bc6-82f7-a54eb1ca5186} 1 1 - 293 + 5418 0 4 6 @@ -946,16 +2271,13 @@ 2 0 977 - 8 + 11 [ ] [ ] - 0 - 1070 - 0 @@ -1027,14 +2349,14 @@ 237 1 - + 75 20dB volume 237 1 - + -1 panner 237 @@ -1042,62 +2364,7 @@ 1 - - 579 - pause - - 1 - 1 - 1 - kdenlivetitle - 00:00:10.000 - Bitfield? Ov... - <kdenlivetitle LC_NUMERIC="C" duration="300" height="1440" out="299" width="2560"> - <item type="QGraphicsTextItem" z-index="0"> - <position x="223" y="674"> - <transform>1,0,0,0,1,0,0,0,1</transform> - </position> - <content alignment="4" box-height="88" box-width="2110.67" font="04b" font-color="226,26,65,255" font-italic="0" font-outline="0" font-outline-color="226,26,65,255" font-pixel-size="88" font-underline="0" font-weight="900" letter-spacing="0" line-spacing="0" shadow="1;#64000000;4;4;4" tab-width="80" typewriter="0;2;1;0;0">Bitfield? Overload Bitwise OPs</content> - </item> - <startviewport rect="0,0,2560,1440"/> - <endviewport rect="0,0,2560,1440"/> - <background color="246,245,244,0"/> -</kdenlivetitle> - - was here - 5 - 14 - 2 - 0a683ffba883e9458659db06774a04a8 - 0 - 256 - {35eb8e38-40d0-4d0d-8d6c-ae8361231426} - {6b173af3-2df0-45da-bb39-d10ce5225a54} - 2560 - 1440 - - - 00:00:05.000 - pause - counting_enum.png - 25 - 1 - 1 - 1 - 2 - 691 - 500 - qimage - 00:00:05:00 - was here - 15 - 17 - {9b1aeab7-a8fa-44fd-80f4-5bd530a261cc} - 2 - 22157 - f6cdd3fc8d858fb1d0352766e089ef4e - - + 00:00:05.000 pause bitwise_operators.png @@ -1111,253 +2378,20 @@ qimage 00:00:05:00 was here - 15 - 16 - {0b4e9362-0c55-47a2-aa57-a6b34feab803} + -1 + 49 + {1b3ee895-1109-4108-b357-8b713defd0db} 2 115299 77f15eca6ff6facfa9b325426f99200f - 0 1 - - - 00:00:05.000 - pause - counting_enum_arr.png - 25 - 1 - 1 - 1 - 2 - 992 - 537 - qimage - 00:00:05:00 - was here - 15 - 18 - {a24f831c-cf30-4353-98fa-84fa7d11b3ad} - 2 - 32575 - 4dd1fd72d818f71541138c48c3c940b9 - - - 00:00:05.000 - pause - default_case_1.png - 25 - 1 - 1 - 1 - 2 - 676 - 945 - qimage - 00:00:05:00 - was here - 15 - 19 - {16838c6c-df33-42ff-b0e5-2f6a7688d43d} - 2 - 53052 - b176927e191de664403c6215420942b0 - - - 00:00:05.000 - pause - default_case_2.png - 25 - 1 - 1 - 1 - 2 - 1301 - 965 - qimage - 00:00:05:00 - was here - 15 - 20 - {2df08370-b35c-40df-a671-f947a75f8c6f} - 2 - 79844 - 793ad0db107d946095f6e87a4952ca45 - - - 00:00:05.000 - pause - default_case_3.png - 25 - 1 - 1 - 1 - 2 - 1796 - 834 - qimage - 00:00:05:00 - was here - 15 - 21 - {e72d59f2-fe25-406f-b8c0-abe8a242532e} - 2 - 74076 - 123ce3acdee0a8c11acf681a21b2bee4 - - - 00:00:05.000 - pause - default_case_4.png - 25 - 1 - 1 - 1 - 2 - 1611 - 893 - qimage - 00:00:05:00 - was here - 15 - 22 - {d07e0c8c-7161-4c11-b63b-638c0429c399} - 2 - 80439 - b79e8aa0291bc7797965a76294874521 - - - 00:00:05.000 - pause - scoped_enum_since_cpp11.png - 25 - 1 - 1 - 1 - 2 - 1472 - 708 - qimage - 00:00:05:00 - was here - 15 - 25 - {fb0178ed-4ff1-4100-acf4-f097689bc078} - 2 - 174503 - 57dfe77a2f90264bb4cd39ecf61aa02e - - - 00:00:05.000 - pause - specify_underlying_type.png - 25 - 1 - 1 - 1 - 2 - 2526 - 347 - qimage - 00:00:05:00 - was here - 15 - 26 - {31703df8-e68f-442b-9e21-792c2f44975f} - 2 - 29523 - 5243f0e5df4f3cf84d52d7e89f2cfb5c - - - 00:00:05.000 - pause - std_utils.png - 25 - 1 - 1 - 1 - 2 - 1319 - 963 - qimage - 00:00:05:00 - was here - 15 - 27 - {eacb50d8-8c67-47e1-b304-52ce9ac82811} - 2 - 127712 - e1d698e7f8293b68932a9a67c9d47b14 - - - 00:00:05.000 - pause - the_zen_of_python.png - 25 - 1 - 1 - 1 - 2 - 1228 - 839 - qimage - 00:00:05:00 - was here - 15 - 28 - {bb46c5e4-dd21-4ab4-a3ac-29121822385f} - 2 - 173841 - fe953158a00f69c6f231dcfd03e62d1d - 1 - 0 - - - 00:00:05.000 - pause - vk_result.png - 25 - 1 - 1 - 1 - 2 - 804 - 1039 - qimage - 00:00:05:00 - was here - 15 - 29 - {ebf58c6f-3559-457d-a3e3-05f5d4713947} - 2 - 143255 - 47f9e893c1526e650d4ffea30897be25 - - - 00:00:05.000 - pause - zero.png - 25 - 1 - 1 - 1 - 2 - 486 - 738 - qimage - 00:00:05:00 - was here - 15 - 33 - {21641cec-2b76-4eca-b00b-5c6253f72258} - 2 - 36130 - 02f278e5b040326fd2052cdf7d17d27a - 1 - 0 + 149 Sequences Transitions + Code Snippets + Images 2 {448b7f7c-b202-4bc6-82f7-a54eb1ca5186} 2 @@ -1429,52 +2463,79 @@ 1000 640 + Generic (HD for web, mobile devices...) + 100 + -1 + 0 + 0 + 1 + 0 + 0 + MP4-H264/AAC + 0 + 720 + 1280 + 8 + -1 + 0 + 0 + -1 + 0 + /home/light/project.mp4 9000 - {dd0d00b2-e4d7-4440-a847-030fb205c38c} + {76fff3f9-fbcc-4d2a-b9b0-78e315768834} {448b7f7c-b202-4bc6-82f7-a54eb1ca5186} 1.1 - 36 + 36;15;5 0 project_bin:-1:0 2 - Code Snippets - Images 1 - - - - - + - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - + + + + + + + + + + + + + + + + + - + 1 - + diff --git a/youtube/video_series/bit_blast/cxx_enums/script b/youtube/video_series/bit_blast/cxx_enums/script.md similarity index 68% rename from youtube/video_series/bit_blast/cxx_enums/script rename to youtube/video_series/bit_blast/cxx_enums/script.md index de4a501..c7fe6b4 100644 --- a/youtube/video_series/bit_blast/cxx_enums/script +++ b/youtube/video_series/bit_blast/cxx_enums/script.md @@ -1,4 +1,8 @@ -# Hook +--- +title: BitBlast | The Cooked State of Enums +--- + +# Hook <20s "There should be one, and preferably only one, obvious way to do it." --- The Zen of Python A principle which C++ defies in many fronts, enums being one of them, assuming you know the basics, let's learn more about enums! @@ -17,8 +21,8 @@ There are mainly 3 ways we could declare one. 3: The anonymous enum -> Much like the classic enum, but without a qualifier --> It was used as a way of storing constants before constexprs were a thing --> There's a neat trick you coud do with anonymous or unscoped enums, and that is to put it inside a namespace and have the middle-ground of scoped and unscoped enums +-> It was used as a way of storing constants +-> But there's also a neat trick you could do with anonymous or unscoped enums, and that is to put it inside a namespace and have the middle-ground of scoped and unscoped enums -> It allows implicit conversion to integer types. -> But, it still requires proper qualification when accessing its elements. And won't pollute the enclosing namespace. @@ -41,10 +45,10 @@ Like this! always do this, even if the type is int--- It serves as documentation 3: Avoid the "default" Case This may be too much in certain cases, but try to develop a preference for explicitly handling all enums values. Even if multiple values execute the same code, you could fall-through them if you don't put breaks in-between. -You could enable warnings as errors for catching incomplete switch statements. +You could enable warnings as errors for catching incomplete statements. So when you inevitably add new values to your enums, the compiler will have your back. -4: Utilize [Dio: ZERO] +4: Utilize Zero Since zero evaluates to false, and other values to true, you could treat it as a special value for making a binary decision. For example, in Vulkan API, the VkResult has 0 for success, and errors are set to non-zero values. This makes the decision to handle-error or move-on a binary decision like this. @@ -52,11 +56,18 @@ This makes the decision to handle-error or move-on a binary decision like this. 5: Utilize Its Counting Nature The values are implicitly incremented, this means you could have a "count" element at the end like so. -6: (Are you using it as a) Bitfield? (Then consider) Overload(ing) the Bitwise Operators. +6: Using enum +Remember how namespaced anonymous or unscoped enums enforced explicit qualification, yet allowed implicit conversion? +We could have it the other way around with the using enum syntax. +This way explicit qualification is not required, but implicit conversion is still prohibited. +7: (Are you using it as a) Bitfield? (Then consider) Overload(ing) the Bitwise Operators. +8: Std Utilities +And to wrap it up.. here are some enum utilities from the standard library... + +Now, the best way to learn is to experiment, +You can find compiler explorer links for all the code you've seen in this video in the description. + +If you want more of this type of content in your homepage, consider subscribing. Chao! ^~^ -# Zoom out to outro... -Anyways! Here are some enum utilities from the standard library... -If you want more of these kind of videos, consider subscribing. -chao ^~^! diff --git a/youtube/video_series/bit_blast/cxx_enums/using_enum.png b/youtube/video_series/bit_blast/cxx_enums/using_enum.png new file mode 100644 index 0000000..bede346 Binary files /dev/null and b/youtube/video_series/bit_blast/cxx_enums/using_enum.png differ