From 513b5595a8c07d9814db163aaf869d9404413cda Mon Sep 17 00:00:00 2001 From: "mark a. foltz" Date: Wed, 1 May 2019 16:34:00 -0700 Subject: [libcast] Adds Cast folder structure. This adds a basic folder structure for libcast code with README files and DEPS to enforce component layering per the design doc. Change-Id: I42555ae1f6b5f696bbbd4a8859da801740382304 Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/1592675 Commit-Queue: mark a. foltz Reviewed-by: Max Yakimakha Reviewed-by: Brandon Tolsch --- cast/DEPS | 17 +++++++++++++++++ cast/README.md | 5 +++++ cast/common/DEPS | 6 ++++++ cast/common/public/DEPS | 12 ++++++++++++ cast/common/public/README.md | 3 +++ cast/receiver/DEPS | 7 +++++++ cast/receiver/public/DEPS | 12 ++++++++++++ cast/receiver/public/README.md | 4 ++++ cast/sender/DEPS | 7 +++++++ cast/sender/public/DEPS | 12 ++++++++++++ cast/sender/public/README.md | 5 +++++ cast/streaming/DEPS | 10 ++++++++++ cast/streaming/README.md | 4 ++++ cast/third_party/DEPS | 8 ++++++++ cast/third_party/README.md | 4 ++++ 15 files changed, 116 insertions(+) create mode 100644 cast/DEPS create mode 100644 cast/README.md create mode 100644 cast/common/DEPS create mode 100644 cast/common/public/DEPS create mode 100644 cast/common/public/README.md create mode 100644 cast/receiver/DEPS create mode 100644 cast/receiver/public/DEPS create mode 100644 cast/receiver/public/README.md create mode 100644 cast/sender/DEPS create mode 100644 cast/sender/public/DEPS create mode 100644 cast/sender/public/README.md create mode 100644 cast/streaming/DEPS create mode 100644 cast/streaming/README.md create mode 100644 cast/third_party/DEPS create mode 100644 cast/third_party/README.md (limited to 'cast') diff --git a/cast/DEPS b/cast/DEPS new file mode 100644 index 00000000..e8615f96 --- /dev/null +++ b/cast/DEPS @@ -0,0 +1,17 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # OSP code is strictly verboten. + '-api', + '-demo', + '-discovery', + '-go', + '-msgs', + + # Intra-libcast dependencies must be explicit. + '-cast', + + # All libcast code can use platform and cast/third_party. + '+cast/third_party', + '+platform' +] diff --git a/cast/README.md b/cast/README.md new file mode 100644 index 00000000..1b890c5b --- /dev/null +++ b/cast/README.md @@ -0,0 +1,5 @@ +# libcast + +libcast is an open source implementation of the Cast procotol supporting Cast +applications and streaming to Cast-compatible devices. + diff --git a/cast/common/DEPS b/cast/common/DEPS new file mode 100644 index 00000000..e1023950 --- /dev/null +++ b/cast/common/DEPS @@ -0,0 +1,6 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # libcast common code must depend on neither the sender nor the receiver. + '+cast/common' +] diff --git a/cast/common/public/DEPS b/cast/common/public/DEPS new file mode 100644 index 00000000..7060c480 --- /dev/null +++ b/cast/common/public/DEPS @@ -0,0 +1,12 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # By default, openscreen implementation libraries should not be exposed + # through public APIs. + '-base', + '-platform', + + # Dependencies on the implementation are not allowed in public/. + '-cast/common', + '+cast/common/public' +] diff --git a/cast/common/public/README.md b/cast/common/public/README.md new file mode 100644 index 00000000..02043599 --- /dev/null +++ b/cast/common/public/README.md @@ -0,0 +1,3 @@ +# cast/common/public + +This component contains code shared between the sender and receiver modules of libcast. diff --git a/cast/receiver/DEPS b/cast/receiver/DEPS new file mode 100644 index 00000000..7bdadde7 --- /dev/null +++ b/cast/receiver/DEPS @@ -0,0 +1,7 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # libcast receiver code must not depend on the sender. + '+cast/common/public', + '+cast/receiver' +] diff --git a/cast/receiver/public/DEPS b/cast/receiver/public/DEPS new file mode 100644 index 00000000..714c37a4 --- /dev/null +++ b/cast/receiver/public/DEPS @@ -0,0 +1,12 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # By default, openscreen implementation libraries should not be exposed + # through public APIs. + '-base', + '-platform', + + # Dependencies on the implementation are not allowed in public/. + '-cast/receiver', + '+cast/receiver/public' +] diff --git a/cast/receiver/public/README.md b/cast/receiver/public/README.md new file mode 100644 index 00000000..cba74b54 --- /dev/null +++ b/cast/receiver/public/README.md @@ -0,0 +1,4 @@ +# cast/receiver/public + +This module contains an implementation of the Cast "receiver", i.e. the server +on a Cast device that receives requests to launch apps. diff --git a/cast/sender/DEPS b/cast/sender/DEPS new file mode 100644 index 00000000..e386f11a --- /dev/null +++ b/cast/sender/DEPS @@ -0,0 +1,7 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # libcast sender code must not depend on the receiver. + '+cast/common/public', + '+cast/sender' +] diff --git a/cast/sender/public/DEPS b/cast/sender/public/DEPS new file mode 100644 index 00000000..44de6584 --- /dev/null +++ b/cast/sender/public/DEPS @@ -0,0 +1,12 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # By default, openscreen implementation libraries should not be exposed + # through public APIs. + '-base', + '-platform', + + # Dependencies on the implementation are not allowed in public/. + '-cast/sender', + '+cast/sender/public' +] diff --git a/cast/sender/public/README.md b/cast/sender/public/README.md new file mode 100644 index 00000000..ace86163 --- /dev/null +++ b/cast/sender/public/README.md @@ -0,0 +1,5 @@ +# cast/receiver/public + +This module contains an implementation of the Cast "sender", i.e. the client +that discovers Cast devices on the LAN and launches apps on them. + diff --git a/cast/streaming/DEPS b/cast/streaming/DEPS new file mode 100644 index 00000000..6a332471 --- /dev/null +++ b/cast/streaming/DEPS @@ -0,0 +1,10 @@ +# -*- Mode: Python; -*- + +# In the future, the streaming code will likely split into sender and receiver +# modules, at which point this can become finer-grained. +include_rules = [ + '+cast/common', + '+cast/receiver', + '+cast/sender', + '+cast/streaming' +] diff --git a/cast/streaming/README.md b/cast/streaming/README.md new file mode 100644 index 00000000..a34f9ca2 --- /dev/null +++ b/cast/streaming/README.md @@ -0,0 +1,4 @@ +# cast/streaming + +This module contains an implementation of Cast Streaming, a real-time media +streaming protocol between Cast senders and Cast receivers. diff --git a/cast/third_party/DEPS b/cast/third_party/DEPS new file mode 100644 index 00000000..33d2a399 --- /dev/null +++ b/cast/third_party/DEPS @@ -0,0 +1,8 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # No dependencies on libcast. + '-base', + '-platform', + '-third_party' +] diff --git a/cast/third_party/README.md b/cast/third_party/README.md new file mode 100644 index 00000000..ce4cc5cf --- /dev/null +++ b/cast/third_party/README.md @@ -0,0 +1,4 @@ +# cast/third_party + +Directory for third party dependencies of libcast. + -- cgit v1.2.3