typedef struct { u32* city_to_strip_index; u32 city_to_strip_index_len; } Incenter_State; enum { city_black_rock = 0, city_kiev = 1, city_buenos_aires, city_canberra, city_yerevan, city_bishkek, city_dhaka, city_sucre, city_brasilia, city_ottawa, city_santiago, city_beijing, city_bogota, city_nicosia, city_quito, city_cairo, city_addis_ababa, city_berlin, city_athens, city_guatemala_city, city_jakarta, city_tehran, city_baghdad, city_tokyo, city_amman, city_nairobi, city_beirut, city_tripoli, city_kuala_lumpur, city_male, city_mexico_city, city_ulan_bator, city_rabat, city_amsterdam, city_wellington, city_managua, city_abuja, city_islamabad, city_lima, city_bucharest, city_moscow, city_belgrade, city_singapore, city_seoul, city_tunis, city_bangkok, city_washington_dc, city_hanoi, city_harare, city_ankara, city_count, }; typedef u32 Incenter_City_Id; enum { MONTH_Jan, MONTH_Feb, MONTH_Mar, MONTH_Apr, MONTH_May, MONTH_Jun, MONTH_Jul, MONTH_Aug, MONTH_Sep, MONTH_Oct, MONTH_Nov, MONTH_Dec, }; typedef u32 Incenter_Month_Id; typedef struct { Incenter_City_Id id; r32 lat; r32 lon; u32 sacn_universe; // TODO: Some way to access this cities strip of leds } Incenter_City_Desc; global Incenter_City_Desc city_descs[] = { [city_kiev] = { .id = city_kiev, .lat = 50.4501f, .lon = 30.523399f, .sacn_universe = city_kiev, }, [city_buenos_aires] = { .id = city_buenos_aires, .lat = -58.381593f, .lon = -34.603723f, .sacn_universe = city_buenos_aires, }, [city_canberra] = { .id = city_canberra, .lat = 149.128684f, .lon = -35.282000f, .sacn_universe = city_canberra, }, [city_yerevan] = { .id = city_yerevan, .lat = 44.516667f, .lon = 40.183333f, .sacn_universe = city_yerevan, }, [city_bishkek] = { .id = city_bishkek, .lat = 74.612222f, .lon = 42.874722f, .sacn_universe = city_bishkek, }, [city_dhaka] = { .id = city_dhaka, .lat = 90.412518f, .lon = 23.810332f, .sacn_universe = city_dhaka, }, [city_sucre] = { .id = city_sucre, .lat = -65.261961f, .lon = -19.019585f, .sacn_universe = city_sucre, }, [city_brasilia] = { .id = city_brasilia, .lat = -75.697193f, .lon = 45.421530f, .sacn_universe = city_brasilia, }, [city_ottawa] = { .id = city_ottawa, .lat = -75.697193f, .lon = 45.421530f, .sacn_universe = city_ottawa, }, [city_santiago] = { .id = city_santiago, .lat = -70.641997f, .lon = -33.469120f, .sacn_universe = city_santiago, }, [city_beijing] = { .id = city_beijing, .lat = 116.407395f, .lon = 39.904211f, .sacn_universe = city_beijing, }, [city_bogota] = { .id = city_bogota, .lat = 33.382988f, .lon = 35.188336f, .sacn_universe = city_bogota, }, [city_nicosia] = { .id = city_nicosia, .lat = 33.382988f, .lon = 35.188336f, .sacn_universe = city_nicosia, }, [city_quito] = { .id = city_quito, .lat = -78.467838f, .lon = -0.180653f, .sacn_universe = city_quito, }, [city_cairo] = { .id = city_cairo, .lat = 31.235712f, .lon = 30.044420f, .sacn_universe = city_cairo, }, [city_addis_ababa] = { .id = city_addis_ababa, .lat = 38.757761f, .lon = 8.980603f, .sacn_universe = city_addis_ababa, }, [city_berlin] = { .id = city_berlin, .lat = 13.404954f, .lon = 52.520007f, .sacn_universe = city_berlin, }, [city_athens] = { .id = city_athens, .lat = 23.729360f, .lon = 37.983917f, .sacn_universe = city_athens, }, [city_guatemala_city] = { .id = city_guatemala_city, .lat = -90.506882f, .lon = 14.634915f, .sacn_universe = city_guatemala_city, }, [city_jakarta] = { .id = city_jakarta, .lat = 106.845599f, .lon = -6.208763f, .sacn_universe = city_jakarta, }, [city_tehran] = { .id = city_tehran, .lat = 35.69439f, .lon = 51.42151f, .sacn_universe = city_tehran, }, [city_baghdad] = { .id = city_baghdad, .lat = 33.3302946f, .lon = 44.391758f, .sacn_universe = city_baghdad, }, [city_tokyo] = { .id = city_tokyo, .lat = 35.689506f, .lon = 139.6917f, .sacn_universe = city_tokyo, }, [city_amman] = { .id = city_amman, .lat = 35.945695f, .lon = 31.956578f, .sacn_universe = city_amman, }, [city_nairobi] = { .id = city_nairobi, .lat = 36.821946f, .lon = -1.292066f, .sacn_universe = city_nairobi, }, [city_beirut] = { .id = city_beirut, .lat = 35.495479f, .lon = 33.888629f, .sacn_universe = city_beirut, }, [city_tripoli] = { .id = city_tripoli, .lat = 13.191338f, .lon = 32.887209f, .sacn_universe = city_tripoli, }, [city_kuala_lumpur] = { .id = city_kuala_lumpur, .lat = 101.686855f, .lon = 3.139003f, .sacn_universe = city_kuala_lumpur, }, [city_male] = { .id = city_male, .lat = 4.1750931f, .lon = 73.5097742f, .sacn_universe = city_male, }, [city_mexico_city] = { .id = city_mexico_city, .lat = -99.133208f, .lon = 19.432608f, .sacn_universe = city_mexico_city, }, [city_ulan_bator] = { .id = city_ulan_bator, .lat = 106.905744f, .lon = 47.886399f, .sacn_universe = city_ulan_bator, }, [city_rabat] = { .id = city_rabat, .lat = -6.849813f, .lon = 33.971590f, .sacn_universe = city_rabat, }, [city_amsterdam] = { .id = city_amsterdam, .lat = 4.895168f, .lon = 52.370216f, .sacn_universe = city_amsterdam, }, [city_wellington] = { .id = city_wellington, .lat = 174.776236f, .lon = 41.286460f, .sacn_universe = city_wellington, }, [city_managua] = { .id = city_managua, .lat = -86.251389f, .lon = 12.136389f, .sacn_universe = city_managua, }, [city_abuja] = { .id = city_abuja, .lat = 7.483333f, .lon = 9.066667f, .sacn_universe = city_abuja, }, [city_islamabad] = { .id = city_islamabad, .lat = 73.093146f, .lon = 33.729388f, .sacn_universe = city_islamabad, }, [city_lima] = { .id = city_lima, .lat = -77.042793f, .lon = -12.046374f, .sacn_universe = city_lima, }, [city_bucharest] = { .id = city_bucharest, .lat = 26.102538f, .lon = 44.426767f, .sacn_universe = city_bucharest, }, [city_moscow] = { .id = city_moscow, .lat = 37.617300f, .lon = 55.755826f, .sacn_universe = city_moscow, }, [city_belgrade] = { .id = city_belgrade, .lat = 20.448922f, .lon = 44.786568f, .sacn_universe = city_belgrade, }, [city_singapore] = { .id = city_singapore, .lat = 103.819836f, .lon = 1.352083f, .sacn_universe = city_singapore, }, [city_seoul] = { .id = city_seoul, .lat = 126.977969f, .lon = 37.566535f, .sacn_universe = city_seoul, }, [city_tunis] = { .id = city_tunis, .lat = 9.537499f, .lon = 33.886917f, .sacn_universe = city_tunis, }, [city_bangkok] = { .id = city_bangkok, .lat = 100.501765f, .lon = 13.756331f, .sacn_universe = city_bangkok, }, [city_washington_dc] = { .id = city_washington_dc, .lat = 38.907192f, .lon = -77.036873f, .sacn_universe = city_washington_dc, }, [city_hanoi] = { .id = city_hanoi, .lat = 21.027763f, .lon = 105.834160f, .sacn_universe = city_hanoi, }, [city_harare] = { .id = city_harare, .lat = -17.825167f, .lon = 31.033510f, .sacn_universe = city_harare, }, [city_ankara] = { .id = city_ankara, .lat = 39.933365f, .lon = 32.859741f, .sacn_universe = city_ankara, }, [city_black_rock] = { .id = city_black_rock, .lat = -90.0f, .lon = 0, .sacn_universe = city_black_rock, }, }; global char* city_strings[] = { "city_black_rock", "city_kiev", "city_buenos_aires", "city_canberra", "city_yerevan", "city_bishkek", "city_dhaka", "city_sucre", "city_brasilia", "city_ottawa", "city_santiago", "city_beijing", "city_bogota", "city_nicosia", "city_quito", "city_cairo", "city_addis_ababa", "city_berlin", "city_athens", "city_guatemala_city", "city_jakarta", "city_tehran", "city_baghdad", "city_tokyo", "city_amman", "city_nairobi", "city_beirut", "city_tripoli", "city_kuala_lumpur", "city_male", "city_mexico_city", "city_ulan_bator", "city_rabat", "city_amsterdam", "city_wellington", "city_managua", "city_abuja", "city_islamabad", "city_lima", "city_bucharest", "city_moscow", "city_belgrade", "city_singapore", "city_seoul", "city_tunis", "city_bangkok", "city_washington_dc", "city_hanoi", "city_harare", "city_ankara", };