Telegram-Android/TMessagesProj/jni/voip/webrtc/api
2022-03-13 04:58:00 +03:00
..
adaptation Update to 8.6.0 2022-03-11 19:49:54 +03:00
audio Update to 8.6.1 2022-03-13 04:58:00 +03:00
audio_codecs Update to 8.6.1 2022-03-13 04:58:00 +03:00
call Update to 8.6.0 2022-03-11 19:49:54 +03:00
crypto Update to 8.6.0 2022-03-11 19:49:54 +03:00
neteq Update to 8.6.0 2022-03-11 19:49:54 +03:00
numerics Update to 8.6.0 2022-03-11 19:49:54 +03:00
rtc_event_log Update to 8.6.1 2022-03-13 04:58:00 +03:00
stats Update to 8.6.1 2022-03-13 04:58:00 +03:00
task_queue Update to 8.6.1 2022-03-13 04:58:00 +03:00
test Update to 8.6.1 2022-03-13 04:58:00 +03:00
transport Update to 8.6.1 2022-03-13 04:58:00 +03:00
units Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
video Update to 8.6.1 2022-03-13 04:58:00 +03:00
video_codecs Update to 8.6.1 2022-03-13 04:58:00 +03:00
voip Update to 8.6.0 2022-03-11 19:49:54 +03:00
array_view.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
async_dns_resolver.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
async_resolver_factory.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
audio_options.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
audio_options.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
candidate.cc Update to 8.6.0 2022-03-11 19:49:54 +03:00
candidate.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
create_peerconnection_factory.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
create_peerconnection_factory.h Update to 7.3.0 (2195) 2020-12-23 11:48:30 +04:00
crypto_params.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
data_channel_interface.cc Update to 8.6.0 2022-03-11 19:49:54 +03:00
data_channel_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
dtls_transport_interface.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
dtls_transport_interface.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
dtmf_sender_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
fec_controller.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
fec_controller_override.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
frame_transformer_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
function_view.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
ice_transport_factory.cc Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
ice_transport_factory.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
ice_transport_interface.h Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
jsep.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
jsep.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
jsep_ice_candidate.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
jsep_ice_candidate.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
jsep_session_description.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
media_stream_interface.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
media_stream_interface.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
media_stream_track.h Update to 7.3.0 (2195) 2020-12-23 11:48:30 +04:00
media_types.cc Update to 8.6.0 2022-03-11 19:49:54 +03:00
media_types.h Update to 7.3.0 (2195) 2020-12-23 11:48:30 +04:00
network_state_predictor.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
notifier.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
OWNERS Update to 8.6.0 2022-03-11 19:49:54 +03:00
packet_socket_factory.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
peer_connection_interface.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
peer_connection_interface.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
priority.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
proxy.cc Update to 7.3.0 (2195) 2020-12-23 11:48:30 +04:00
README.md Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
ref_counted_base.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
rtc_error.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtc_error.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
rtc_event_log_output.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
rtc_event_log_output_file.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtc_event_log_output_file.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtp_headers.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtp_headers.h Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
rtp_packet_info.cc Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
rtp_packet_info.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
rtp_packet_infos.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
rtp_parameters.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
rtp_parameters.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
rtp_receiver_interface.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtp_receiver_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
rtp_sender_interface.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtp_sender_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
rtp_transceiver_direction.h Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
rtp_transceiver_interface.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
rtp_transceiver_interface.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
scoped_refptr.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
sctp_transport_interface.cc Update to 7.1.0 (2090) 2020-09-30 16:48:47 +03:00
sctp_transport_interface.h Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
sequence_checker.h Update to 7.8.0 (2359) 2021-06-25 03:43:10 +03:00
set_local_description_observer_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
set_remote_description_observer_interface.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
stats_types.cc Update to 8.6.1 2022-03-13 04:58:00 +03:00
stats_types.h Update to 8.6.1 2022-03-13 04:58:00 +03:00
turn_customizer.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
uma_metrics.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
video_track_source_constraints.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
video_track_source_proxy_factory.h Update to 8.6.0 2022-03-11 19:49:54 +03:00
wrapping_async_dns_resolver.cc Update to 8.6.0 2022-03-11 19:49:54 +03:00
wrapping_async_dns_resolver.h Update to 8.6.0 2022-03-11 19:49:54 +03:00

How to write code in the api/ directory

Mostly, just follow the regular style guide, but:

  • Note that api/ code is not exempt from the “.h and .cc files come in pairs” rule, so if you declare something in api/path/to/foo.h, it should be defined in api/path/to/foo.cc.
  • Headers in api/ should, if possible, not #include headers outside api/. Its not always possible to avoid this, but be aware that it adds to a small mountain of technical debt that were trying to shrink.
  • .cc files in api/, on the other hand, are free to #include headers outside api/.

That is, the preferred way for api/ code to access non-api/ code is to call it from a .cc file, so that users of our API headers wont transitively #include non-public headers.

For headers in api/ that need to refer to non-public types, forward declarations are often a lesser evil than including non-public header files. The usual rules still apply, though.

.cc files in api/ should preferably be kept reasonably small. If a substantial implementation is needed, consider putting it with our non-public code, and just call it from the api/ .cc file.