# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS.  All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.

import("../webrtc.gni")
if (is_android) {
  import("//build/config/android/config.gni")
  import("//build/config/android/rules.gni")
}

group("api") {
  visibility = [ "*" ]
  deps = []

  if (!build_with_mozilla) {
    deps += [ ":libjingle_peerconnection_api" ]
  }
}

rtc_source_set("call_api") {
  visibility = [ "*" ]
  sources = [
    "call/audio_sink.h",
  ]
}

rtc_source_set("callfactory_api") {
  visibility = [ "*" ]
  sources = [
    "call/call_factory_interface.h",
  ]
}

rtc_static_library("create_peerconnection_factory") {
  visibility = [ "*" ]
  sources = [
    "create_peerconnection_factory.cc",
    "create_peerconnection_factory.h",
  ]
  deps = [
    ":callfactory_api",
    ":fec_controller_api",
    ":libjingle_peerconnection_api",
    ":scoped_refptr",
    "../logging:rtc_event_log_api",
    "../logging:rtc_event_log_impl_base",
    "../media:rtc_audio_video",
    "../media:rtc_media_base",
    "../modules/audio_device:audio_device_api",
    "../modules/audio_processing:api",
    "../pc:peerconnection",
    "../rtc_base:deprecation",
    "../rtc_base:rtc_base",
    "../rtc_base:rtc_base_approved",
    "audio:audio_mixer_api",
    "audio_codecs:audio_codecs_api",
    "transport:network_control",
    "video_codecs:video_codecs_api",
  ]
}

rtc_source_set("rtp_headers") {
  visibility = [ "*" ]
  sources = [
    "rtp_headers.cc",
    "rtp_headers.h",
  ]
  deps = [
    ":array_view",
    "..:webrtc_common",
    "video:video_frame",
    "//third_party/abseil-cpp/absl/types:optional",
  ]
}

rtc_static_library("libjingle_peerconnection_api") {
  visibility = [ "*" ]
  cflags = []
  sources = [
    "async_resolver_factory.h",
    "bitrate_constraints.h",
    "candidate.cc",
    "candidate.h",
    "crypto/crypto_options.cc",
    "crypto/crypto_options.h",
    "crypto/frame_decryptor_interface.h",
    "crypto/frame_encryptor_interface.h",
    "crypto_params.h",
    "data_channel_interface.cc",
    "data_channel_interface.h",
    "dtls_transport_interface.h",
    "dtmf_sender_interface.h",
    "ice_transport_interface.h",
    "jsep.cc",
    "jsep.h",
    "jsep_ice_candidate.cc",
    "jsep_ice_candidate.h",
    "jsep_session_description.h",
    "media_stream_interface.cc",
    "media_stream_interface.h",
    "media_stream_proxy.h",
    "media_stream_track_proxy.h",
    "media_transport_interface.cc",
    "media_transport_interface.h",
    "media_types.cc",
    "media_types.h",
    "notifier.h",
    "peer_connection_factory_proxy.h",
    "peer_connection_interface.cc",
    "peer_connection_interface.h",
    "peer_connection_proxy.h",
    "proxy.cc",
    "proxy.h",
    "rtc_error.cc",
    "rtc_error.h",
    "rtp_parameters.cc",
    "rtp_parameters.h",
    "rtp_receiver_interface.cc",
    "rtp_receiver_interface.h",
    "rtp_sender_interface.cc",
    "rtp_sender_interface.h",
    "rtp_transceiver_interface.cc",
    "rtp_transceiver_interface.h",
    "sctp_transport_interface.cc",
    "sctp_transport_interface.h",
    "set_remote_description_observer_interface.h",
    "stats_types.cc",
    "stats_types.h",
    "turn_customizer.h",
    "uma_metrics.h",
    "video_track_source_proxy.h",
  ]
  deps = [
    ":array_view",
    ":audio_options_api",
    ":callfactory_api",
    ":fec_controller_api",
    ":libjingle_logging_api",
    ":rtc_stats_api",
    ":scoped_refptr",
    "audio:audio_mixer_api",
    "audio_codecs:audio_codecs_api",
    "transport:bitrate_settings",
    "transport:network_control",
    "transport/media:audio_interfaces",
    "transport/media:video_interfaces",
    "units:data_rate",
    "video:encoded_image",
    "video:video_frame",
    "//third_party/abseil-cpp/absl/algorithm:container",
    "//third_party/abseil-cpp/absl/strings",
    "//third_party/abseil-cpp/absl/types:optional",

    # Basically, don't add stuff here. You might break sensitive downstream
    # targets like pnacl. API should not depend on anything outside of this
    # file, really. All these should arguably go away in time.
    "..:webrtc_common",
    "../logging:rtc_event_log_api",
    "../media:rtc_media_config",
    "../modules/audio_processing:audio_processing_statistics",
    "../rtc_base:checks",
    "../rtc_base:deprecation",
    "../rtc_base:rtc_base",
    "../rtc_base:rtc_base_approved",
    "../rtc_base/system:rtc_export",
  ]

  if (is_nacl) {
    # This is needed by .h files included from rtc_base.
    deps += [ "//native_client_sdk/src/libraries/nacl_io" ]
  }
}

