From c18f9462c22d877b2e51f6d92daa205c70f019e2 Mon Sep 17 00:00:00 2001 From: John Bresnahan Date: Mon, 20 May 2013 13:29:01 -1000 Subject: [PATCH] Adding a picture to the documentation --- doc/source/architecture.rst | 5 +++++ doc/source/staccato_internal_architecture.png | Bin 0 -> 38684 bytes 2 files changed, 5 insertions(+) create mode 100644 doc/source/staccato_internal_architecture.png diff --git a/doc/source/architecture.rst b/doc/source/architecture.rst index 669291b..1ae43aa 100644 --- a/doc/source/architecture.rst +++ b/doc/source/architecture.rst @@ -5,6 +5,11 @@ Stacatto Architecture This document describes the basic internal architecture of the Staccato system. + +.. image:: staccato_internal_architecture.png + :width: 738 + :height: 499 + REST API -------- diff --git a/doc/source/staccato_internal_architecture.png b/doc/source/staccato_internal_architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..8ef3cbfb405de28439ba8e7511d31ab6597bd19e GIT binary patch literal 38684 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 Sp6vzz0000