You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
jianglk.darker 7ee447c011
v811_spc009_project
4 months ago
..
adaptation v811_spc009_project 4 months ago
audio v811_spc009_project 4 months ago
audio_codecs v811_spc009_project 4 months ago
call v811_spc009_project 4 months ago
crypto v811_spc009_project 4 months ago
neteq v811_spc009_project 4 months ago
rtc_event_log v811_spc009_project 4 months ago
stats v811_spc009_project 4 months ago
task_queue v811_spc009_project 4 months ago
test v811_spc009_project 4 months ago
transport v811_spc009_project 4 months ago
units v811_spc009_project 4 months ago
video v811_spc009_project 4 months ago
video_codecs v811_spc009_project 4 months ago
voip v811_spc009_project 4 months ago
BUILD.gn v811_spc009_project 4 months ago
DEPS v811_spc009_project 4 months ago
DESIGN.md v811_spc009_project 4 months ago
OWNERS.webrtc v811_spc009_project 4 months ago
README.md v811_spc009_project 4 months ago
array_view.h v811_spc009_project 4 months ago
array_view_unittest.cc v811_spc009_project 4 months ago
async_resolver_factory.h v811_spc009_project 4 months ago
audio_options.cc v811_spc009_project 4 months ago
audio_options.h v811_spc009_project 4 months ago
candidate.cc v811_spc009_project 4 months ago
candidate.h v811_spc009_project 4 months ago
create_peerconnection_factory.cc v811_spc009_project 4 months ago
create_peerconnection_factory.h v811_spc009_project 4 months ago
crypto_params.h v811_spc009_project 4 months ago
data_channel_interface.cc v811_spc009_project 4 months ago
data_channel_interface.h v811_spc009_project 4 months ago
dtls_transport_interface.cc v811_spc009_project 4 months ago
dtls_transport_interface.h v811_spc009_project 4 months ago
dtmf_sender_interface.h v811_spc009_project 4 months ago
fec_controller.h v811_spc009_project 4 months ago
fec_controller_override.h v811_spc009_project 4 months ago
frame_transformer_interface.h v811_spc009_project 4 months ago
function_view.h v811_spc009_project 4 months ago
function_view_unittest.cc v811_spc009_project 4 months ago
ice_transport_factory.cc v811_spc009_project 4 months ago
ice_transport_factory.h v811_spc009_project 4 months ago
ice_transport_interface.h v811_spc009_project 4 months ago
jsep.cc v811_spc009_project 4 months ago
jsep.h v811_spc009_project 4 months ago
jsep_ice_candidate.cc v811_spc009_project 4 months ago
jsep_ice_candidate.h v811_spc009_project 4 months ago
jsep_session_description.h v811_spc009_project 4 months ago
media_stream_interface.cc v811_spc009_project 4 months ago
media_stream_interface.h v811_spc009_project 4 months ago
media_stream_proxy.h v811_spc009_project 4 months ago
media_stream_track_proxy.h v811_spc009_project 4 months ago
media_types.cc v811_spc009_project 4 months ago
media_types.h v811_spc009_project 4 months ago
network_state_predictor.h v811_spc009_project 4 months ago
notifier.h v811_spc009_project 4 months ago
packet_socket_factory.h v811_spc009_project 4 months ago
peer_connection_factory_proxy.h v811_spc009_project 4 months ago
peer_connection_interface.cc v811_spc009_project 4 months ago
peer_connection_interface.h v811_spc009_project 4 months ago
peer_connection_proxy.h v811_spc009_project 4 months ago
priority.h v811_spc009_project 4 months ago
proxy.cc v811_spc009_project 4 months ago
proxy.h v811_spc009_project 4 months ago
ref_counted_base.h v811_spc009_project 4 months ago
rtc_error.cc v811_spc009_project 4 months ago
rtc_error.h v811_spc009_project 4 months ago
rtc_error_unittest.cc v811_spc009_project 4 months ago
rtc_event_log_output.h v811_spc009_project 4 months ago
rtc_event_log_output_file.cc v811_spc009_project 4 months ago
rtc_event_log_output_file.h v811_spc009_project 4 months ago
rtc_event_log_output_file_unittest.cc v811_spc009_project 4 months ago
rtp_headers.cc v811_spc009_project 4 months ago
rtp_headers.h v811_spc009_project 4 months ago
rtp_packet_info.cc v811_spc009_project 4 months ago
rtp_packet_info.h v811_spc009_project 4 months ago
rtp_packet_info_unittest.cc v811_spc009_project 4 months ago
rtp_packet_infos.h v811_spc009_project 4 months ago
rtp_packet_infos_unittest.cc v811_spc009_project 4 months ago
rtp_parameters.cc v811_spc009_project 4 months ago
rtp_parameters.h v811_spc009_project 4 months ago
rtp_parameters_unittest.cc v811_spc009_project 4 months ago
rtp_receiver_interface.cc v811_spc009_project 4 months ago
rtp_receiver_interface.h v811_spc009_project 4 months ago
rtp_sender_interface.cc v811_spc009_project 4 months ago
rtp_sender_interface.h v811_spc009_project 4 months ago
rtp_transceiver_direction.h v811_spc009_project 4 months ago
rtp_transceiver_interface.cc v811_spc009_project 4 months ago
rtp_transceiver_interface.h v811_spc009_project 4 months ago
scoped_refptr.h v811_spc009_project 4 months ago
scoped_refptr_unittest.cc v811_spc009_project 4 months ago
sctp_transport_interface.cc v811_spc009_project 4 months ago
sctp_transport_interface.h v811_spc009_project 4 months ago
set_remote_description_observer_interface.h v811_spc009_project 4 months ago
stats_types.cc v811_spc009_project 4 months ago
stats_types.h v811_spc009_project 4 months ago
turn_customizer.h v811_spc009_project 4 months ago
uma_metrics.h v811_spc009_project 4 months ago
video_track_source_proxy.h v811_spc009_project 4 months ago

README.md

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.