rtc_source_set("scoped_refptr") {
  visibility = [ "*" ]
  sources = [
    "scoped_refptr.h",
  ]
}

rtc_source_set("video_quality_test_fixture_api") {
  visibility = [ "*" ]
  testonly = true
  sources = [
    "test/video_quality_test_fixture.h",
  ]
  deps = [
    ":fec_controller_api",
    ":libjingle_peerconnection_api",
    ":simulated_network_api",
    "../call:fake_network",
    "../call:rtp_interfaces",
    "../test:test_common",
    "../test:video_test_common",
    "video_codecs:video_codecs_api",
  ]
}

rtc_source_set("test_dependency_factory") {
  visibility = [ "*" ]
  testonly = true
  sources = [
    "test/test_dependency_factory.cc",
    "test/test_dependency_factory.h",
  ]
  deps = [
    ":video_quality_test_fixture_api",
    "../rtc_base:checks",
    "../rtc_base:thread_checker",
    "//third_party/abseil-cpp/absl/memory",
  ]
}

if (rtc_include_tests) {
  rtc_source_set("create_video_quality_test_fixture_api") {
    visibility = [ "*" ]
    testonly = true
    sources = [
      "test/create_video_quality_test_fixture.cc",
      "test/create_video_quality_test_fixture.h",
    ]
    deps = [
      ":fec_controller_api",
      ":scoped_refptr",
      ":video_quality_test_fixture_api",
      "../video:video_quality_test",
      "//third_party/abseil-cpp/absl/memory",
    ]
  }

  rtc_source_set("create_network_emulation_manager_api") {
    visibility = [ "*" ]
    testonly = true
    sources = [
      "test/create_network_emulation_manager.cc",
      "test/create_network_emulation_manager.h",
    ]
    deps = [
      ":network_emulation_manager_api",
      "../test/scenario/network:emulated_network",
      "//third_party/abseil-cpp/absl/memory:memory",
    ]
  }
}

rtc_source_set("libjingle_logging_api") {
  visibility = [ "*" ]
  sources = [
    "rtc_event_log_output.h",
  ]
}

rtc_source_set("ortc_api") {
  visibility = [ "*" ]
  sources = [
    "ortc/packet_transport_interface.h",
    "ortc/rtp_transport_interface.h",
    "ortc/srtp_transport_interface.h",
  ]

  deps = [
    ":libjingle_peerconnection_api",
    ":rtp_headers",
    "//third_party/abseil-cpp/absl/types:optional",
  ]
}

rtc_source_set("rtc_stats_api") {
  visibility = [ "*" ]
  cflags = []
  sources = [
    "stats/rtc_stats.h",
    "stats/rtc_stats_collector_callback.h",
    "stats/rtc_stats_report.h",
    "stats/rtcstats_objects.h",
  ]

  deps = [
    ":scoped_refptr",
    "../rtc_base:checks",
    "../rtc_base:rtc_base_approved",
    "../rtc_base/system:rtc_export",
  ]
}

rtc_source_set("audio_options_api") {
  visibility = [ "*" ]
  sources = [
    "audio_options.cc",
    "audio_options.h",
  ]

  deps = [
    ":array_view",
    "../rtc_base:stringutils",
    "//third_party/abseil-cpp/absl/types:optional",
  ]
}

rtc_source_set("transport_api") {
  visibility = [ "*" ]
  sources = [
    "call/transport.cc",
    "call/transport.h",
  ]
}

rtc_source_set("bitrate_allocation") {
  visibility = [ "*" ]
  sources = [
    "call/bitrate_allocation.h",
  ]
  deps = [
    "units:data_rate",
    "units:time_delta",
  ]
}

rtc_source_set("simulated_network_api") {
  visibility = [ "*" ]
  sources = [
    "test/simulated_network.h",
  ]
  deps = [
    "../rtc_base:criticalsection",
    "../rtc_base:rtc_base",
    "//third_party/abseil-cpp/absl/types:optional",
  ]
}

rtc_source_set("network_emulation_manager_api") {
  visibility = [ "*" ]
  sources = [
    "test/network_emulation_manager.h",
  ]
  deps = [
    ":simulated_network_api",
    "../rtc_base:rtc_base",
  ]
}

rtc_source_set("fec_controller_api") {
  visibility = [ "*" ]
  sources = [
    "fec_controller.h",
  ]

  deps = [
    "..:webrtc_common",
    "../modules:module_fec_api",
  ]
}

rtc_source_set("array_view") {
  visibility = [ "*" ]
  sources = [
    "array_view.h",
  ]
  deps = [
    "../rtc_base:checks",
    "../rtc_base:type_traits",
  ]
}

rtc_source_set("refcountedbase") {
  visibility = [ "*" ]
  sources = [
    "ref_counted_base.h",
  ]
  deps = [
    "../rtc_base:rtc_base_approved",
  ]
}

rtc_source_set("ice_transport_factory") {
  visibility = [ "*" ]
  sources = [
    "ice_transport_factory.cc",
    "ice_transport_factory.h",
  ]
  deps = [
    ":libjingle_peerconnection_api",
    ":scoped_refptr",
    "../p2p:rtc_p2p",
    "../rtc_base:rtc_base",
    "//third_party/abseil-cpp/absl/memory:memory",
  ]
}

rtc_source_set("neteq_simulator_api") {
  visibility = [ "*" ]
  sources = [
    "test/neteq_simulator.cc",
    "test/neteq_simulator.h",
  ]
}

if (rtc_include_tests) {
  if (rtc_enable_protobuf) {
    rtc_source_set("audioproc_f_api") {
      visibility = [ "*" ]
      testonly = true
      sources = [
        "test/audioproc_float.cc",
        "test/audioproc_float.h",
      ]

      deps = [
        "../modules/audio_processing:api",
        "../modules/audio_processing:audio_processing",
        "../modules/audio_processing:audioproc_f_impl",
      ]
    }

    rtc_source_set("neteq_simulator_factory") {
      visibility = [ "*" ]
      testonly = true
      sources = [
        "test/neteq_simulator_factory.cc",
        "test/neteq_simulator_factory.h",
      ]
      deps = [
        ":neteq_simulator_api",
        "../modules/audio_coding:neteq_test_factory",
        "../rtc_base:checks",
        "../rtc_base:rtc_base_approved",
        "//third_party/abseil-cpp/absl/memory",
        "//third_party/abseil-cpp/absl/strings",
      ]
    }
  }

  rtc_source_set("simulcast_test_fixture_api") {
    visibility = [ "*" ]
    testonly = true
    sources = [
      "test/simulcast_test_fixture.h",
    ]
  }

  rtc_source_set("create_simulcast_test_fixture_api") {
    visibility = [ "*" ]
    testonly = true
    sources = [
      "test/create_simulcast_test_fixture.cc",
      "test/create_simulcast_test_fixture.h",
    ]
    deps = [
      ":simulcast_test_fixture_api",
      "../modules/video_coding:simulcast_test_fixture_impl",
      "../rtc_base:rtc_base_approved",
      "video_codecs:video_codecs_api",
      "//third_party/abseil-cpp/absl/memory",
    ]
  }

  rtc_source_set("videocodec_test_fixture_api") {
    visibility = [ "*" ]
    testonly = true
    sources = [
      "test/videocodec_test_fixture.h",
      "test/videocodec_test_stats.cc",
      "test/videocodec_test_stats.h",
    ]
    deps = [
      "..:webrtc_common",
      "../modules/video_coding:video_codec_interface",
      "../rtc_base:stringutils",
      "video_codecs:video_codecs_api",
    ]
  }

  rtc_source_set("create_videocodec_test_fixture_api") {
    visibility = [ "*" ]
    testonly = true
    sources = [
      "test/create_videocodec_test_fixture.cc",
      "test/create_videocodec_test_fixture.h",
    ]
    deps = [
      ":videocodec_test_fixture_api",
      "../modules/video_coding:video_codecs_test_framework",
      "../modules/video_coding:videocodec_test_impl",
      "../rtc_base:rtc_base_approved",
      "video_codecs:video_codecs_api",
      "//third_party/abseil-cpp/absl/memory",
    ]
  }

  rtc_source_set("mock_audio_mixer") {
    testonly = true
    sources = [
      "test/mock_audio_mixer.h",
    ]

    deps = [
      "../test:test_support",
      "audio:audio_mixer_api",
    ]
  }

  rtc_source_set("mock_frame_encryptor") {
    testonly = true
    sources = [
      "test/mock_frame_encryptor.cc",
      "test/mock_frame_encryptor.h",
    ]
    deps = [
      ":libjingle_peerconnection_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_frame_decryptor") {
    testonly = true
    sources = [
      "test/mock_frame_decryptor.cc",
      "test/mock_frame_decryptor.h",
    ]
    deps = [
      ":libjingle_peerconnection_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("fake_frame_encryptor") {
    testonly = true
    sources = [
      "test/fake_frame_encryptor.cc",
      "test/fake_frame_encryptor.h",
    ]
    deps = [
      ":array_view",
      ":libjingle_peerconnection_api",
      "..:webrtc_common",
      "../rtc_base:checks",
      "../rtc_base:rtc_base_approved",
    ]
  }

  rtc_source_set("fake_frame_decryptor") {
    testonly = true
    sources = [
      "test/fake_frame_decryptor.cc",
      "test/fake_frame_decryptor.h",
    ]
    deps = [
      ":array_view",
      ":libjingle_peerconnection_api",
      "..:webrtc_common",
      "../rtc_base:checks",
      "../rtc_base:rtc_base_approved",
    ]
  }

  rtc_source_set("mock_peerconnectioninterface") {
    testonly = true
    sources = [
      "test/mock_peerconnectioninterface.h",
    ]

    deps = [
      ":libjingle_peerconnection_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_rtp") {
    testonly = true
    sources = [
      "test/mock_rtpreceiver.h",
      "test/mock_rtpsender.h",
    ]

    deps = [
      ":libjingle_peerconnection_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_video_bitrate_allocator") {
    testonly = true
    sources = [
      "test/mock_video_bitrate_allocator.h",
    ]

    deps = [
      "../api/video:video_bitrate_allocator",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_video_bitrate_allocator_factory") {
    testonly = true
    sources = [
      "test/mock_video_bitrate_allocator_factory.h",
    ]

    deps = [
      "../api/video:video_bitrate_allocator_factory",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_video_codec_factory") {
    testonly = true
    sources = [
      "test/mock_video_decoder_factory.h",
      "test/mock_video_encoder_factory.h",
    ]

    deps = [
      "../api/video_codecs:video_codecs_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_video_decoder") {
    visibility = [ "*" ]

    testonly = true
    sources = [
      "test/mock_video_decoder.cc",
      "test/mock_video_decoder.h",
    ]

    deps = [
      "../api/video_codecs:video_codecs_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("mock_video_encoder") {
    visibility = [ "*" ]

    testonly = true
    sources = [
      "test/mock_video_encoder.cc",
      "test/mock_video_encoder.h",
    ]

    deps = [
      "../api/video_codecs:video_codecs_api",
      "../test:test_support",
    ]
  }

  rtc_source_set("fake_media_transport") {
    testonly = true

    sources = [
      "test/fake_media_transport.h",
    ]

    deps = [
      ":libjingle_peerconnection_api",
      "../rtc_base:checks",
      "//third_party/abseil-cpp/absl/memory",
    ]
  }

  rtc_source_set("loopback_media_transport") {
    testonly = true

    sources = [
      "test/loopback_media_transport.cc",
      "test/loopback_media_transport.h",
    ]

    deps = [
      ":libjingle_peerconnection_api",
      "../rtc_base:checks",
      "../rtc_base:rtc_base",
      "//third_party/abseil-cpp/absl/memory",
    ]
  }

  rtc_source_set("rtc_api_unittests") {
    testonly = true

    sources = [
      "array_view_unittest.cc",
      "rtc_error_unittest.cc",
      "rtp_parameters_unittest.cc",
      "test/loopback_media_transport_unittest.cc",
    ]

    deps = [
      ":array_view",
      ":libjingle_peerconnection_api",
      ":loopback_media_transport",
      "../rtc_base:checks",
      "../rtc_base:gunit_helpers",
      "../rtc_base:rtc_base_approved",
      "../test:test_support",
      "task_queue:task_queue_default_factory_unittests",
      "units:units_unittests",
    ]
  }

  rtc_source_set("compile_all_headers") {
    testonly = true

    sources = [
      "test/compile_all_headers.cc",
    ]

    deps = [
      ":fake_frame_decryptor",
      ":fake_frame_encryptor",
      ":fake_media_transport",
      ":loopback_media_transport",
      ":mock_audio_mixer",
      ":mock_frame_decryptor",
      ":mock_frame_encryptor",
      ":mock_peerconnectioninterface",
      ":mock_rtp",
      ":mock_video_bitrate_allocator",
      ":mock_video_bitrate_allocator_factory",
      ":mock_video_codec_factory",
      ":mock_video_decoder",
      ":mock_video_encoder",
      ":rtc_api_unittests",
      "units:units_unittests",
    ]
  }
}
