Kaynağa Gözat

put initial files

Marian Weger 12 yıl önce
ebeveyn
işleme
b5698036c4

+ 674 - 0
GPL-3.0.txt

@@ -0,0 +1,674 @@
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
+
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Use with the GNU Affero General Public License.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+  If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+    <program>  Copyright (C) <year>  <name of author>
+    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+  You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+  The GNU General Public License does not permit incorporating your program
+into proprietary programs.  If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.  But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.

+ 18 - 0
LICENSE.txt

@@ -0,0 +1,18 @@
+KOLLABS is released under 
+
+GPL v3
+
+KOLLABS
+Copyright (C) 2012  Marian Weger
+
+    This program is free software: you can redistribute it and/or modify 
+    it under the terms of the GNU General Public License as published by 
+    the Free Software Foundation, either version 3 of the License, 
+    or (at your option) any later version.
+
+    THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,   
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.

Dosya farkı çok büyük olduğundan ihmal edildi
+ 24 - 0
README.txt


+ 991 - 0
ds-help.pd

@@ -0,0 +1,991 @@
+#N canvas 124 22 960 756 10;
+#X obj 40 35 cnv 15 750 16 empty empty KOLLABS_DATA_STORAGE_SYSTEM
+20 8 0 14 -233017 -66577 0;
+#X obj 40 62 cnv 15 370 240 empty empty description 5 8 0 14 -233017
+-66577 0;
+#X obj 40 735 cnv 15 370 50 empty empty Load_preset_file_on_startup
+20 12 0 14 -261682 -66577 0;
+#X obj 40 315 cnv 15 370 70 empty empty GUI_CONTROLS 20 12 0 14 -232576
+-66577 0;
+#X obj 40 395 cnv 15 370 170 empty empty Access_controls_from_"outside"
+20 12 0 14 -261682 -66577 0;
+#X msg 145 455 0;
+#X msg 175 455 1;
+#X msg 205 455 2;
+#X obj 145 481 s /help/ds/scene;
+#X text 61 763 Look inside here:;
+#X text 60 516 Look inside here for a list of the most important parameters:
+;
+#X obj 420 62 cnv 15 370 300 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#X obj 432 306 print ev_storage_output;
+#X obj 432 282 spigot;
+#X obj 465 260 tgl 15 0 empty empty print 17 7 0 10 -262144 -1 -1 0
+1;
+#X text 60 431 Change scene by clicking these message boxes:;
+#X obj 40 795 cnv 15 370 80 empty empty File_layout 20 12 0 14 -228856
+-66577 0;
+#X text 54 848 Have a look on the syntax:;
+#X text 53 821 You can easily edit the preset files with any text editor.
+;
+#X text 58 350 The GUI controls are explained in here:;
+#X obj 420 371 cnv 15 370 80 empty empty Registering_variables 20 12
+0 14 -261234 -66577 0;
+#X text 438 400 Look inside to see how new variables can get registered:
+;
+#X obj 420 462 cnv 15 370 700 empty empty Scene_transitions 20 12 0
+14 -203904 -66577 0;
+#X obj 618 492 bng 15 250 50 0 /help/ds/advanced/vis /help/ds/advanced/vis
+advanced 17 7 0 10 -262144 -1 -1;
+#X text 438 491 Go to the advanced settings:;
+#X obj 618 519 bng 15 250 50 0 /help/ds/reg/dialog /help/ds/reg/dialog
+register_settings 17 7 0 10 -4032 -1 -1;
+#X text 438 521 And open the register list:;
+#X text 438 541 There \, you can enter the scene transition dialog
+for all registered variables of this domain.;
+#X text 438 571 The scene transition settings are saved with the DESTINATION
+scene.;
+#X text 367 35 (c)2012 Marian Weger;
+#X obj 425 697 cnv 15 360 80 empty empty Delaying_&_Chaining_Recalls
+20 12 0 14 -204800 -66577 0;
+#X obj 425 606 cnv 15 360 80 empty empty Fade_/_Morph 20 12 0 14 -204800
+-66577 0;
+#X text 443 635 Look inside to see how it is possible to fade between
+scenes:;
+#X text 443 726 It is also possible to delay recalls or to chain them
+to another one:;
+#X obj 424 787 cnv 15 360 80 empty empty Occupy 20 12 0 14 -204800
+-66577 0;
+#X text 442 816 A variable can be set to ignore all recalls \, until
+it is fully dispatched.;
+#X obj 424 877 cnv 15 360 80 empty empty Additional_register_options
+20 12 0 14 -204800 -66577 0;
+#X text 442 906 There are some additional options for registers:;
+#X obj 40 885 cnv 15 370 120 empty empty Playlist_View 20 12 0 14 -261682
+-66577 0;
+#X obj 40 1013 cnv 15 370 120 empty empty Advanced_File_Operations
+20 12 0 14 -261234 -66577 0;
+#X obj 154 1068 bng 15 250 50 0 /help/ds/edit/dialog /help/ds/edit/dialog
+edit 17 7 0 10 -258113 -1 -1;
+#X obj 239 1042 bng 15 250 50 0 /help/ds/advanced/vis /help/ds/advanced/vis
+advanced 17 7 0 10 -262144 -1 -1;
+#X text 59 1041 Go to the advanced settings:;
+#X text 59 1068 Click "edit":;
+#N canvas 185 56 831 476 \$0-file_layout 0;
+#X obj 11 15 cnv 15 810 450 empty empty PRESET_FILE_LAYOUT 20 12 0
+14 -233017 -66577 0;
+#X text 215 22 The textfile can also be edited with a simple text editor.
+;
+#X text 25 62 The File is formatted as follows:;
+#X obj 22 93 cnv 20 420 350 empty empty empty 20 12 0 14 -262144 -66577
+0;
+#X text 29 101 ======================== GLOBAL ========================
+;
+#X text 29 201 #data;
+#X text 29 271 ======================== SCENE <nr> <name>;
+#X text 288 271 ========================;
+#X text 455 152 After the #settings header \, the settings of the global
+data are saved.;
+#X text 455 182 After the #data header \, the global data is saved.
+;
+#X text 455 302 After the #settings header \, the settings of the scene
+data are saved.;
+#X text 455 342 After the #data header \, the scene data is saved.
+;
+#X text 455 112 After this header \, the global data is saved.;
+#X text 455 92 Every preset file starts with a GLOBAL SECTION:;
+#X text 455 222 For every scene \, there is a SCENE header \, and two
+sections for settings and data.;
+#X text 455 252 After this header \, a scene begins. It has a number
+(from 0 to N) and a name. The name can only be set by an external text
+editor.;
+#X text 29 131 #settings;
+#X text 29 177 ...;
+#X text 29 234 <variable_name_2> <value>;
+#X text 29 221 <variable_name_1> <value>;
+#X text 29 247 ...;
+#X text 29 151 <setting_name_1> <value>;
+#X text 29 164 <setting_name_2> <value>;
+#X text 29 371 #data;
+#X text 29 301 #settings;
+#X text 29 347 ...;
+#X text 29 404 <variable_name_2> <value>;
+#X text 29 391 <variable_name_1> <value>;
+#X text 29 417 ...;
+#X text 29 321 <setting_name_1> <value>;
+#X text 29 334 <setting_name_2> <value>;
+#X restore 238 848 pd \$0-file_layout;
+#N canvas 185 36 576 616 \$0-controls 0;
+#X text 96 -373 (c)2011 Marian Weger /part of EXTENDED VIEW toolkit/
+gpl v3;
+#X obj 3 -394 cnv 15 550 600 empty empty CONTROLS 20 12 0 14 -228856
+-66577 0;
+#X obj 41 -354 nbx 3 15 0 999 0 0 /help/ds/scene/current /help/ds/scene/current
+scene 0 -8 0 12 -204786 -1 -1 0 256;
+#X obj 22 -354 bng 15 250 50 0 /0/ds/scene/current/prev /0/ds/scene/current/prev
+< 4 7 0 10 -204786 -1 -1;
+#X obj 92 -354 bng 15 250 50 0 /help/ds/scene/current/next /help/ds/scene/current/next
+> 5 7 0 10 -204786 -1 -1;
+#X obj 115 -354 bng 15 250 50 0 /help/ds/recall /help/ds/recall recall
+17 7 0 10 -4034 -1 -1;
+#X obj 24 -193 bng 15 250 50 0 /help/ds/save /help/ds/save save 17
+7 0 10 -258113 -1 -1;
+#X obj 24 -99 bng 15 250 50 0 /help/ds/load /help/ds/load load 17 7
+0 10 -4034 -1 -1;
+#X obj 94 -193 bng 15 250 50 0 /help/ds/resave /help/ds/resave resave
+17 7 0 10 -258113 -1 -1;
+#X obj 94 -99 bng 15 250 50 0 /help/ds/reload /help/ds/reload reload
+17 7 0 10 -4034 -1 -1;
+#X obj 114 -270 bng 15 250 50 0 /help/ds/store /help/ds/store store
+17 7 0 10 -258113 -1 -1;
+#X obj 41 -270 nbx 3 15 0 999 0 0 /help/ds/scene/selected /help/ds/scene/selected
+empty 0 -8 0 12 -261234 -1 -1 0 256;
+#X obj 22 -270 bng 15 250 50 0 /help/ds/scene/selected/prev /help/ds/scene/selected/prev
+< 4 7 0 10 -261234 -1 -1;
+#X obj 92 -270 bng 15 250 50 0 /help/ds/scene/selected/next /help/ds/scene/selected/next
+> 5 7 0 10 -261234 -1 -1;
+#X text 195 -205 The SAVE section lets you save all scenes from RAM
+to a textfile on the HDD. Click "save" to open a save dialog. "resave"
+will let you save to the last specified filename.;
+#X text 195 -105 The LOAD section lets you load all scenes from a textfile
+to RAM. Click "load" to open a load dialog. "reload" will let you load
+the last specified filename.;
+#X text 195 -355 In the RECALL section \, you can recall a scene from
+RAM.;
+#X text 195 -275 In the STORE section \, you can store the current
+state of the patch into RAM. Select a destination scene and press "store".
+;
+#X text 195 -325 Switch between presets 0-2 to see the effect.;
+#X obj 24 -39 bng 15 250 50 0 /help/ds/advanced/vis /help/ds/advanced/vis
+advanced 17 7 0 10 -262144 -1 -1;
+#X obj 24 66 bng 15 250 50 0 /ev/storage/help/playlist/vis /ev/storage/help/playlist/vis
+playlist 17 7 0 10 -262144 -1 -1;
+#X text 195 -39 This button opens the advanced options.;
+#X text 195 68 This button opens the playlist view.;
+#X obj 200 -9 cnv 15 260 60 empty empty advanced_settings 20 12 0 14
+-204800 -66577 0;
+#X text 230 23 Look inside:;
+#X obj 200 101 cnv 15 260 60 empty empty playlist_view 20 12 0 14 -204800
+-66577 0;
+#X text 230 133 Look inside:;
+#N canvas 67 22 573 744 \$0-advanced_settings 0;
+#X obj 4 8 cnv 15 550 750 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 23 119 tgl 15 1 /help/ds/settings/state /help/ds/settings/state
+recall_settings 17 7 0 10 -262144 -1 -1 1 1;
+#X obj 23 39 tgl 15 1 /help/ds/data/state /help/ds/data/state recall_data
+17 7 0 10 -262144 -1 -1 1 1;
+#X obj 23 282 bng 15 250 50 0 /help/ds/reg/dialog /help/ds/reg/dialog
+register_settings 17 7 0 10 -4032 -1 -1;
+#X obj 23 206 tgl 15 1 /help/ds/global/state /help/ds/global/state
+recall_global 17 7 0 10 -262144 -1 -1 0 1;
+#X text 163 37 "recall_data" must be enabled to load the saved data
+on a recall.;
+#X text 163 117 "recall_settings" must be enabled to recall the scene
+transition settings for the saved data.;
+#X text 163 204 "recall_global" must be enabled to recall the global
+parameters for this storage domain with each recall.;
+#X text 163 281 This button opens a list of all variables that are
+registered with this domain.;
+#X text 163 67 (All variables are saved within the "data" section)
+;
+#X text 163 147 (The scene transition settings for the variables are
+saved within the "settings" section);
+#X text 163 234 ("recall_data" and "recall_settings" are saved in the
+"GLOBAL" section);
+#X obj 168 349 bng 15 250 50 0 /i/am/a/variable/ds/dialog /i/am/a/variable/ds/dialog
+/i/am/a/variable 20 7 0 10 -262144 -1 -1;
+#X text 166 325 Click on a variable to get to its scene transition
+dialog.;
+#X obj 164 386 cnv 15 280 60 empty empty Scene_transition_dialog 20
+12 0 14 -204800 -66577 0;
+#X text 174 418 Look inside:;
+#N canvas 71 22 960 756 \$0-scene_transition_dialog 0;
+#X obj 4 6 cnv 15 910 850 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 23 168 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/variable/ds/morph/time
+/i/am/a/variable/ds/morph/time time/s 47 7 0 10 -4034 -1 -1 0 256;
+#X obj 23 128 tgl 15 0 /i/am/a/variable/ds/morph /i/am/a/variable/ds/morph
+morph 17 7 0 10 -4034 -1 -1 0 1;
+#X obj 23 631 bng 15 250 50 0 /i/am/a/variable/ds/print /i/am/a/variable/ds/print
+print_current_value 17 7 0 10 -262144 -1 -1;
+#X obj 23 288 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/variable/ds/morph/curve/shape
+/i/am/a/variable/ds/morph/curve/shape shape 47 7 0 10 -204786 -1 -1
+0 256;
+#X obj 23 308 nbx 4 14 0 1 0 0 /i/am/a/variable/ds/morph/curve/weight
+/i/am/a/variable/ds/morph/curve/weight weight 47 7 0 10 -204786 -1
+-1 0 256;
+#X obj 23 338 nbx 4 14 10 10000 0 0 /i/am/a/variable/ds/morph/curve/resolution
+/i/am/a/variable/ds/morph/curve/resolution resolution 47 7 0 10 -204786
+-1 -1 100 256;
+#X obj 23 378 hradio 15 1 0 4 /i/am/a/variable/ds/morph/curve/quality
+/i/am/a/variable/ds/morph/curve/quality quality 0 -8 0 10 -204786 -1
+-1 0;
+#X obj 23 244 bng 15 250 50 0 /i/am/a/variable/ds/morph/curve/vis /i/am/a/variable/ds/morph/curve/vis
+show_curve 17 7 0 10 -204786 -1 -1;
+#X obj 23 188 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/variable/ds/morph/timegrain
+/i/am/a/variable/ds/morph/timegrain time-grain/ms 47 7 0 10 -4034 -1
+-1 20 256;
+#X obj 23 88 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/variable/ds/delay /i/am/a/variable/ds/delay
+delay 47 7 0 10 -204800 -1 -1 0 256;
+#X obj 23 461 tgl 15 0 /i/am/a/variable/ds/occupy /i/am/a/variable/ds/occupy
+occupy 17 7 0 10 -262130 -1 -1 1 1;
+#X text 173 85 To delay the recall of one variable \, a delay (in seconds)
+can be set.;
+#X text 173 125 Turn on "morph" to get a smooth fade from the last
+value to the value that is saved in the current scene.;
+#X text 173 165 Set the fade time in seconds.;
+#X text 173 189 Set the data-rate of the fade in ms (default = 20 ms)
+;
+#X text 173 199 comment;
+#X text 173 228 If no curve is specified \, a linear fade will be applied.
+;
+#X text 173 40 The values are saved separately for each parameter in
+every scene. They are saved in the "settings" section.;
+#X text 173 245 Show the current appearance of the fade curve.;
+#X text 173 286 Shape lets you chose a shape for the curve.;
+#X text 173 306 Weight is a mix factor between a linear fade and the
+chosen shape.;
+#X text 173 339 This lets you specify the resolution of the fade curve.
+;
+#X text 538 420 2: linear interpolation;
+#X text 538 434 3: tabread4 4-point polynomianl interpolation;
+#X text 538 406 1: no interpolation;
+#X text 538 392 0: bypass --> output=input (default);
+#X text 173 379 Choose the quality in which the fade curve will be
+applied:;
+#X obj 539 268 cnv 15 370 90 empty empty fadecurve 20 12 0 14 -249661
+-66577 0;
+#X obj 657 329 fadecurve-help;
+#X text 549 300 See [fadecurve-help] for more information on these
+values.;
+#X text 173 462 If "occupy" is set \, the variable will not respond
+to another scene recall while it is fading.;
+#X text 173 632 For debug reasons \, you can print the current value
+of the variable to the console.;
+#X obj 23 683 tgl 15 0 \$2/ds/set \$2/ds/set set 17 7 0 10 -228856
+-1 -1 0 1;
+#X obj 23 736 tgl 15 0 \$2/ds/change \$2/ds/change change 17 7 0 10
+-228856 -1 -1 0 1;
+#X obj 23 783 tgl 15 0 \$2/ds/nomorph \$2/ds/nomorph morph_deactivate
+17 7 0 10 -228856 -1 -1 0 1;
+#X text 173 678 If "set" is activated \, a "set" message will be prepended
+to the message when recalled. This option is to prevent loops. It aims
+on special cases \, which are not explained here.;
+#X text 173 736 If the "change" parameter is set \, the message will
+be recalled if the new value differs from the old value.;
+#X obj 659 741 change;
+#X text 528 742 See [change object]:;
+#X text 173 782 Deactivate morphing functionality for this variable.
+This needs to be set as a creation argument for [ds_reg] \, when a
+variable gets registered to the storage.;
+#X text 609 810 nomorph argument deactivates morph functionality.;
+#X obj 610 790 ds_reg foo /\$0/bar nomorph;
+#X obj 14 536 cnv 15 130 60 empty empty empty 20 12 0 14 -191407 -66577
+0;
+#X obj 21 542 bng 15 250 50 0 /i/am/a/variable/ds/settings/copy /i/am/a/variable/ds/settings/copy
+COPY_to_buffer 17 7 0 10 -4160 -1 -1;
+#X obj 21 576 bng 15 250 50 0 /i/am/a/variable/ds/settings/paste /i/am/a/variable/ds/settings/paste
+PASTE_from_buffer 17 7 0 10 -260097 -1 -1;
+#X text 173 535 Copy all the settings from above to the register settings
+buffer.;
+#X text 173 576 Paste the register settings buffer to this register.
+;
+#X coords 0 756 1 755 85 60 0;
+#X restore 257 418 pd \$0-scene_transition_dialog;
+#X obj 23 656 bng 15 250 50 0 /help/ds/edit/dialog /help/ds/edit/dialog
+edit 17 7 0 10 -258113 -1 -1;
+#X text 163 651 Click on this button to open the file editing dialog.
+;
+#X obj 164 676 cnv 15 280 60 empty empty edit 20 12 0 14 -204800 -66577
+0;
+#X text 174 708 Look inside:;
+#N canvas 162 190 716 469 \$0-edit 0;
+#X obj 4 3 cnv 15 700 450 empty empty EDITING_ACTIONS 20 12 0 14 -233017
+-66577 0;
+#X obj 20 230 bng 15 250 50 0 /help/ds/edit/scene/cut /help/ds/edit/scene/cut
+cut 17 7 0 10 -257985 -1 -1;
+#X obj 20 270 bng 15 250 50 0 /help/ds/edit/scene/delete /help/ds/edit/scene/delete
+delete 17 7 0 10 -258113 -1 -1;
+#X obj 20 290 bng 15 250 50 0 /help/ds/edit/scene/paste-override /help/ds/edit/scene/paste-override
+paste_overwrite 17 7 0 10 -4032 -1 -1;
+#X obj 20 250 bng 15 250 50 0 /help/ds/edit/scene/copy /help/ds/edit/scene/copy
+copy 17 7 0 10 -159808 -1 -1;
+#X obj 20 310 bng 15 250 50 0 /help/ds/edit/scene/insert /help/ds/edit/scene/insert
+insert_blank 17 7 0 10 -204800 -1 -1;
+#X obj 20 330 bng 15 250 50 0 /help/ds/edit/scene/paste-insert /help/ds/edit/scene/paste-insert
+paste_insert 17 7 0 10 -204800 -1 -1;
+#X obj 20 142 bng 15 250 50 0 /help/ds/edit/clear /help/ds/edit/clear
+clear_all 17 7 0 10 -262144 -1 -1;
+#X obj 20 210 bng 15 250 50 0 /help/ds/edit/scene/clear /help/ds/edit/scene/clear
+clear 17 7 0 10 -260097 -1 -1;
+#X obj 20 390 bng 15 250 50 0 /main/ds/print/buffer /main/ds/print/buffer
+print_clipboard 17 7 0 10 -228856 -1 -1;
+#X text 14 182 Actions for the currently selected scene:;
+#X text 14 367 Debug:;
+#X obj 20 411 bng 15 250 50 0 /main/ds/print /main/ds/print print_all
+17 7 0 10 -262144 -1 -1;
+#X text 16 121 Actions on the whole buffer:;
+#X obj 532 165 nbx 5 14 -1e+37 1e+37 0 0 /help/ds/scene/selected /help/ds/scene/selected
+selected 0 -8 0 10 -261234 -1 -1 0 256;
+#X text 412 130 They apply on the currently SELECTED scene:;
+#X text 153 398 For debugging: Print contents to the console.;
+#X text 153 309 Insert blank scene before the selected scene.;
+#X text 153 329 Insert copied/cut scene before the selected scene.
+;
+#X text 153 289 Paste scene replacing the selected scene.;
+#X text 153 269 Delete selected scene.;
+#X text 153 249 Copy selected scene to clipboard.;
+#X text 153 229 Cut selected scene to clipboard.;
+#X text 153 209 Clear contents of the selected scene.;
+#X text 153 141 Clear the whole file.;
+#X text 15 35 This dialog provides some file operations on the preset
+file.;
+#X text 15 65 It is possible to undo these operations by reloading
+the preset file from the HDD.;
+#X restore 267 713 pd \$0-edit;
+#X obj 23 474 bng 15 250 50 0 /help/ds/reg/settings/buffer /help/ds/reg/settings/buffer
+register_settings_buffer 17 7 0 10 -257985 -1 -1;
+#X text 166 505 The register settings buffer acts as a clipboard for
+scene transition settings. The individual registers can copy their
+settings to it or take the contents of the buffer. The buffer can also
+be edited by hand.;
+#X obj 164 566 cnv 15 280 60 empty empty register_settings_buffer 20
+12 0 14 -204800 -66577 0;
+#X text 174 598 Look inside:;
+#N canvas 428 83 731 472 \$0-buffer 0;
+#X obj -6 3 cnv 15 700 450 empty empty Register_Settings_Buffer 20
+12 0 14 -233017 -66577 0;
+#X obj 97 100 nbx 4 14 -1e+37 1e+37 0 0 /help/ds/reg/settings/buffer/morph/time
+/help/ds/reg/settings/buffer/morph/time time/s 47 7 0 10 -4034 -1 -1
+0 256;
+#X obj 11 100 tgl 15 0 /help/ds/reg/settings/buffer/morph /help/ds/reg/settings/buffer/morph
+morph 17 7 0 10 -4034 -1 -1 0 1;
+#X obj 11 50 tgl 15 0 /help/ds/reg/settings/buffer/slave /help/ds/reg/settings/buffer/slave
+slave 17 7 0 10 -203904 -1 -1 0 1;
+#X obj 97 140 nbx 4 14 -1e+37 1e+37 0 0 /help/ds/reg/settings/buffer/morph/curve/shape
+/help/ds/reg/settings/buffer/morph/curve/shape shape 47 7 0 10 -204786
+-1 -1 0 256;
+#X obj 97 160 nbx 4 14 0 1 0 0 /help/ds/reg/settings/buffer/morph/curve/weight
+/help/ds/reg/settings/buffer/morph/curve/weight weight 47 7 0 10 -204786
+-1 -1 0 256;
+#X obj 97 180 nbx 4 14 10 10000 0 0 /help/ds/reg/settings/buffer/morph/curve/resolution
+/help/ds/reg/settings/buffer/morph/curve/resolution resolution 47 7
+0 10 -204786 -1 -1 100 256;
+#X obj 11 180 hradio 15 1 0 4 /help/ds/reg/settings/buffer/morph/curve/quality
+/help/ds/reg/settings/buffer/morph/curve/quality quality 0 -8 0 10
+-204786 -1 -1 0;
+#X obj 11 140 bng 15 250 50 0 /help/ds/reg/settings/buffer/morph/curve/vis
+/help/ds/reg/settings/buffer/morph/curve/vis show_curve 17 7 0 10 -204786
+-1 -1;
+#X obj 97 120 nbx 4 14 -1e+37 1e+37 0 0 /help/ds/reg/settings/buffer/morph/timegrain
+/help/ds/reg/settings/buffer/morph/timegrain time-grain/ms 47 7 0 10
+-4034 -1 -1 20 256;
+#X obj 11 70 nbx 4 14 -1e+37 1e+37 0 0 /help/ds/reg/settings/buffer/delay
+/help/ds/reg/settings/buffer/delay delay 47 7 0 10 -204800 -1 -1 0
+256;
+#X obj 11 220 tgl 15 0 /help/ds/reg/settings/buffer/occupy /help/ds/reg/settings/buffer/occupy
+occupy 17 7 0 10 -262130 -1 -1 1 1;
+#X obj 11 322 bng 15 250 50 0 /help/ds/reg/settings/buffer/paste/all
+/help/ds/reg/settings/buffer/paste/all send_to_all_registers 17 7 0
+10 -258113 -1 -1;
+#X text 285 87 These controls also exist in the "scene transition dialog"
+of the individual registers. In this buffer \, they work exactly the
+same. The registers can copy their settings to the buffer and paste
+the buffer settings to themselves.;
+#X text 201 321 This button pastes the buffer settings from above to
+all the registers of the current domain. This is sometimes useful if
+all parameters should be morphed the same way.;
+#X restore 267 603 pd \$0-buffer;
+#X restore 314 23 pd \$0-advanced_settings;
+#N canvas 394 102 717 314 \$0-playlist 0;
+#X obj 2 -168 cnv 15 700 300 empty empty playlist_view 20 12 0 14 -228856
+-66577 0;
+#X text 14 -142 It is possible to create multiple playlist windows
+by using the object [ds_pl_gui <domain>].;
+#X text 337 -103 The green column on the left marks the current scene.
+;
+#X text 337 -63 The second column (purple) shows the scene numbers.
+;
+#X text 337 -23 The big row in the center shows the scene names.;
+#X text 337 -8 The names must be set by a text editor in the corresponding
+preset file. Per default \, they are set to "<unnamed>".;
+#X text 337 32 The red row on the right marks the currently selected
+scene.;
+#X text 337 51 With the scrollbar on the right \, it is possible to
+scroll throgh the scenes.;
+#X text 337 101 On the bottom \, the current scene number and its name
+are shown.;
+#X text 337 -88 Click on it to move the cursor.;
+#X obj 14 -100 ds_pl_gui help;
+#X coords 0 314 1 313 85 60 0;
+#X restore 314 133 pd \$0-playlist;
+#X restore 308 350 pd \$0-controls;
+#N canvas 131 51 603 374 \$0-init 0;
+#X obj 77 79 loadbang;
+#X obj 57 79 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 77 103 del 1000;
+#X text 222 45 If you want the storage to recall a scene from a textfile
+on startup \, you can specify it as follows:;
+#X text 222 140 use the "/<domain>/ds/loadfile" message to load a given
+file path:;
+#X text 222 98 Delay the load by one second to make sure that the patch
+got fully loaded.;
+#X obj 77 125 t b b;
+#X obj 77 240 del 2000;
+#X text 222 238 Delay the recall by two seconds to make sure that the
+textfile got fully loaded to RAM.;
+#X text 232 283 Recall scene "0".;
+#X text 150 103 <--------;
+#X text 150 242 <--------;
+#X text 188 282 <----;
+#X msg 77 282 \; /help/ds/scene 0 \;;
+#X text 140 208 (pathes relative to "./libs/kollabs");
+#X msg 104 173 \; /help/ds/loadfile ds-help.txt;
+#X connect 0 0 2 0;
+#X connect 1 0 2 0;
+#X connect 2 0 6 0;
+#X connect 6 0 7 0;
+#X connect 6 1 15 0;
+#X connect 7 0 13 0;
+#X restore 179 762 pd \$0-init;
+#N canvas 0 22 619 624 \$0-parameter_list 0;
+#X obj 6 5 cnv 15 600 600 empty empty control_parameters 20 12 0 14
+-233017 -66577 0;
+#X text 223 532 reloads the last given filepath from harddisk.;
+#X text 223 452 resaves the current scene-set to the last given path.
+;
+#X text 223 547 loads the scene-set of the given filepath;
+#X text 223 502 opens a dialog to load a scene-set from a file from
+the harddisk.;
+#X text 223 422 opens a dialog to save the current scene-set to a preset
+file on the harddisk.;
+#X text 223 467 saves the current scene-set to the given filepath;
+#X text 223 249 recalls the selected scene of the current scene-set
+;
+#X text 223 264 sets the scene number to be recalled by "recall" or
+to be automatically recalled if autorecall=1;
+#X text 223 294 decrement scene number by 1;
+#X text 223 309 increment scene number by 1;
+#X text 223 407 sets the filepath to be loaded/saved on next reload/resave
+;
+#X text 11 502 /<domain>/ds/load;
+#X text 11 422 /<domain>/ds/save;
+#X text 11 532 /<domain>/ds/reload;
+#X text 11 452 /<domain>/ds/resave;
+#X text 11 407 /<domain>/ds/filename;
+#X text 11 547 /<domain>/ds/loadfile;
+#X text 11 467 /<domain>/ds/savefile;
+#X text 11 249 /<domain>/ds/recall;
+#X text 11 294 /<domain>/ds/scene/current/prev;
+#X text 11 309 /<domain>/ds/scene/current/next;
+#X text 11 279 /<domain>/ds/scene/current;
+#X text 11 264 /<domain>/ds/scene OR;
+#X text 11 334 /<domain>/ds/scene/selected;
+#X text 223 334 sets the scene destination of a file operation;
+#X text 11 349 /<domain>/ds/scene/selected/prev;
+#X text 11 364 /<domain>/ds/scene/selected/next;
+#X text 223 349 decrement destination scene number by 1;
+#X text 223 364 increment destination scene number by 1;
+#X text 11 379 /<domain>/ds/store;
+#X text 223 379 store the current state to the selected scene;
+#X text 61 101 There are many other parameters that can be controlled
+from outside. If you are familiar with Pure Data \, you can look them
+up unside the abstractions.;
+#X text 61 51 This is a list of the most important parameters \, that
+can be controlled by their receive name.;
+#X restore 143 536 pd \$0-parameter_list;
+#X obj 60 931 bng 15 250 50 0 /ev/storage/help/playlist/vis /ev/storage/help/playlist/vis
+playlist 17 7 0 10 -262144 -1 -1;
+#X obj 228 1068 bng 15 250 50 0 empty empty click_here_for_explanation!
+17 7 0 10 -262144 -1 -1;
+#X msg 228 1087 vis 1;
+#X obj 228 1108 s pd-\$0-edit;
+#X text 53 910 Click on "playlist" to show the playlist window.;
+#X obj 208 931 bng 15 250 50 0 empty empty click_here_for_explanation!
+17 7 0 10 -262144 -1 -1;
+#X msg 208 950 vis 1;
+#X obj 208 971 s pd-\$0-playlist;
+#X obj 40 1143 cnv 15 370 120 empty empty Multiple_domains 20 12 0
+14 -261682 -66577 0;
+#X text 54 1176 It is possible to create multiple storage domains.
+But variables can not be registered to both domains at the same time.
+;
+#N canvas 396 22 602 396 \$0-multiple_domains 0;
+#X obj 4 4 cnv 15 370 370 empty empty multiple_domains 20 12 0 14 -228856
+-66577 0;
+#X obj 385 4 cnv 15 200 370 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#N canvas 131 51 603 374 \$0-init 0;
+#X obj 77 79 loadbang;
+#X obj 57 79 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 77 103 del 1000;
+#X text 222 45 If you want the storage to recall a scene from a textfile
+on startup \, you can specify it as follows:;
+#X text 222 140 use the "/<domain>/ds/loadfile" message to load a given
+file path:;
+#X text 222 98 Delay the load by one second to make sure that the patch
+got fully loaded.;
+#X obj 77 125 t b b;
+#X obj 77 220 del 2000;
+#X text 222 218 Delay the recall by two seconds to make sure that the
+textfile got fully loaded to RAM.;
+#X text 232 263 Recall scene "0".;
+#X text 150 103 <--------;
+#X text 150 222 <--------;
+#X text 188 262 <----;
+#X msg 77 262 \; /help2/ds/scene 0 \;;
+#X msg 104 173 \; /help2/ds/loadfile ds-help2.txt;
+#X connect 0 0 2 0;
+#X connect 1 0 2 0;
+#X connect 2 0 6 0;
+#X connect 6 0 7 0;
+#X connect 6 1 14 0;
+#X connect 7 0 13 0;
+#X restore 441 48 pd \$0-init;
+#X text 407 27 Load textfile on startup:;
+#X text 14 42 In this example \, we add another domain to the patch.
+The module [ev_storage help2] adds a storage with domain "help2". Variables
+can be registered to it:;
+#X msg 437 292 0;
+#X msg 467 292 1;
+#X msg 497 292 2;
+#X text 387 265 Change scene for domain "help2":;
+#X obj 437 334 s /help2/ds/scene;
+#X obj 98 163 hsl 128 15 0 127 0 0 /i/am/from/another/domain /i/am/from/another/domain
+/i/am/from/another/domain -2 -8 0 10 -262144 -1 -1 0 1;
+#X obj 48 115 ds_reg help2 /i/am/from/another/domain;
+#X text 11 227 Variables that are registered with another domain will
+not be affected by this storage;
+#X obj 417 88 ds_logic help2;
+#X obj 403 122 ds_gui help2;
+#X connect 5 0 9 0;
+#X connect 6 0 9 0;
+#X connect 7 0 9 0;
+#X restore 144 1220 pd \$0-multiple_domains;
+#N canvas 248 152 423 323 \$0-register_options 0;
+#X obj 15 -399 cnv 15 370 300 empty empty Register_options 20 12 0
+14 -228856 -66577 0;
+#X obj 39 -291 tgl 15 0 /i/must/be/set/ds/set /i/must/be/set/ds/set
+set 17 7 0 10 -228856 -1 -1 1 1;
+#X obj 41 -148 tgl 15 0 /i/got/changed/ds/change /i/got/changed/ds/change
+change 17 7 0 10 -228856 -1 -1 1 1;
+#X text 32 -355 To prevent loops creating stack overflows \, it is
+possible to prepend a "set" message to a variable if it gets recalled.
+This way \, i.e. numberboxes show the new value \, but will not give
+it out on the outlet.;
+#X text 23 -230 Per default \, saved variables only get dispatched
+\, if the recalled value differs from the current value. If a variable
+needs to get dispatched \, even if the current value would not change
+\, a "nochange" argument can be added to the register.;
+#X obj 125 -264 bng 15 250 50 0 /i/must/be/set/ds/dialog /i/must/be/set/ds/dialog
+/i/must/be/set 20 7 0 10 -262144 -1 -1;
+#X obj 139 -122 bng 15 250 50 0 /i/got/changed/ds/dialog /i/got/changed/ds/dialog
+/i/got/changed 20 7 0 10 -262144 -1 -1;
+#X obj 121 -291 ds_reg help /i/must/be/set set;
+#X obj 121 -149 ds_reg help /i/got/changed nochange;
+#X coords 0 323 1 322 85 60 0;
+#X restore 531 928 pd \$0-register_options;
+#N canvas 502 147 399 317 \$0-occupy 0;
+#X obj 15 -380 cnv 15 370 300 empty empty Occupy 20 12 0 14 -228856
+-66577 0;
+#X obj 35 -298 bng 15 250 50 0 /i/am/occupied/ds/dialog /i/am/occupied/ds/dialog
+/i/am/occupied 20 7 0 10 -262144 -1 -1;
+#X obj 35 -264 tgl 15 0 /i/am/occupied/ds/occupy /i/am/occupied/ds/occupy
+occupy 17 7 0 10 -262130 -1 -1 1 1;
+#X text 23 -235 If "occupy" is set \, the variable will not respond
+to another scene recall until it got fully dispatched.;
+#X text 23 -195 Per default \, this option is activated. It is saved
+individually for each scene.;
+#X obj 35 -328 ds_reg help /i/am/occupied;
+#X coords 0 317 1 316 85 60 0;
+#X restore 573 840 pd \$0-occupy;
+#N canvas 89 22 609 740 \$0-delaying_recalls 0;
+#X obj 15 328 cnv 15 370 400 empty empty Recall_Chains 20 12 0 14 -228856
+-66577 0;
+#X obj 230 450 bng 15 250 50 0 /i/am/a/master/ds/dialog /i/am/a/master/ds/dialog
+/i/am/a/master 20 7 0 10 -262144 -1 -1;
+#X obj 247 578 bng 15 250 50 0 /i/am/a/slave/ds/dialog /i/am/a/slave/ds/dialog
+/i/am/a/slave 20 7 0 10 -262144 -1 -1;
+#X text 25 359 It is possible to chain recalls of variables. So that
+a variable starts its recall after another one finished recalling.
+;
+#X text 25 399 For example \, if one variable should be recalled after
+a fade of another one is finished \, no matter how long that fade is.
+;
+#X text 51 468 The first outlet bangs after a recall is finished.;
+#X text 51 498 The first inlet takes a bang to start the recall. The
+"slave" argument sets the register to slave mode.;
+#X text 51 558 The slave mode can also be set in the scene transition
+dialog. Click here to open it:;
+#X text 41 638 You can also do the chaining through sends & receives:
+;
+#X obj 392 328 cnv 15 200 400 empty empty empty 20 12 0 14 -204786
+-66577 0;
+#X obj 415 494 hsl 128 15 0 127 0 0 /i/am/a/master /i/am/a/master /i/am/a/master
+-2 -8 0 10 -262144 -1 -1 1100 1;
+#X obj 415 554 hsl 128 15 0 127 0 0 /i/am/a/slave /i/am/a/slave /i/am/a/slave
+-2 -8 0 10 -262144 -1 -1 1200 1;
+#X msg 439 394 0;
+#X msg 469 394 1;
+#X msg 499 394 2;
+#X obj 439 420 s /help/ds/scene;
+#X text 394 369 Change scene to see the effect:;
+#X obj 15 18 cnv 15 370 300 empty empty Delaying_recalls 20 12 0 14
+-228856 -66577 0;
+#X obj 392 18 cnv 15 200 300 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#X obj 419 162 hsl 128 15 0 127 0 0 /i/am/a/delayed/variable /i/am/a/delayed/variable
+/i/am/a/delayed/variable -2 -8 0 10 -262144 -1 -1 1000 1;
+#X obj 86 124 bng 15 250 50 0 /i/am/a/delayed/variable/ds/dialog /i/am/a/delayed/variable/ds/dialog
+/i/am/a/delayed/variable 20 7 0 10 -262144 -1 -1;
+#X msg 439 234 0;
+#X msg 469 234 1;
+#X msg 499 234 2;
+#X obj 439 260 s /help/ds/scene;
+#X text 394 209 Change scene to see the effect:;
+#X obj 419 92 hsl 128 15 0 127 0 0 /i/am/a/variable /i/am/a/variable
+/i/am/a/variable -2 -8 0 10 -262144 -1 -1 900 1;
+#X obj 86 184 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/delayed/variable/ds/delay
+/i/am/a/delayed/variable/ds/delay delay 47 7 0 10 -204800 -1 -1 1 256
+;
+#X text 25 89 To delay the recall of a variable in a specific scene
+\, go to the scene transition dialog:;
+#X text 25 159 And set the delay time for the current scene:;
+#X text 25 221 The delay time will be saved with the scene.;
+#X obj 40 533 ds_reg help /i/am/a/slave slave;
+#X obj 63 689 s <name>/ds/slave/start;
+#X obj 63 664 r <name>/ds/dispatched;
+#X obj 40 449 ds_reg help /i/am/a/master;
+#X obj 112 57 ds_reg help /i/am/a/delayed/variable;
+#X connect 12 0 15 0;
+#X connect 13 0 15 0;
+#X connect 14 0 15 0;
+#X connect 21 0 24 0;
+#X connect 22 0 24 0;
+#X connect 23 0 24 0;
+#X connect 33 0 32 0;
+#X connect 34 0 31 0;
+#X coords 0 740 1 739 85 60 0;
+#X restore 534 750 pd \$0-delaying_recalls;
+#N canvas 85 22 610 756 \$0-scene_transitions 0;
+#X obj 4 4 cnv 15 370 370 empty empty Linear_fade_between_scenes 20
+12 0 14 -228856 -66577 0;
+#X obj 383 4 cnv 15 200 370 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#X obj 393 309 hsl 128 15 0 127 0 0 /i/am/a/morphing/variable /i/am/a/morphing/variable
+/i/am/a/morphing/variable -2 -8 0 10 -262144 -1 -1 300 1;
+#X msg 428 175 0;
+#X msg 458 175 1;
+#X msg 488 175 2;
+#X obj 428 201 s /help/ds/scene;
+#X text 408 146 Change scene here:;
+#X obj 99 146 bng 15 250 50 0 /i/am/a/morphing/variable/ds/dialog /i/am/a/morphing/variable/ds/dialog
+/i/am/a/morphing/variable 20 7 0 10 -262144 -1 -1;
+#X text 12 35 Note: Only variables of type "float" can be morphed!!!
+;
+#X text 8 78 The variable "/i/am/a/morphing/variable" has a linear
+fade to each of the scenes 0-2.;
+#X obj 65 267 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/morphing/variable/ds/morph/time
+/i/am/a/morphing/variable/ds/morph/time time/s 47 7 0 10 -4034 -1 -1
+1 256;
+#X obj 64 216 tgl 15 0 /i/am/a/morphing/variable/ds/morph /i/am/a/morphing/variable/ds/morph
+morph 17 7 0 10 -4034 -1 -1 1 1;
+#X obj 65 336 nbx 4 14 -1e+37 1e+37 0 0 /i/am/a/morphing/variable/ds/morph/timegrain
+/i/am/a/morphing/variable/ds/morph/timegrain time-grain/ms 47 7 0 10
+-4034 -1 -1 20 256;
+#X text 8 181 The "morph" toggle enables a fade from another scene
+to the current scene for this variable.;
+#X text 8 245 The morph time can be set in seconds:;
+#X text 8 297 This sets the samplerate of the fade. For video \, a
+time-grain faster than the framerate would make no sense.;
+#X text 208 336 (Default = 20 ms);
+#X obj 4 384 cnv 15 370 600 empty empty Fade_curves 20 12 0 14 -228856
+-66577 0;
+#X obj 383 384 cnv 15 200 370 empty empty empty 20 12 0 14 -204786
+-66577 0;
+#X obj 393 418 hsl 128 15 0 127 0 0 /i/am/another/morphing/variable
+/i/am/another/morphing/variable /i/am/another/morphing/variable -2
+-8 0 10 -262144 -1 -1 400 1;
+#X obj 90 447 bng 15 250 50 0 /i/am/another/morphing/variable/ds/dialog
+/i/am/another/morphing/variable/ds/dialog /i/am/another/morphing/variable
+20 7 0 10 -262144 -1 -1;
+#X obj 4 1088 cnv 15 370 80 empty empty Deactivate_morphing_in_registers
+20 12 0 14 -261234 -66577 0;
+#X text 9 1112 For individual variables \, the morphing functionality
+can be deactivated permanently:;
+#X obj 12 560 nbx 4 14 -1e+37 1e+37 0 0 /i/am/another/morphing/variable/ds/morph/curve/shape
+/i/am/another/morphing/variable/ds/morph/curve/shape shape 47 7 0 10
+-204786 -1 -1 0 256;
+#X obj 11 677 nbx 4 14 0 1 0 0 /i/am/another/morphing/variable/ds/morph/curve/weight
+/i/am/another/morphing/variable/ds/morph/curve/weight weight 47 7 0
+10 -204786 -1 -1 0.8 256;
+#X obj 14 756 nbx 4 14 10 10000 0 0 /i/am/another/morphing/variable/ds/morph/curve/resolution
+/i/am/another/morphing/variable/ds/morph/curve/resolution resolution
+47 7 0 10 -204786 -1 -1 200 256;
+#X obj 19 888 hradio 15 1 0 4 /i/am/another/morphing/variable/ds/morph/curve/quality
+/i/am/another/morphing/variable/ds/morph/curve/quality quality 0 -8
+0 10 -204786 -1 -1 3;
+#X obj 98 518 bng 15 250 50 0 /i/am/another/morphing/variable/ds/morph/curve/vis
+/i/am/another/morphing/variable/ds/morph/curve/vis show_curve 17 7
+0 10 -204786 -1 -1;
+#X msg 428 564 0;
+#X msg 458 564 1;
+#X msg 488 564 2;
+#X obj 428 590 s /help/ds/scene;
+#X text 408 535 Change scene here:;
+#X text 8 491 Click here to show the current fade characteristic:;
+#X text 8 581 Shape lets you chose a suitable base form of the fade.
+A value of "0" will result in one half sine wave. "1" gives a quarter
+sinewave \, and 2 to N will give a x^n function. The shape values in
+between two integers will provide a linear interpolation of the both.
+;
+#X text 8 697 The "weight" factor lets you interpolate between the
+selected shape and a straight line.;
+#X text 97 891 2: linear interpolation;
+#X text 97 905 3: tabread4 4-point polynomianl interpolation;
+#X text 97 877 1: no interpolation;
+#X text 97 863 0: bypass --> output=input (default);
+#X obj 4 990 cnv 15 370 90 empty empty fadecurve 20 12 0 14 -262130
+-66577 0;
+#X obj 122 1051 fadecurve-help;
+#X text 14 1022 See [fadecurve-help] for more information on these
+values.;
+#X text 8 827 By using the quality setting \, you can chose \, how
+the fade curve is read:;
+#X text 107 675 (0...1);
+#X text 107 559 (-Inf...+Inf);
+#X text 150 754 (10...10000);
+#X text 8 775 The "resolution" parameter sets the resolution of the
+fade curve table (default = 100 points).;
+#N canvas 657 58 603 331 \$0-nomorph 0;
+#X obj 4 5 cnv 15 370 300 empty empty Deactivate_morphing_in_registers
+20 12 0 14 -233017 -66577 0;
+#X text 14 34 For some types of variables \, it is never desired to
+morph between two states (For example lists \, symbols \, toggles \,
+etc.). To save computing power and keep file sizes small \, the morphing
+functionality can be turned off for individual variables.;
+#X text 14 181 "nomorph" can also be set in the transition dialog \,
+but will not be saved this way:;
+#X obj 91 216 bng 15 250 50 0 /i/am/no/morphing/variable/ds/dialog
+/i/am/no/morphing/variable/ds/dialog /i/am/no/morphing/variable 20
+7 0 10 -262144 -1 -1;
+#X text 14 114 The "nomorph" argument for [ds_reg] deactivates morphing
+for this register permanently.;
+#X text 14 241 Anyway \, the controls for morphing will always be visible
+\, even if deactivated. But they will no more be saved in the storage.
+;
+#X obj 383 5 cnv 15 200 300 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#X obj 408 174 hsl 128 15 0 127 0 0 /i/am/no/morphing/variable /i/am/no/morphing/variable
+/i/am/no/morphing/variable -2 -8 0 10 -262144 -1 -1 0 1;
+#X msg 428 73 0;
+#X msg 458 73 1;
+#X msg 488 73 2;
+#X obj 428 99 s /help/ds/scene;
+#X text 408 44 Change scene here:;
+#X obj 72 151 ds_reg help /i/am/no/morphing/variable nomorph;
+#X connect 8 0 11 0;
+#X connect 9 0 11 0;
+#X connect 10 0 11 0;
+#X restore 203 1140 pd \$0-nomorph;
+#X obj 64 115 ds_reg help /i/am/a/morphing/variable;
+#X obj 57 418 ds_reg help /i/am/another/morphing/variable;
+#X connect 3 0 6 0;
+#X connect 4 0 6 0;
+#X connect 5 0 6 0;
+#X connect 29 0 32 0;
+#X connect 30 0 32 0;
+#X connect 31 0 32 0;
+#X coords 0 756 1 755 85 60 0;
+#X restore 533 658 pd \$0-scene_transitions;
+#N canvas 577 104 604 391 \$0-registering_variables 0;
+#X obj 4 4 cnv 15 370 370 empty empty Registering_variables 20 12 0
+14 -204800 -66577 0;
+#X text 16 143 SYNTAX: [ds_reg <domain> <variable_name>] \, where <domain>
+is the name of the storage you want to register to \, and <variable_name>
+is the complete name of your variable.;
+#X text 16 37 New variables can be registered to a storage domain with
+the [ds_reg] module.;
+#X text 16 72 Warning: Do not register variables to more than one domain!
+;
+#X text 16 102 Variables can be any type of data \, like 'list' \,
+'float' \, 'symbol' \, etc.;
+#X text 8 198 This registers "/i/am/a/variable" to domain "help":;
+#X text 9 270 This registers "/i/am/also/a/variable" to domain "help":
+;
+#X obj 383 4 cnv 15 200 370 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#X obj 405 248 hsl 128 15 0 127 0 0 /i/am/also/a/variable /i/am/also/a/variable
+/i/am/also/a/variable -2 -8 0 10 -262144 -1 -1 6300 1;
+#X obj 402 178 hsl 128 15 0 127 0 0 /i/am/a/variable /i/am/a/variable
+/i/am/a/variable -2 -8 0 10 -262144 -1 -1 900 1;
+#X msg 428 75 0;
+#X msg 458 75 1;
+#X msg 488 75 2;
+#X obj 428 101 s /help/ds/scene;
+#X text 408 46 Change scene here:;
+#X obj 64 225 ds_reg help /i/am/a/variable;
+#X obj 67 297 ds_reg help /i/am/also/a/variable;
+#X connect 10 0 13 0;
+#X connect 11 0 13 0;
+#X connect 12 0 13 0;
+#X restore 508 423 pd \$0-registering_variables;
+#X obj 40 574 cnv 15 370 70 empty empty store_&_recall 20 12 0 14 -261682
+-66577 0;
+#N canvas 297 229 562 466 \$0-store&recall 0;
+#X text 96 -373 (c)2011 Marian Weger /part of EXTENDED VIEW toolkit/
+gpl v3;
+#X obj 3 -394 cnv 15 550 450 empty empty store_&_recall 20 12 0 14
+-228856 -66577 0;
+#X obj 41 -354 nbx 3 15 0 999 0 0 /help/ds/scene/current /help/ds/scene/current
+scene 0 -8 0 12 -204786 -1 -1 0 256;
+#X obj 22 -354 bng 15 250 50 0 /0/ds/scene/current/prev /0/ds/scene/current/prev
+< 4 7 0 10 -204786 -1 -1;
+#X obj 92 -354 bng 15 250 50 0 /help/ds/scene/current/next /help/ds/scene/current/next
+> 5 7 0 10 -204786 -1 -1;
+#X obj 115 -354 bng 15 250 50 0 /help/ds/recall /help/ds/recall recall
+17 7 0 10 -4034 -1 -1;
+#X obj 114 -270 bng 15 250 50 0 /help/ds/store /help/ds/store store
+17 7 0 10 -258113 -1 -1;
+#X obj 41 -270 nbx 3 15 0 999 0 0 /help/ds/scene/selected /help/ds/scene/selected
+empty 0 -8 0 12 -261234 -1 -1 0 256;
+#X obj 22 -270 bng 15 250 50 0 /help/ds/scene/selected/prev /help/ds/scene/selected/prev
+< 4 7 0 10 -261234 -1 -1;
+#X obj 92 -270 bng 15 250 50 0 /help/ds/scene/selected/next /help/ds/scene/selected/next
+> 5 7 0 10 -261234 -1 -1;
+#X text 195 -355 In the RECALL section \, you can recall a scene from
+RAM.;
+#X text 195 -275 In the STORE section \, you can store the current
+state of the patch into RAM. Select a destination scene and press "store".
+;
+#X text 195 -325 Switch between presets 0-2 to see the effect.;
+#X msg 233 -143 0;
+#X msg 263 -143 1;
+#X msg 293 -143 2;
+#X obj 233 -117 s /help/ds/scene;
+#X text 56 -197 You can change access those parameters also through
+sends and receives.;
+#X text 59 -142 Click here to change scene:;
+#X obj 305 -36 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X msg 305 -17 vis 1;
+#X text 63 -57 For more information on that \, and for a complete list
+of controllable parameters \, click here:;
+#X obj 305 4 s pd-\$0-parameter_list;
+#X connect 13 0 16 0;
+#X connect 14 0 16 0;
+#X connect 15 0 16 0;
+#X connect 19 0 20 0;
+#X connect 20 0 22 0;
+#X restore 137 619 pd \$0-store&recall;
+#X text 58 599 Look here how to store and recall scenes:;
+#X obj 40 654 cnv 15 370 70 empty empty save_&_load 20 12 0 14 -261682
+-66577 0;
+#X text 46 677 Look here how to save scene sets to a textfile and how
+to load them from there:;
+#N canvas 509 208 564 464 \$0-save&load 0;
+#X obj 3 -394 cnv 15 550 450 empty empty save_&_load 20 12 0 14 -228856
+-66577 0;
+#X obj 24 -343 bng 15 250 50 0 /help/ds/save /help/ds/save save 17
+7 0 10 -258113 -1 -1;
+#X obj 24 -269 bng 15 250 50 0 /help/ds/load /help/ds/load load 17
+7 0 10 -4034 -1 -1;
+#X obj 94 -343 bng 15 250 50 0 /help/ds/resave /help/ds/resave resave
+17 7 0 10 -258113 -1 -1;
+#X obj 94 -269 bng 15 250 50 0 /help/ds/reload /help/ds/reload reload
+17 7 0 10 -4034 -1 -1;
+#X text 195 -355 The SAVE section lets you save all scenes from RAM
+to a textfile on the HDD. Click "save" to open a save dialog. "resave"
+will let you save to the last specified filename.;
+#X text 195 -275 The LOAD section lets you load all scenes from a textfile
+to RAM. Click "load" to open a load dialog. "reload" will let you load
+the last specified filename.;
+#X text 59 -197 This example uses "ev_storage-help.txt" in the ../data
+folder to save its contents.;
+#X text 59 -127 Have a look at this file in a text editor to see the
+syntax.;
+#X text 59 -107 More on that here:;
+#X obj 187 -105 bng 15 250 50 0 empty empty click_me! 17 7 0 10 -262144
+-1 -1;
+#X msg 187 -86 vis 1;
+#X obj 187 -65 s pd-\$0-file_layout;
+#X connect 10 0 11 0;
+#X connect 11 0 12 0;
+#X restore 199 699 pd \$0-save&load;
+#X obj 427 1063 cnv 15 360 80 empty empty Copy&Paste_Settings 20 12
+0 14 -262130 -66577 0;
+#N canvas 295 94 390 415 \$0-settings_buffer 0;
+#X obj 2 2 cnv 15 370 400 empty empty Settings_Buffer 20 12 0 14 -228856
+-66577 0;
+#X text 12 38 The Register Settings Buffer has the same controls \,
+as the scene transition dialog for the individual variables.;
+#X text 12 78 The buffer can be edited and then pasted into variables.
+;
+#X text 12 148 In the scene transition dialog of the individual variables
+\, there is a copy&paste section to communicate with the buffer:;
+#X obj 23 219 bng 15 250 50 0 /i/am/a/morphing/variable/ds/dialog /i/am/a/morphing/variable/ds/dialog
+/i/am/a/morphing/variable 20 7 0 10 -262144 -1 -1;
+#X obj 209 193 cnv 15 130 60 empty empty empty 20 12 0 14 -191407 -66577
+0;
+#X obj 216 209 bng 15 250 50 0 /i/am/a/morphing/variable/ds/settings/copy
+/i/am/a/morphing/variable/ds/settings/copy COPY_to_buffer 17 7 0 10
+-4160 -1 -1;
+#X obj 216 229 bng 15 250 50 0 /i/am/a/morphing/variable/ds/settings/paste
+/i/am/a/morphing/variable/ds/settings/paste PASTE_from_buffer 17 7
+0 10 -260097 -1 -1;
+#X obj 189 117 bng 15 250 50 0 /help/ds/reg/settings/buffer /help/ds/reg/settings/buffer
+register_settings_buffer 17 7 0 10 -257985 -1 -1;
+#X text 20 117 Open the Buffer window:;
+#X obj 125 321 bng 15 250 50 0 /\$1/ds/reg/settings/buffer/paste/all
+/\$1/ds/reg/settings/buffer/paste/all send_to_all_registers 17 7 0
+10 -258113 -1 -1;
+#X text 12 278 The buffer contents can be sent to all registered variables
+in this domain by pressing the red button:;
+#X coords 0 415 1 414 85 60 0;
+#X restore 508 1114 pd \$0-settings_buffer;
+#X text 432 978 There is also a buffer for scene transition settings
+\, which can be edited independently. Settings can be copied to that
+buffer and pasted from it.;
+#X obj 607 1031 bng 15 250 50 0 /help/ds/reg/settings/buffer /help/ds/reg/settings/buffer
+register_settings_buffer 17 7 0 10 -257985 -1 -1;
+#X text 438 1031 Open the Buffer window:;
+#X text 488 1091 More detailed description:;
+#X text 441 224 At every recall \, the variable names and values are
+dumped to the first outlet.;
+#X obj 420 1171 cnv 15 370 80 empty empty Multiple_GUIs_for_the_same_domain
+20 12 0 14 -228856 -66577 0;
+#X text 424 1200 Look inside here how to create multiple GUIs for one
+domain:;
+#N canvas 147 251 432 243 \$0-multiple_guis 0;
+#X obj 132 71 ds_gui help;
+#X text 42 27 Of course \, it is possible to create more GUIs for the
+same storage domain. Put a [ds_gui <domain>] object to create one:
+;
+#X restore 500 1221 pd \$0-multiple_guis;
+#X obj 432 174 ds_logic help;
+#X obj 610 78 ds_gui help;
+#X text 430 152 main abstraction;
+#X text 507 77 gui abstraction;
+#X text 45 206 This example uses "ds-help.txt". If you accidentally
+changed it by testing the examples \, you can load the backup "ds-help_bak.txt".
+;
+#X text 45 106 This is a state saving solution \, based entirely on
+Pd-Vanilla. It consists of 3 main parts of abstractions: [ds_logic
+<domain>] is the main abstraction of this system \, and should be created
+once for each domain. [ds_gui <domain>] provides the corresponding
+graphical control. [ds_reg <domain> <name>] registers a variabl to
+the given storage domain.;
+#X connect 5 0 8 0;
+#X connect 6 0 8 0;
+#X connect 7 0 8 0;
+#X connect 13 0 12 0;
+#X connect 14 0 13 1;
+#X connect 49 0 50 0;
+#X connect 50 0 51 0;
+#X connect 53 0 54 0;
+#X connect 54 0 55 0;
+#X connect 80 0 13 0;
+#X coords 0 756 1 755 150 115 0;

+ 609 - 0
ds-help.txt

@@ -0,0 +1,609 @@
+======================== GLOBAL ========================
+#settings
+#data
+======================== SCENE 0 Een ========================
+#settings
+/i/am/also/a/variable/ds/occupy 1
+/i/am/also/a/variable/ds/delay 0
+/i/am/also/a/variable/ds/morph/timegrain 20
+/i/am/also/a/variable/ds/morph/curve/quality 0
+/i/am/also/a/variable/ds/slave 0
+/i/am/also/a/variable/ds/morph/curve/resolution 100
+/i/am/also/a/variable/ds/morph/curve/weight 0
+/i/am/also/a/variable/ds/morph/curve/shape 0
+/i/am/also/a/variable/ds/morph/time 0
+/i/am/also/a/variable/ds/morph 0
+/i/am/a/variable/ds/occupy 1
+/i/am/a/variable/ds/delay 0
+/i/am/a/variable/ds/morph/timegrain 20
+/i/am/a/variable/ds/morph/curve/quality 0
+/i/am/a/variable/ds/slave 0
+/i/am/a/variable/ds/morph/curve/resolution 100
+/i/am/a/variable/ds/morph/curve/weight 0
+/i/am/a/variable/ds/morph/curve/shape 0
+/i/am/a/variable/ds/morph/time 0
+/i/am/a/variable/ds/morph 0
+/i/am/another/morphing/variable/ds/occupy 1
+/i/am/another/morphing/variable/ds/delay 0
+/i/am/another/morphing/variable/ds/morph/timegrain 20
+/i/am/another/morphing/variable/ds/morph/curve/quality 3
+/i/am/another/morphing/variable/ds/slave 0
+/i/am/another/morphing/variable/ds/morph/curve/resolution 200
+/i/am/another/morphing/variable/ds/morph/curve/weight 0.8
+/i/am/another/morphing/variable/ds/morph/curve/shape 0
+/i/am/another/morphing/variable/ds/morph/time 3
+/i/am/another/morphing/variable/ds/morph 1
+/i/am/a/morphing/variable/ds/occupy 1
+/i/am/a/morphing/variable/ds/delay 0
+/i/am/a/morphing/variable/ds/morph/timegrain 20
+/i/am/a/morphing/variable/ds/morph/curve/quality 0
+/i/am/a/morphing/variable/ds/slave 0
+/i/am/a/morphing/variable/ds/morph/curve/resolution 100
+/i/am/a/morphing/variable/ds/morph/curve/weight 0
+/i/am/a/morphing/variable/ds/morph/curve/shape 0
+/i/am/a/morphing/variable/ds/morph/time 1
+/i/am/a/morphing/variable/ds/morph 1
+/i/am/no/morphing/variable/ds/morph 0
+/i/am/a/delayed/variable/ds/occupy 1
+/i/am/a/delayed/variable/ds/delay 1
+/i/am/a/delayed/variable/ds/morph/timegrain 20
+/i/am/a/delayed/variable/ds/morph/curve/quality 0
+/i/am/a/delayed/variable/ds/slave 0
+/i/am/a/delayed/variable/ds/morph/curve/resolution 100
+/i/am/a/delayed/variable/ds/morph/curve/weight 0
+/i/am/a/delayed/variable/ds/morph/curve/shape 0
+/i/am/a/delayed/variable/ds/morph/time 0
+/i/am/a/delayed/variable/ds/morph 0
+/i/am/a/master/ds/occupy 1
+/i/am/a/master/ds/delay 0
+/i/am/a/master/ds/morph/timegrain 20
+/i/am/a/master/ds/morph/curve/quality 0
+/i/am/a/master/ds/slave 0
+/i/am/a/master/ds/morph/curve/resolution 100
+/i/am/a/master/ds/morph/curve/weight 0
+/i/am/a/master/ds/morph/curve/shape 0
+/i/am/a/master/ds/morph/time 1
+/i/am/a/master/ds/morph 1
+/i/am/a/slave/ds/occupy 1
+/i/am/a/slave/ds/delay 0
+/i/am/a/slave/ds/morph/timegrain 20
+/i/am/a/slave/ds/morph/curve/quality 0
+/i/am/a/slave/ds/slave 1
+/i/am/a/slave/ds/morph/curve/resolution 100
+/i/am/a/slave/ds/morph/curve/weight 0
+/i/am/a/slave/ds/morph/curve/shape 0
+/i/am/a/slave/ds/morph/time 0
+/i/am/a/slave/ds/morph 0
+/i/am/occupied/ds/morph 0
+/i/got/changed/ds/morph 0
+/i/must/be/set/ds/morph 0
+/ev/grid/id0/labeling/size/ds/morph 0
+/ev/grid/id0/labeling/mark/color/ds/morph 0
+/ev/grid/id0/labeling/border/color/ds/morph 0
+/ev/grid/id0/labeling/zero/color/ds/morph 0
+/ev/grid/id0/labeling/state/ds/morph 0
+/ev/grid/id0/grid/color/ds/morph 0
+/ev/grid/id0/grid/res/y/ds/morph 0
+/ev/grid/id0/grid/res/x/ds/morph 0
+/ev/grid/id0/size/ds/morph 0
+/ev/grid/id0/grid/state/ds/morph 0
+#data
+/i/am/also/a/variable 63
+/i/am/a/variable 9
+/i/am/another/morphing/variable 4
+/i/am/a/morphing/variable 3
+/i/am/no/morphing/variable 0
+/i/am/a/delayed/variable 10
+/i/am/a/master 11
+/i/am/a/slave 12
+/ev/grid/id0/labeling/size 0.0025
+/ev/grid/id0/labeling/mark/color 1 1 0
+/ev/grid/id0/labeling/border/color 0 1 0
+/ev/grid/id0/labeling/zero/color 0 0 1
+/ev/grid/id0/labeling/state 0
+/ev/grid/id0/grid/color 1 1 1
+/ev/grid/id0/grid/res/y 2
+/ev/grid/id0/grid/res/x 2
+/ev/grid/id0/size 3
+/ev/grid/id0/grid/state 1
+======================== SCENE 1 Twee ========================
+#settings
+/i/am/also/a/variable/ds/occupy 1
+/i/am/also/a/variable/ds/delay 0
+/i/am/also/a/variable/ds/morph/timegrain 20
+/i/am/also/a/variable/ds/morph/curve/quality 0
+/i/am/also/a/variable/ds/slave 0
+/i/am/also/a/variable/ds/morph/curve/resolution 100
+/i/am/also/a/variable/ds/morph/curve/weight 0
+/i/am/also/a/variable/ds/morph/curve/shape 0
+/i/am/also/a/variable/ds/morph/time 0
+/i/am/also/a/variable/ds/morph 0
+/i/am/a/variable/ds/occupy 1
+/i/am/a/variable/ds/delay 0
+/i/am/a/variable/ds/morph/timegrain 20
+/i/am/a/variable/ds/morph/curve/quality 0
+/i/am/a/variable/ds/slave 0
+/i/am/a/variable/ds/morph/curve/resolution 100
+/i/am/a/variable/ds/morph/curve/weight 0
+/i/am/a/variable/ds/morph/curve/shape 0
+/i/am/a/variable/ds/morph/time 0
+/i/am/a/variable/ds/morph 0
+/i/am/another/morphing/variable/ds/occupy 1
+/i/am/another/morphing/variable/ds/delay 0
+/i/am/another/morphing/variable/ds/morph/timegrain 20
+/i/am/another/morphing/variable/ds/morph/curve/quality 3
+/i/am/another/morphing/variable/ds/slave 0
+/i/am/another/morphing/variable/ds/morph/curve/resolution 200
+/i/am/another/morphing/variable/ds/morph/curve/weight 0.8
+/i/am/another/morphing/variable/ds/morph/curve/shape 0
+/i/am/another/morphing/variable/ds/morph/time 3
+/i/am/another/morphing/variable/ds/morph 1
+/i/am/a/morphing/variable/ds/occupy 1
+/i/am/a/morphing/variable/ds/delay 0
+/i/am/a/morphing/variable/ds/morph/timegrain 20
+/i/am/a/morphing/variable/ds/morph/curve/quality 0
+/i/am/a/morphing/variable/ds/slave 0
+/i/am/a/morphing/variable/ds/morph/curve/resolution 100
+/i/am/a/morphing/variable/ds/morph/curve/weight 0
+/i/am/a/morphing/variable/ds/morph/curve/shape 0
+/i/am/a/morphing/variable/ds/morph/time 1
+/i/am/a/morphing/variable/ds/morph 1
+/i/am/no/morphing/variable/ds/morph 0
+/i/am/a/delayed/variable/ds/occupy 1
+/i/am/a/delayed/variable/ds/delay 1
+/i/am/a/delayed/variable/ds/morph/timegrain 20
+/i/am/a/delayed/variable/ds/morph/curve/quality 0
+/i/am/a/delayed/variable/ds/slave 0
+/i/am/a/delayed/variable/ds/morph/curve/resolution 100
+/i/am/a/delayed/variable/ds/morph/curve/weight 0
+/i/am/a/delayed/variable/ds/morph/curve/shape 0
+/i/am/a/delayed/variable/ds/morph/time 0
+/i/am/a/delayed/variable/ds/morph 0
+/i/am/a/master/ds/occupy 1
+/i/am/a/master/ds/delay 0
+/i/am/a/master/ds/morph/timegrain 20
+/i/am/a/master/ds/morph/curve/quality 0
+/i/am/a/master/ds/slave 0
+/i/am/a/master/ds/morph/curve/resolution 100
+/i/am/a/master/ds/morph/curve/weight 0
+/i/am/a/master/ds/morph/curve/shape 0
+/i/am/a/master/ds/morph/time 1
+/i/am/a/master/ds/morph 1
+/i/am/a/slave/ds/occupy 1
+/i/am/a/slave/ds/delay 0
+/i/am/a/slave/ds/morph/timegrain 20
+/i/am/a/slave/ds/morph/curve/quality 0
+/i/am/a/slave/ds/slave 1
+/i/am/a/slave/ds/morph/curve/resolution 100
+/i/am/a/slave/ds/morph/curve/weight 0
+/i/am/a/slave/ds/morph/curve/shape 0
+/i/am/a/slave/ds/morph/time 0
+/i/am/a/slave/ds/morph 0
+/i/am/occupied/ds/morph 0
+/i/got/changed/ds/morph 0
+/i/must/be/set/ds/morph 0
+/ev/grid/id0/labeling/size/ds/morph 0
+/ev/grid/id0/labeling/mark/color/ds/morph 0
+/ev/grid/id0/labeling/border/color/ds/morph 0
+/ev/grid/id0/labeling/zero/color/ds/morph 0
+/ev/grid/id0/labeling/state/ds/morph 0
+/ev/grid/id0/grid/color/ds/morph 0
+/ev/grid/id0/grid/res/y/ds/morph 0
+/ev/grid/id0/grid/res/x/ds/morph 0
+/ev/grid/id0/size/ds/morph 0
+/ev/grid/id0/grid/state/ds/morph 0
+#data
+/i/am/also/a/variable 24
+/i/am/a/variable 40
+/i/am/another/morphing/variable 64
+/i/am/a/morphing/variable 61
+/i/am/no/morphing/variable 100
+/i/am/a/delayed/variable 41
+/i/am/a/master 56
+/i/am/a/slave 59
+/ev/grid/id0/labeling/size 0.0025
+/ev/grid/id0/labeling/mark/color 1 1 0
+/ev/grid/id0/labeling/border/color 0 1 0
+/ev/grid/id0/labeling/zero/color 0 0 1
+/ev/grid/id0/labeling/state 1
+/ev/grid/id0/grid/color 1 1 1
+/ev/grid/id0/grid/res/y 6
+/ev/grid/id0/grid/res/x 5
+/ev/grid/id0/size 3
+/ev/grid/id0/grid/state 1
+======================== SCENE 2 Drie ========================
+#settings
+/i/am/also/a/variable/ds/occupy 1
+/i/am/also/a/variable/ds/delay 0
+/i/am/also/a/variable/ds/morph/timegrain 20
+/i/am/also/a/variable/ds/morph/curve/quality 0
+/i/am/also/a/variable/ds/slave 0
+/i/am/also/a/variable/ds/morph/curve/resolution 100
+/i/am/also/a/variable/ds/morph/curve/weight 0
+/i/am/also/a/variable/ds/morph/curve/shape 0
+/i/am/also/a/variable/ds/morph/time 0
+/i/am/also/a/variable/ds/morph 0
+/i/am/a/variable/ds/occupy 1
+/i/am/a/variable/ds/delay 0
+/i/am/a/variable/ds/morph/timegrain 20
+/i/am/a/variable/ds/morph/curve/quality 0
+/i/am/a/variable/ds/slave 0
+/i/am/a/variable/ds/morph/curve/resolution 100
+/i/am/a/variable/ds/morph/curve/weight 0
+/i/am/a/variable/ds/morph/curve/shape 0
+/i/am/a/variable/ds/morph/time 0
+/i/am/a/variable/ds/morph 0
+/i/am/another/morphing/variable/ds/occupy 1
+/i/am/another/morphing/variable/ds/delay 0
+/i/am/another/morphing/variable/ds/morph/timegrain 20
+/i/am/another/morphing/variable/ds/morph/curve/quality 3
+/i/am/another/morphing/variable/ds/slave 0
+/i/am/another/morphing/variable/ds/morph/curve/resolution 100
+/i/am/another/morphing/variable/ds/morph/curve/weight 1
+/i/am/another/morphing/variable/ds/morph/curve/shape -5.04
+/i/am/another/morphing/variable/ds/morph/time 4
+/i/am/another/morphing/variable/ds/morph 1
+/i/am/a/morphing/variable/ds/occupy 1
+/i/am/a/morphing/variable/ds/delay 0
+/i/am/a/morphing/variable/ds/morph/timegrain 30
+/i/am/a/morphing/variable/ds/morph/curve/quality 0
+/i/am/a/morphing/variable/ds/slave 0
+/i/am/a/morphing/variable/ds/morph/curve/resolution 100
+/i/am/a/morphing/variable/ds/morph/curve/weight 0
+/i/am/a/morphing/variable/ds/morph/curve/shape 0
+/i/am/a/morphing/variable/ds/morph/time 2
+/i/am/a/morphing/variable/ds/morph 1
+/i/am/no/morphing/variable/ds/morph 0
+/i/am/a/delayed/variable/ds/occupy 1
+/i/am/a/delayed/variable/ds/delay 1.5
+/i/am/a/delayed/variable/ds/morph/timegrain 20
+/i/am/a/delayed/variable/ds/morph/curve/quality 0
+/i/am/a/delayed/variable/ds/slave 0
+/i/am/a/delayed/variable/ds/morph/curve/resolution 100
+/i/am/a/delayed/variable/ds/morph/curve/weight 0
+/i/am/a/delayed/variable/ds/morph/curve/shape 0
+/i/am/a/delayed/variable/ds/morph/time 0
+/i/am/a/delayed/variable/ds/morph 0
+/i/am/a/master/ds/occupy 1
+/i/am/a/master/ds/delay 0
+/i/am/a/master/ds/morph/timegrain 20
+/i/am/a/master/ds/morph/curve/quality 0
+/i/am/a/master/ds/slave 0
+/i/am/a/master/ds/morph/curve/resolution 100
+/i/am/a/master/ds/morph/curve/weight 0
+/i/am/a/master/ds/morph/curve/shape 0
+/i/am/a/master/ds/morph/time 1
+/i/am/a/master/ds/morph 0
+/i/am/a/slave/ds/occupy 1
+/i/am/a/slave/ds/delay 0
+/i/am/a/slave/ds/morph/timegrain 20
+/i/am/a/slave/ds/morph/curve/quality 0
+/i/am/a/slave/ds/slave 1
+/i/am/a/slave/ds/morph/curve/resolution 100
+/i/am/a/slave/ds/morph/curve/weight 0
+/i/am/a/slave/ds/morph/curve/shape 0
+/i/am/a/slave/ds/morph/time 0
+/i/am/a/slave/ds/morph 0
+/i/am/occupied/ds/morph 0
+/i/got/changed/ds/morph 0
+/i/must/be/set/ds/morph 0
+/ev/grid/id0/labeling/size/ds/morph 0
+/ev/grid/id0/labeling/mark/color/ds/morph 0
+/ev/grid/id0/labeling/border/color/ds/morph 0
+/ev/grid/id0/labeling/zero/color/ds/morph 0
+/ev/grid/id0/labeling/state/ds/morph 0
+/ev/grid/id0/grid/color/ds/morph 0
+/ev/grid/id0/grid/res/y/ds/morph 0
+/ev/grid/id0/grid/res/x/ds/morph 0
+/ev/grid/id0/size/ds/morph 0
+/ev/grid/id0/grid/state/ds/morph 0
+#data
+/i/am/also/a/variable 77
+/i/am/a/variable 100
+/i/am/another/morphing/variable 122
+/i/am/a/morphing/variable 123
+/i/am/no/morphing/variable 11
+/i/am/a/delayed/variable 101
+/i/am/a/master 109
+/i/am/a/slave 107
+/ev/grid/id0/labeling/size 0.0025
+/ev/grid/id0/labeling/mark/color 1 1 0
+/ev/grid/id0/labeling/border/color 0 1 0
+/ev/grid/id0/labeling/zero/color 0 0 1
+/ev/grid/id0/labeling/state 0
+/ev/grid/id0/grid/color 1 1 1
+/ev/grid/id0/grid/res/y 99
+/ev/grid/id0/grid/res/x 49
+/ev/grid/id0/size 3
+/ev/grid/id0/grid/state 1
+======================== SCENE 3 <unnamed> ========================
+#settings
+#data
+======================== SCENE 4 <unnamed> ========================
+#settings
+#data
+======================== SCENE 5 <unnamed> ========================
+#settings
+#data
+======================== SCENE 6 <unnamed> ========================
+#settings
+#data
+======================== SCENE 7 <unnamed> ========================
+#settings
+#data
+======================== SCENE 8 <unnamed> ========================
+#settings
+#data
+======================== SCENE 9 <unnamed> ========================
+#settings
+#data
+======================== SCENE 10 <unnamed> ========================
+#settings
+#data
+======================== SCENE 11 <unnamed> ========================
+#settings
+#data
+======================== SCENE 12 <unnamed> ========================
+#settings
+#data
+======================== SCENE 13 <unnamed> ========================
+#settings
+#data
+======================== SCENE 14 <unnamed> ========================
+#settings
+#data
+======================== SCENE 15 <unnamed> ========================
+#settings
+#data
+======================== SCENE 16 <unnamed> ========================
+#settings
+#data
+======================== SCENE 17 <unnamed> ========================
+#settings
+#data
+======================== SCENE 18 <unnamed> ========================
+#settings
+#data
+======================== SCENE 19 <unnamed> ========================
+#settings
+#data
+======================== SCENE 20 <unnamed> ========================
+#settings
+#data
+======================== SCENE 21 <unnamed> ========================
+#settings
+#data
+======================== SCENE 22 <unnamed> ========================
+#settings
+#data
+======================== SCENE 23 <unnamed> ========================
+#settings
+#data
+======================== SCENE 24 <unnamed> ========================
+#settings
+#data
+======================== SCENE 25 <unnamed> ========================
+#settings
+#data
+======================== SCENE 26 <unnamed> ========================
+#settings
+#data
+======================== SCENE 27 <unnamed> ========================
+#settings
+#data
+======================== SCENE 28 <unnamed> ========================
+#settings
+#data
+======================== SCENE 29 <unnamed> ========================
+#settings
+#data
+======================== SCENE 30 <unnamed> ========================
+#settings
+#data
+======================== SCENE 31 <unnamed> ========================
+#settings
+#data
+======================== SCENE 32 <unnamed> ========================
+#settings
+#data
+======================== SCENE 33 <unnamed> ========================
+#settings
+#data
+======================== SCENE 34 <unnamed> ========================
+#settings
+#data
+======================== SCENE 35 <unnamed> ========================
+#settings
+#data
+======================== SCENE 36 <unnamed> ========================
+#settings
+#data
+======================== SCENE 37 <unnamed> ========================
+#settings
+#data
+======================== SCENE 38 <unnamed> ========================
+#settings
+#data
+======================== SCENE 39 <unnamed> ========================
+#settings
+#data
+======================== SCENE 40 <unnamed> ========================
+#settings
+#data
+======================== SCENE 41 <unnamed> ========================
+#settings
+#data
+======================== SCENE 42 <unnamed> ========================
+#settings
+#data
+======================== SCENE 43 <unnamed> ========================
+#settings
+#data
+======================== SCENE 44 <unnamed> ========================
+#settings
+#data
+======================== SCENE 45 <unnamed> ========================
+#settings
+#data
+======================== SCENE 46 <unnamed> ========================
+#settings
+#data
+======================== SCENE 47 <unnamed> ========================
+#settings
+#data
+======================== SCENE 48 <unnamed> ========================
+#settings
+#data
+======================== SCENE 49 <unnamed> ========================
+#settings
+#data
+======================== SCENE 50 <unnamed> ========================
+#settings
+#data
+======================== SCENE 51 <unnamed> ========================
+#settings
+#data
+======================== SCENE 52 <unnamed> ========================
+#settings
+#data
+======================== SCENE 53 <unnamed> ========================
+#settings
+#data
+======================== SCENE 54 <unnamed> ========================
+#settings
+#data
+======================== SCENE 55 <unnamed> ========================
+#settings
+#data
+======================== SCENE 56 <unnamed> ========================
+#settings
+#data
+======================== SCENE 57 <unnamed> ========================
+#settings
+#data
+======================== SCENE 58 <unnamed> ========================
+#settings
+#data
+======================== SCENE 59 <unnamed> ========================
+#settings
+#data
+======================== SCENE 60 <unnamed> ========================
+#settings
+#data
+======================== SCENE 61 <unnamed> ========================
+#settings
+#data
+======================== SCENE 62 <unnamed> ========================
+#settings
+#data
+======================== SCENE 63 <unnamed> ========================
+#settings
+#data
+======================== SCENE 64 <unnamed> ========================
+#settings
+#data
+======================== SCENE 65 <unnamed> ========================
+#settings
+#data
+======================== SCENE 66 <unnamed> ========================
+#settings
+#data
+======================== SCENE 67 <unnamed> ========================
+#settings
+#data
+======================== SCENE 68 <unnamed> ========================
+#settings
+#data
+======================== SCENE 69 <unnamed> ========================
+#settings
+#data
+======================== SCENE 70 <unnamed> ========================
+#settings
+#data
+======================== SCENE 71 <unnamed> ========================
+#settings
+#data
+======================== SCENE 72 <unnamed> ========================
+#settings
+#data
+======================== SCENE 73 <unnamed> ========================
+#settings
+#data
+======================== SCENE 74 <unnamed> ========================
+#settings
+#data
+======================== SCENE 75 <unnamed> ========================
+#settings
+#data
+======================== SCENE 76 <unnamed> ========================
+#settings
+#data
+======================== SCENE 77 <unnamed> ========================
+#settings
+#data
+======================== SCENE 78 <unnamed> ========================
+#settings
+#data
+======================== SCENE 79 <unnamed> ========================
+#settings
+#data
+======================== SCENE 80 <unnamed> ========================
+#settings
+#data
+======================== SCENE 81 <unnamed> ========================
+#settings
+#data
+======================== SCENE 82 <unnamed> ========================
+#settings
+#data
+======================== SCENE 83 <unnamed> ========================
+#settings
+#data
+======================== SCENE 84 <unnamed> ========================
+#settings
+#data
+======================== SCENE 85 <unnamed> ========================
+#settings
+#data
+======================== SCENE 86 <unnamed> ========================
+#settings
+#data
+======================== SCENE 87 <unnamed> ========================
+#settings
+#data
+======================== SCENE 88 <unnamed> ========================
+#settings
+#data
+======================== SCENE 89 <unnamed> ========================
+#settings
+#data
+======================== SCENE 90 <unnamed> ========================
+#settings
+#data
+======================== SCENE 91 <unnamed> ========================
+#settings
+#data
+======================== SCENE 92 <unnamed> ========================
+#settings
+#data
+======================== SCENE 93 <unnamed> ========================
+#settings
+#data
+======================== SCENE 94 <unnamed> ========================
+#settings
+#data
+======================== SCENE 95 <unnamed> ========================
+#settings
+#data
+======================== SCENE 96 <unnamed> ========================
+#settings
+#data
+======================== SCENE 97 <unnamed> ========================
+#settings
+#data
+======================== SCENE 98 <unnamed> ========================
+#settings
+#data
+======================== SCENE 99 <unnamed> ========================
+#settings
+#data

+ 336 - 0
ds-help2.txt

@@ -0,0 +1,336 @@
+======================== GLOBAL ========================
+#settings
+#data
+======================== SCENE 0 <unnamed> ========================
+#settings
+/i/am/from/another/domain/ds/occupy 1
+/i/am/from/another/domain/ds/delay 0
+/i/am/from/another/domain/ds/morph/timegrain 20
+/i/am/from/another/domain/ds/morph/curve/quality 0
+/i/am/from/another/domain/ds/slave 0
+/i/am/from/another/domain/ds/morph/curve/resolution 100
+/i/am/from/another/domain/ds/morph/curve/weight 0
+/i/am/from/another/domain/ds/morph/curve/shape 0
+/i/am/from/another/domain/ds/morph/time 0
+/i/am/from/another/domain/ds/morph 0
+#data
+/i/am/from/another/domain 36
+======================== SCENE 1 <unnamed> ========================
+#settings
+/i/am/from/another/domain/ds/occupy 1
+/i/am/from/another/domain/ds/delay 0
+/i/am/from/another/domain/ds/morph/timegrain 20
+/i/am/from/another/domain/ds/morph/curve/quality 0
+/i/am/from/another/domain/ds/slave 0
+/i/am/from/another/domain/ds/morph/curve/resolution 100
+/i/am/from/another/domain/ds/morph/curve/weight 0
+/i/am/from/another/domain/ds/morph/curve/shape 0
+/i/am/from/another/domain/ds/morph/time 0
+/i/am/from/another/domain/ds/morph 0
+#data
+/i/am/from/another/domain 64
+======================== SCENE 2 <unnamed> ========================
+#settings
+/i/am/from/another/domain/ds/occupy 1
+/i/am/from/another/domain/ds/delay 0
+/i/am/from/another/domain/ds/morph/timegrain 20
+/i/am/from/another/domain/ds/morph/curve/quality 0
+/i/am/from/another/domain/ds/slave 0
+/i/am/from/another/domain/ds/morph/curve/resolution 100
+/i/am/from/another/domain/ds/morph/curve/weight 0
+/i/am/from/another/domain/ds/morph/curve/shape 0
+/i/am/from/another/domain/ds/morph/time 0
+/i/am/from/another/domain/ds/morph 0
+#data
+/i/am/from/another/domain 120
+======================== SCENE 3 <unnamed> ========================
+#settings
+#data
+======================== SCENE 4 <unnamed> ========================
+#settings
+#data
+======================== SCENE 5 <unnamed> ========================
+#settings
+#data
+======================== SCENE 6 <unnamed> ========================
+#settings
+#data
+======================== SCENE 7 <unnamed> ========================
+#settings
+#data
+======================== SCENE 8 <unnamed> ========================
+#settings
+#data
+======================== SCENE 9 <unnamed> ========================
+#settings
+#data
+======================== SCENE 10 <unnamed> ========================
+#settings
+#data
+======================== SCENE 11 <unnamed> ========================
+#settings
+#data
+======================== SCENE 12 <unnamed> ========================
+#settings
+#data
+======================== SCENE 13 <unnamed> ========================
+#settings
+#data
+======================== SCENE 14 <unnamed> ========================
+#settings
+#data
+======================== SCENE 15 <unnamed> ========================
+#settings
+#data
+======================== SCENE 16 <unnamed> ========================
+#settings
+#data
+======================== SCENE 17 <unnamed> ========================
+#settings
+#data
+======================== SCENE 18 <unnamed> ========================
+#settings
+#data
+======================== SCENE 19 <unnamed> ========================
+#settings
+#data
+======================== SCENE 20 <unnamed> ========================
+#settings
+#data
+======================== SCENE 21 <unnamed> ========================
+#settings
+#data
+======================== SCENE 22 <unnamed> ========================
+#settings
+#data
+======================== SCENE 23 <unnamed> ========================
+#settings
+#data
+======================== SCENE 24 <unnamed> ========================
+#settings
+#data
+======================== SCENE 25 <unnamed> ========================
+#settings
+#data
+======================== SCENE 26 <unnamed> ========================
+#settings
+#data
+======================== SCENE 27 <unnamed> ========================
+#settings
+#data
+======================== SCENE 28 <unnamed> ========================
+#settings
+#data
+======================== SCENE 29 <unnamed> ========================
+#settings
+#data
+======================== SCENE 30 <unnamed> ========================
+#settings
+#data
+======================== SCENE 31 <unnamed> ========================
+#settings
+#data
+======================== SCENE 32 <unnamed> ========================
+#settings
+#data
+======================== SCENE 33 <unnamed> ========================
+#settings
+#data
+======================== SCENE 34 <unnamed> ========================
+#settings
+#data
+======================== SCENE 35 <unnamed> ========================
+#settings
+#data
+======================== SCENE 36 <unnamed> ========================
+#settings
+#data
+======================== SCENE 37 <unnamed> ========================
+#settings
+#data
+======================== SCENE 38 <unnamed> ========================
+#settings
+#data
+======================== SCENE 39 <unnamed> ========================
+#settings
+#data
+======================== SCENE 40 <unnamed> ========================
+#settings
+#data
+======================== SCENE 41 <unnamed> ========================
+#settings
+#data
+======================== SCENE 42 <unnamed> ========================
+#settings
+#data
+======================== SCENE 43 <unnamed> ========================
+#settings
+#data
+======================== SCENE 44 <unnamed> ========================
+#settings
+#data
+======================== SCENE 45 <unnamed> ========================
+#settings
+#data
+======================== SCENE 46 <unnamed> ========================
+#settings
+#data
+======================== SCENE 47 <unnamed> ========================
+#settings
+#data
+======================== SCENE 48 <unnamed> ========================
+#settings
+#data
+======================== SCENE 49 <unnamed> ========================
+#settings
+#data
+======================== SCENE 50 <unnamed> ========================
+#settings
+#data
+======================== SCENE 51 <unnamed> ========================
+#settings
+#data
+======================== SCENE 52 <unnamed> ========================
+#settings
+#data
+======================== SCENE 53 <unnamed> ========================
+#settings
+#data
+======================== SCENE 54 <unnamed> ========================
+#settings
+#data
+======================== SCENE 55 <unnamed> ========================
+#settings
+#data
+======================== SCENE 56 <unnamed> ========================
+#settings
+#data
+======================== SCENE 57 <unnamed> ========================
+#settings
+#data
+======================== SCENE 58 <unnamed> ========================
+#settings
+#data
+======================== SCENE 59 <unnamed> ========================
+#settings
+#data
+======================== SCENE 60 <unnamed> ========================
+#settings
+#data
+======================== SCENE 61 <unnamed> ========================
+#settings
+#data
+======================== SCENE 62 <unnamed> ========================
+#settings
+#data
+======================== SCENE 63 <unnamed> ========================
+#settings
+#data
+======================== SCENE 64 <unnamed> ========================
+#settings
+#data
+======================== SCENE 65 <unnamed> ========================
+#settings
+#data
+======================== SCENE 66 <unnamed> ========================
+#settings
+#data
+======================== SCENE 67 <unnamed> ========================
+#settings
+#data
+======================== SCENE 68 <unnamed> ========================
+#settings
+#data
+======================== SCENE 69 <unnamed> ========================
+#settings
+#data
+======================== SCENE 70 <unnamed> ========================
+#settings
+#data
+======================== SCENE 71 <unnamed> ========================
+#settings
+#data
+======================== SCENE 72 <unnamed> ========================
+#settings
+#data
+======================== SCENE 73 <unnamed> ========================
+#settings
+#data
+======================== SCENE 74 <unnamed> ========================
+#settings
+#data
+======================== SCENE 75 <unnamed> ========================
+#settings
+#data
+======================== SCENE 76 <unnamed> ========================
+#settings
+#data
+======================== SCENE 77 <unnamed> ========================
+#settings
+#data
+======================== SCENE 78 <unnamed> ========================
+#settings
+#data
+======================== SCENE 79 <unnamed> ========================
+#settings
+#data
+======================== SCENE 80 <unnamed> ========================
+#settings
+#data
+======================== SCENE 81 <unnamed> ========================
+#settings
+#data
+======================== SCENE 82 <unnamed> ========================
+#settings
+#data
+======================== SCENE 83 <unnamed> ========================
+#settings
+#data
+======================== SCENE 84 <unnamed> ========================
+#settings
+#data
+======================== SCENE 85 <unnamed> ========================
+#settings
+#data
+======================== SCENE 86 <unnamed> ========================
+#settings
+#data
+======================== SCENE 87 <unnamed> ========================
+#settings
+#data
+======================== SCENE 88 <unnamed> ========================
+#settings
+#data
+======================== SCENE 89 <unnamed> ========================
+#settings
+#data
+======================== SCENE 90 <unnamed> ========================
+#settings
+#data
+======================== SCENE 91 <unnamed> ========================
+#settings
+#data
+======================== SCENE 92 <unnamed> ========================
+#settings
+#data
+======================== SCENE 93 <unnamed> ========================
+#settings
+#data
+======================== SCENE 94 <unnamed> ========================
+#settings
+#data
+======================== SCENE 95 <unnamed> ========================
+#settings
+#data
+======================== SCENE 96 <unnamed> ========================
+#settings
+#data
+======================== SCENE 97 <unnamed> ========================
+#settings
+#data
+======================== SCENE 98 <unnamed> ========================
+#settings
+#data
+======================== SCENE 99 <unnamed> ========================
+#settings
+#data

+ 609 - 0
ds-help_bak.txt

@@ -0,0 +1,609 @@
+======================== GLOBAL ========================
+#settings
+#data
+======================== SCENE 0 Een ========================
+#settings
+/i/am/also/a/variable/ds/occupy 1
+/i/am/also/a/variable/ds/delay 0
+/i/am/also/a/variable/ds/morph/timegrain 20
+/i/am/also/a/variable/ds/morph/curve/quality 0
+/i/am/also/a/variable/ds/slave 0
+/i/am/also/a/variable/ds/morph/curve/resolution 100
+/i/am/also/a/variable/ds/morph/curve/weight 0
+/i/am/also/a/variable/ds/morph/curve/shape 0
+/i/am/also/a/variable/ds/morph/time 0
+/i/am/also/a/variable/ds/morph 0
+/i/am/a/variable/ds/occupy 1
+/i/am/a/variable/ds/delay 0
+/i/am/a/variable/ds/morph/timegrain 20
+/i/am/a/variable/ds/morph/curve/quality 0
+/i/am/a/variable/ds/slave 0
+/i/am/a/variable/ds/morph/curve/resolution 100
+/i/am/a/variable/ds/morph/curve/weight 0
+/i/am/a/variable/ds/morph/curve/shape 0
+/i/am/a/variable/ds/morph/time 0
+/i/am/a/variable/ds/morph 0
+/i/am/another/morphing/variable/ds/occupy 1
+/i/am/another/morphing/variable/ds/delay 0
+/i/am/another/morphing/variable/ds/morph/timegrain 20
+/i/am/another/morphing/variable/ds/morph/curve/quality 3
+/i/am/another/morphing/variable/ds/slave 0
+/i/am/another/morphing/variable/ds/morph/curve/resolution 200
+/i/am/another/morphing/variable/ds/morph/curve/weight 0.8
+/i/am/another/morphing/variable/ds/morph/curve/shape 0
+/i/am/another/morphing/variable/ds/morph/time 3
+/i/am/another/morphing/variable/ds/morph 1
+/i/am/a/morphing/variable/ds/occupy 1
+/i/am/a/morphing/variable/ds/delay 0
+/i/am/a/morphing/variable/ds/morph/timegrain 20
+/i/am/a/morphing/variable/ds/morph/curve/quality 0
+/i/am/a/morphing/variable/ds/slave 0
+/i/am/a/morphing/variable/ds/morph/curve/resolution 100
+/i/am/a/morphing/variable/ds/morph/curve/weight 0
+/i/am/a/morphing/variable/ds/morph/curve/shape 0
+/i/am/a/morphing/variable/ds/morph/time 1
+/i/am/a/morphing/variable/ds/morph 1
+/i/am/no/morphing/variable/ds/morph 0
+/i/am/a/delayed/variable/ds/occupy 1
+/i/am/a/delayed/variable/ds/delay 1
+/i/am/a/delayed/variable/ds/morph/timegrain 20
+/i/am/a/delayed/variable/ds/morph/curve/quality 0
+/i/am/a/delayed/variable/ds/slave 0
+/i/am/a/delayed/variable/ds/morph/curve/resolution 100
+/i/am/a/delayed/variable/ds/morph/curve/weight 0
+/i/am/a/delayed/variable/ds/morph/curve/shape 0
+/i/am/a/delayed/variable/ds/morph/time 0
+/i/am/a/delayed/variable/ds/morph 0
+/i/am/a/master/ds/occupy 1
+/i/am/a/master/ds/delay 0
+/i/am/a/master/ds/morph/timegrain 20
+/i/am/a/master/ds/morph/curve/quality 0
+/i/am/a/master/ds/slave 0
+/i/am/a/master/ds/morph/curve/resolution 100
+/i/am/a/master/ds/morph/curve/weight 0
+/i/am/a/master/ds/morph/curve/shape 0
+/i/am/a/master/ds/morph/time 1
+/i/am/a/master/ds/morph 1
+/i/am/a/slave/ds/occupy 1
+/i/am/a/slave/ds/delay 0
+/i/am/a/slave/ds/morph/timegrain 20
+/i/am/a/slave/ds/morph/curve/quality 0
+/i/am/a/slave/ds/slave 1
+/i/am/a/slave/ds/morph/curve/resolution 100
+/i/am/a/slave/ds/morph/curve/weight 0
+/i/am/a/slave/ds/morph/curve/shape 0
+/i/am/a/slave/ds/morph/time 0
+/i/am/a/slave/ds/morph 0
+/i/am/occupied/ds/morph 0
+/i/got/changed/ds/morph 0
+/i/must/be/set/ds/morph 0
+/ev/grid/id0/labeling/size/ds/morph 0
+/ev/grid/id0/labeling/mark/color/ds/morph 0
+/ev/grid/id0/labeling/border/color/ds/morph 0
+/ev/grid/id0/labeling/zero/color/ds/morph 0
+/ev/grid/id0/labeling/state/ds/morph 0
+/ev/grid/id0/grid/color/ds/morph 0
+/ev/grid/id0/grid/res/y/ds/morph 0
+/ev/grid/id0/grid/res/x/ds/morph 0
+/ev/grid/id0/size/ds/morph 0
+/ev/grid/id0/grid/state/ds/morph 0
+#data
+/i/am/also/a/variable 63
+/i/am/a/variable 9
+/i/am/another/morphing/variable 4
+/i/am/a/morphing/variable 3
+/i/am/no/morphing/variable 0
+/i/am/a/delayed/variable 10
+/i/am/a/master 11
+/i/am/a/slave 12
+/ev/grid/id0/labeling/size 0.0025
+/ev/grid/id0/labeling/mark/color 1 1 0
+/ev/grid/id0/labeling/border/color 0 1 0
+/ev/grid/id0/labeling/zero/color 0 0 1
+/ev/grid/id0/labeling/state 0
+/ev/grid/id0/grid/color 1 1 1
+/ev/grid/id0/grid/res/y 2
+/ev/grid/id0/grid/res/x 2
+/ev/grid/id0/size 3
+/ev/grid/id0/grid/state 1
+======================== SCENE 1 Twee ========================
+#settings
+/i/am/also/a/variable/ds/occupy 1
+/i/am/also/a/variable/ds/delay 0
+/i/am/also/a/variable/ds/morph/timegrain 20
+/i/am/also/a/variable/ds/morph/curve/quality 0
+/i/am/also/a/variable/ds/slave 0
+/i/am/also/a/variable/ds/morph/curve/resolution 100
+/i/am/also/a/variable/ds/morph/curve/weight 0
+/i/am/also/a/variable/ds/morph/curve/shape 0
+/i/am/also/a/variable/ds/morph/time 0
+/i/am/also/a/variable/ds/morph 0
+/i/am/a/variable/ds/occupy 1
+/i/am/a/variable/ds/delay 0
+/i/am/a/variable/ds/morph/timegrain 20
+/i/am/a/variable/ds/morph/curve/quality 0
+/i/am/a/variable/ds/slave 0
+/i/am/a/variable/ds/morph/curve/resolution 100
+/i/am/a/variable/ds/morph/curve/weight 0
+/i/am/a/variable/ds/morph/curve/shape 0
+/i/am/a/variable/ds/morph/time 0
+/i/am/a/variable/ds/morph 0
+/i/am/another/morphing/variable/ds/occupy 1
+/i/am/another/morphing/variable/ds/delay 0
+/i/am/another/morphing/variable/ds/morph/timegrain 20
+/i/am/another/morphing/variable/ds/morph/curve/quality 3
+/i/am/another/morphing/variable/ds/slave 0
+/i/am/another/morphing/variable/ds/morph/curve/resolution 200
+/i/am/another/morphing/variable/ds/morph/curve/weight 0.8
+/i/am/another/morphing/variable/ds/morph/curve/shape 0
+/i/am/another/morphing/variable/ds/morph/time 3
+/i/am/another/morphing/variable/ds/morph 1
+/i/am/a/morphing/variable/ds/occupy 1
+/i/am/a/morphing/variable/ds/delay 0
+/i/am/a/morphing/variable/ds/morph/timegrain 20
+/i/am/a/morphing/variable/ds/morph/curve/quality 0
+/i/am/a/morphing/variable/ds/slave 0
+/i/am/a/morphing/variable/ds/morph/curve/resolution 100
+/i/am/a/morphing/variable/ds/morph/curve/weight 0
+/i/am/a/morphing/variable/ds/morph/curve/shape 0
+/i/am/a/morphing/variable/ds/morph/time 1
+/i/am/a/morphing/variable/ds/morph 1
+/i/am/no/morphing/variable/ds/morph 0
+/i/am/a/delayed/variable/ds/occupy 1
+/i/am/a/delayed/variable/ds/delay 1
+/i/am/a/delayed/variable/ds/morph/timegrain 20
+/i/am/a/delayed/variable/ds/morph/curve/quality 0
+/i/am/a/delayed/variable/ds/slave 0
+/i/am/a/delayed/variable/ds/morph/curve/resolution 100
+/i/am/a/delayed/variable/ds/morph/curve/weight 0
+/i/am/a/delayed/variable/ds/morph/curve/shape 0
+/i/am/a/delayed/variable/ds/morph/time 0
+/i/am/a/delayed/variable/ds/morph 0
+/i/am/a/master/ds/occupy 1
+/i/am/a/master/ds/delay 0
+/i/am/a/master/ds/morph/timegrain 20
+/i/am/a/master/ds/morph/curve/quality 0
+/i/am/a/master/ds/slave 0
+/i/am/a/master/ds/morph/curve/resolution 100
+/i/am/a/master/ds/morph/curve/weight 0
+/i/am/a/master/ds/morph/curve/shape 0
+/i/am/a/master/ds/morph/time 1
+/i/am/a/master/ds/morph 1
+/i/am/a/slave/ds/occupy 1
+/i/am/a/slave/ds/delay 0
+/i/am/a/slave/ds/morph/timegrain 20
+/i/am/a/slave/ds/morph/curve/quality 0
+/i/am/a/slave/ds/slave 1
+/i/am/a/slave/ds/morph/curve/resolution 100
+/i/am/a/slave/ds/morph/curve/weight 0
+/i/am/a/slave/ds/morph/curve/shape 0
+/i/am/a/slave/ds/morph/time 0
+/i/am/a/slave/ds/morph 0
+/i/am/occupied/ds/morph 0
+/i/got/changed/ds/morph 0
+/i/must/be/set/ds/morph 0
+/ev/grid/id0/labeling/size/ds/morph 0
+/ev/grid/id0/labeling/mark/color/ds/morph 0
+/ev/grid/id0/labeling/border/color/ds/morph 0
+/ev/grid/id0/labeling/zero/color/ds/morph 0
+/ev/grid/id0/labeling/state/ds/morph 0
+/ev/grid/id0/grid/color/ds/morph 0
+/ev/grid/id0/grid/res/y/ds/morph 0
+/ev/grid/id0/grid/res/x/ds/morph 0
+/ev/grid/id0/size/ds/morph 0
+/ev/grid/id0/grid/state/ds/morph 0
+#data
+/i/am/also/a/variable 24
+/i/am/a/variable 40
+/i/am/another/morphing/variable 64
+/i/am/a/morphing/variable 61
+/i/am/no/morphing/variable 100
+/i/am/a/delayed/variable 41
+/i/am/a/master 56
+/i/am/a/slave 59
+/ev/grid/id0/labeling/size 0.0025
+/ev/grid/id0/labeling/mark/color 1 1 0
+/ev/grid/id0/labeling/border/color 0 1 0
+/ev/grid/id0/labeling/zero/color 0 0 1
+/ev/grid/id0/labeling/state 1
+/ev/grid/id0/grid/color 1 1 1
+/ev/grid/id0/grid/res/y 6
+/ev/grid/id0/grid/res/x 5
+/ev/grid/id0/size 3
+/ev/grid/id0/grid/state 1
+======================== SCENE 2 Drie ========================
+#settings
+/i/am/also/a/variable/ds/occupy 1
+/i/am/also/a/variable/ds/delay 0
+/i/am/also/a/variable/ds/morph/timegrain 20
+/i/am/also/a/variable/ds/morph/curve/quality 0
+/i/am/also/a/variable/ds/slave 0
+/i/am/also/a/variable/ds/morph/curve/resolution 100
+/i/am/also/a/variable/ds/morph/curve/weight 0
+/i/am/also/a/variable/ds/morph/curve/shape 0
+/i/am/also/a/variable/ds/morph/time 0
+/i/am/also/a/variable/ds/morph 0
+/i/am/a/variable/ds/occupy 1
+/i/am/a/variable/ds/delay 0
+/i/am/a/variable/ds/morph/timegrain 20
+/i/am/a/variable/ds/morph/curve/quality 0
+/i/am/a/variable/ds/slave 0
+/i/am/a/variable/ds/morph/curve/resolution 100
+/i/am/a/variable/ds/morph/curve/weight 0
+/i/am/a/variable/ds/morph/curve/shape 0
+/i/am/a/variable/ds/morph/time 0
+/i/am/a/variable/ds/morph 0
+/i/am/another/morphing/variable/ds/occupy 1
+/i/am/another/morphing/variable/ds/delay 0
+/i/am/another/morphing/variable/ds/morph/timegrain 20
+/i/am/another/morphing/variable/ds/morph/curve/quality 3
+/i/am/another/morphing/variable/ds/slave 0
+/i/am/another/morphing/variable/ds/morph/curve/resolution 100
+/i/am/another/morphing/variable/ds/morph/curve/weight 1
+/i/am/another/morphing/variable/ds/morph/curve/shape -5.04
+/i/am/another/morphing/variable/ds/morph/time 4
+/i/am/another/morphing/variable/ds/morph 1
+/i/am/a/morphing/variable/ds/occupy 1
+/i/am/a/morphing/variable/ds/delay 0
+/i/am/a/morphing/variable/ds/morph/timegrain 30
+/i/am/a/morphing/variable/ds/morph/curve/quality 0
+/i/am/a/morphing/variable/ds/slave 0
+/i/am/a/morphing/variable/ds/morph/curve/resolution 100
+/i/am/a/morphing/variable/ds/morph/curve/weight 0
+/i/am/a/morphing/variable/ds/morph/curve/shape 0
+/i/am/a/morphing/variable/ds/morph/time 2
+/i/am/a/morphing/variable/ds/morph 1
+/i/am/no/morphing/variable/ds/morph 0
+/i/am/a/delayed/variable/ds/occupy 1
+/i/am/a/delayed/variable/ds/delay 1.5
+/i/am/a/delayed/variable/ds/morph/timegrain 20
+/i/am/a/delayed/variable/ds/morph/curve/quality 0
+/i/am/a/delayed/variable/ds/slave 0
+/i/am/a/delayed/variable/ds/morph/curve/resolution 100
+/i/am/a/delayed/variable/ds/morph/curve/weight 0
+/i/am/a/delayed/variable/ds/morph/curve/shape 0
+/i/am/a/delayed/variable/ds/morph/time 0
+/i/am/a/delayed/variable/ds/morph 0
+/i/am/a/master/ds/occupy 1
+/i/am/a/master/ds/delay 0
+/i/am/a/master/ds/morph/timegrain 20
+/i/am/a/master/ds/morph/curve/quality 0
+/i/am/a/master/ds/slave 0
+/i/am/a/master/ds/morph/curve/resolution 100
+/i/am/a/master/ds/morph/curve/weight 0
+/i/am/a/master/ds/morph/curve/shape 0
+/i/am/a/master/ds/morph/time 1
+/i/am/a/master/ds/morph 0
+/i/am/a/slave/ds/occupy 1
+/i/am/a/slave/ds/delay 0
+/i/am/a/slave/ds/morph/timegrain 20
+/i/am/a/slave/ds/morph/curve/quality 0
+/i/am/a/slave/ds/slave 1
+/i/am/a/slave/ds/morph/curve/resolution 100
+/i/am/a/slave/ds/morph/curve/weight 0
+/i/am/a/slave/ds/morph/curve/shape 0
+/i/am/a/slave/ds/morph/time 0
+/i/am/a/slave/ds/morph 0
+/i/am/occupied/ds/morph 0
+/i/got/changed/ds/morph 0
+/i/must/be/set/ds/morph 0
+/ev/grid/id0/labeling/size/ds/morph 0
+/ev/grid/id0/labeling/mark/color/ds/morph 0
+/ev/grid/id0/labeling/border/color/ds/morph 0
+/ev/grid/id0/labeling/zero/color/ds/morph 0
+/ev/grid/id0/labeling/state/ds/morph 0
+/ev/grid/id0/grid/color/ds/morph 0
+/ev/grid/id0/grid/res/y/ds/morph 0
+/ev/grid/id0/grid/res/x/ds/morph 0
+/ev/grid/id0/size/ds/morph 0
+/ev/grid/id0/grid/state/ds/morph 0
+#data
+/i/am/also/a/variable 77
+/i/am/a/variable 100
+/i/am/another/morphing/variable 122
+/i/am/a/morphing/variable 123
+/i/am/no/morphing/variable 11
+/i/am/a/delayed/variable 101
+/i/am/a/master 109
+/i/am/a/slave 107
+/ev/grid/id0/labeling/size 0.0025
+/ev/grid/id0/labeling/mark/color 1 1 0
+/ev/grid/id0/labeling/border/color 0 1 0
+/ev/grid/id0/labeling/zero/color 0 0 1
+/ev/grid/id0/labeling/state 0
+/ev/grid/id0/grid/color 1 1 1
+/ev/grid/id0/grid/res/y 99
+/ev/grid/id0/grid/res/x 49
+/ev/grid/id0/size 3
+/ev/grid/id0/grid/state 1
+======================== SCENE 3 <unnamed> ========================
+#settings
+#data
+======================== SCENE 4 <unnamed> ========================
+#settings
+#data
+======================== SCENE 5 <unnamed> ========================
+#settings
+#data
+======================== SCENE 6 <unnamed> ========================
+#settings
+#data
+======================== SCENE 7 <unnamed> ========================
+#settings
+#data
+======================== SCENE 8 <unnamed> ========================
+#settings
+#data
+======================== SCENE 9 <unnamed> ========================
+#settings
+#data
+======================== SCENE 10 <unnamed> ========================
+#settings
+#data
+======================== SCENE 11 <unnamed> ========================
+#settings
+#data
+======================== SCENE 12 <unnamed> ========================
+#settings
+#data
+======================== SCENE 13 <unnamed> ========================
+#settings
+#data
+======================== SCENE 14 <unnamed> ========================
+#settings
+#data
+======================== SCENE 15 <unnamed> ========================
+#settings
+#data
+======================== SCENE 16 <unnamed> ========================
+#settings
+#data
+======================== SCENE 17 <unnamed> ========================
+#settings
+#data
+======================== SCENE 18 <unnamed> ========================
+#settings
+#data
+======================== SCENE 19 <unnamed> ========================
+#settings
+#data
+======================== SCENE 20 <unnamed> ========================
+#settings
+#data
+======================== SCENE 21 <unnamed> ========================
+#settings
+#data
+======================== SCENE 22 <unnamed> ========================
+#settings
+#data
+======================== SCENE 23 <unnamed> ========================
+#settings
+#data
+======================== SCENE 24 <unnamed> ========================
+#settings
+#data
+======================== SCENE 25 <unnamed> ========================
+#settings
+#data
+======================== SCENE 26 <unnamed> ========================
+#settings
+#data
+======================== SCENE 27 <unnamed> ========================
+#settings
+#data
+======================== SCENE 28 <unnamed> ========================
+#settings
+#data
+======================== SCENE 29 <unnamed> ========================
+#settings
+#data
+======================== SCENE 30 <unnamed> ========================
+#settings
+#data
+======================== SCENE 31 <unnamed> ========================
+#settings
+#data
+======================== SCENE 32 <unnamed> ========================
+#settings
+#data
+======================== SCENE 33 <unnamed> ========================
+#settings
+#data
+======================== SCENE 34 <unnamed> ========================
+#settings
+#data
+======================== SCENE 35 <unnamed> ========================
+#settings
+#data
+======================== SCENE 36 <unnamed> ========================
+#settings
+#data
+======================== SCENE 37 <unnamed> ========================
+#settings
+#data
+======================== SCENE 38 <unnamed> ========================
+#settings
+#data
+======================== SCENE 39 <unnamed> ========================
+#settings
+#data
+======================== SCENE 40 <unnamed> ========================
+#settings
+#data
+======================== SCENE 41 <unnamed> ========================
+#settings
+#data
+======================== SCENE 42 <unnamed> ========================
+#settings
+#data
+======================== SCENE 43 <unnamed> ========================
+#settings
+#data
+======================== SCENE 44 <unnamed> ========================
+#settings
+#data
+======================== SCENE 45 <unnamed> ========================
+#settings
+#data
+======================== SCENE 46 <unnamed> ========================
+#settings
+#data
+======================== SCENE 47 <unnamed> ========================
+#settings
+#data
+======================== SCENE 48 <unnamed> ========================
+#settings
+#data
+======================== SCENE 49 <unnamed> ========================
+#settings
+#data
+======================== SCENE 50 <unnamed> ========================
+#settings
+#data
+======================== SCENE 51 <unnamed> ========================
+#settings
+#data
+======================== SCENE 52 <unnamed> ========================
+#settings
+#data
+======================== SCENE 53 <unnamed> ========================
+#settings
+#data
+======================== SCENE 54 <unnamed> ========================
+#settings
+#data
+======================== SCENE 55 <unnamed> ========================
+#settings
+#data
+======================== SCENE 56 <unnamed> ========================
+#settings
+#data
+======================== SCENE 57 <unnamed> ========================
+#settings
+#data
+======================== SCENE 58 <unnamed> ========================
+#settings
+#data
+======================== SCENE 59 <unnamed> ========================
+#settings
+#data
+======================== SCENE 60 <unnamed> ========================
+#settings
+#data
+======================== SCENE 61 <unnamed> ========================
+#settings
+#data
+======================== SCENE 62 <unnamed> ========================
+#settings
+#data
+======================== SCENE 63 <unnamed> ========================
+#settings
+#data
+======================== SCENE 64 <unnamed> ========================
+#settings
+#data
+======================== SCENE 65 <unnamed> ========================
+#settings
+#data
+======================== SCENE 66 <unnamed> ========================
+#settings
+#data
+======================== SCENE 67 <unnamed> ========================
+#settings
+#data
+======================== SCENE 68 <unnamed> ========================
+#settings
+#data
+======================== SCENE 69 <unnamed> ========================
+#settings
+#data
+======================== SCENE 70 <unnamed> ========================
+#settings
+#data
+======================== SCENE 71 <unnamed> ========================
+#settings
+#data
+======================== SCENE 72 <unnamed> ========================
+#settings
+#data
+======================== SCENE 73 <unnamed> ========================
+#settings
+#data
+======================== SCENE 74 <unnamed> ========================
+#settings
+#data
+======================== SCENE 75 <unnamed> ========================
+#settings
+#data
+======================== SCENE 76 <unnamed> ========================
+#settings
+#data
+======================== SCENE 77 <unnamed> ========================
+#settings
+#data
+======================== SCENE 78 <unnamed> ========================
+#settings
+#data
+======================== SCENE 79 <unnamed> ========================
+#settings
+#data
+======================== SCENE 80 <unnamed> ========================
+#settings
+#data
+======================== SCENE 81 <unnamed> ========================
+#settings
+#data
+======================== SCENE 82 <unnamed> ========================
+#settings
+#data
+======================== SCENE 83 <unnamed> ========================
+#settings
+#data
+======================== SCENE 84 <unnamed> ========================
+#settings
+#data
+======================== SCENE 85 <unnamed> ========================
+#settings
+#data
+======================== SCENE 86 <unnamed> ========================
+#settings
+#data
+======================== SCENE 87 <unnamed> ========================
+#settings
+#data
+======================== SCENE 88 <unnamed> ========================
+#settings
+#data
+======================== SCENE 89 <unnamed> ========================
+#settings
+#data
+======================== SCENE 90 <unnamed> ========================
+#settings
+#data
+======================== SCENE 91 <unnamed> ========================
+#settings
+#data
+======================== SCENE 92 <unnamed> ========================
+#settings
+#data
+======================== SCENE 93 <unnamed> ========================
+#settings
+#data
+======================== SCENE 94 <unnamed> ========================
+#settings
+#data
+======================== SCENE 95 <unnamed> ========================
+#settings
+#data
+======================== SCENE 96 <unnamed> ========================
+#settings
+#data
+======================== SCENE 97 <unnamed> ========================
+#settings
+#data
+======================== SCENE 98 <unnamed> ========================
+#settings
+#data
+======================== SCENE 99 <unnamed> ========================
+#settings
+#data

+ 6 - 0
ds_gui-help.pd

@@ -0,0 +1,6 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 70 114 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 69 60 (gui for ds_logic);
+#X text 71 29 ds_gui <domain>;

+ 66 - 0
ds_gui.pd

@@ -0,0 +1,66 @@
+#N canvas 569 22 561 523 10;
+#X obj 101 115 cnv 15 148 114 empty empty empty 20 12 0 14 -228856
+-66577 0;
+#X obj 104 173 bng 15 250 50 0 /\$1/ds/save /\$1/ds/save save 17 7
+0 10 -258113 -1 -1;
+#X obj 104 193 bng 15 250 50 0 /\$1/ds/load /\$1/ds/load load 17 7
+0 10 -4034 -1 -1;
+#X obj 174 173 bng 15 250 50 0 /\$1/ds/resave /\$1/ds/resave resave
+17 7 0 10 -258113 -1 -1;
+#X obj 174 193 bng 15 250 50 0 /\$1/ds/reload /\$1/ds/reload reload
+17 7 0 10 -4034 -1 -1;
+#X obj 123 129 nbx 3 15 0 999 0 0 /\$1/ds/scene/current /\$1/ds/scene/current
+scene 0 -8 0 12 -204786 -1 -1 0 256;
+#X obj 104 129 bng 15 250 50 0 /\$1/ds/scene/current/prev /\$1/ds/scene/current/prev
+< 4 7 0 10 -204786 -1 -1;
+#X obj 174 129 bng 15 250 50 0 /\$1/ds/scene/current/next /\$1/ds/scene/current/next
+> 5 7 0 10 -204786 -1 -1;
+#X text 101 70 (gui for ds_logic);
+#X text 91 40 ds_gui <domain>;
+#X text 302 246 (c)2011-2012 Marian Weger;
+#X obj 104 212 bng 15 250 50 0 /\$1/ds/advanced/vis /\$1/ds/advanced/vis
+advanced 17 7 0 10 -262144 -1 -1;
+#X msg 327 326 vis 1;
+#X obj 327 348 s pd-\$0-advanced;
+#N canvas 398 52 189 189 \$0-advanced 0;
+#X obj 2 -119 cnv 15 180 180 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 9 -89 tgl 15 1 /\$1/ds/settings/state /\$1/ds/settings/state
+recall_settings 17 7 0 10 -262144 -1 -1 1 1;
+#X obj 9 -69 tgl 15 1 /\$1/ds/data/state /\$1/ds/data/state recall_data
+17 7 0 10 -262144 -1 -1 1 1;
+#X obj 9 -39 bng 15 250 50 0 /\$1/ds/reg/dialog /\$1/ds/reg/dialog
+register_settings 17 7 0 10 -4032 -1 -1;
+#X obj 9 -109 tgl 15 1 /\$1/ds/global/state /\$1/ds/global/state recall_global
+17 7 0 10 -262144 -1 -1 0 1;
+#X obj 9 21 bng 15 250 50 0 /\$1/ds/edit/dialog /\$1/ds/edit/dialog
+edit 17 7 0 10 -258113 -1 -1;
+#X obj 9 -19 bng 15 250 50 0 /\$1/ds/reg/settings/buffer /\$1/ds/reg/settings/buffer
+register_settings_buffer 17 7 0 10 -257985 -1 -1;
+#X coords 0 189 1 188 85 60 0;
+#X restore 327 374 pd \$0-advanced;
+#X obj 196 151 bng 15 250 50 0 /\$1/ds/store /\$1/ds/store store 17
+7 0 10 -258113 -1 -1;
+#X obj 327 304 r /\$1/ds/advanced/vis;
+#X obj 123 150 nbx 3 15 0 999 0 0 /\$1/ds/scene/selected /\$1/ds/scene/selected
+empty 0 -8 0 12 -261234 -1 -1 0 256;
+#X obj 104 150 bng 15 250 50 0 /\$1/ds/scene/selected/prev /\$1/ds/scene/selected/prev
+< 4 7 0 10 -261234 -1 -1;
+#X obj 174 150 bng 15 250 50 0 /\$1/ds/scene/selected/next /\$1/ds/scene/selected/next
+> 5 7 0 10 -261234 -1 -1;
+#X obj 196 129 bng 15 250 50 0 /\$1/ds/recall /\$1/ds/recall recall
+17 7 0 10 -4034 -1 -1;
+#X obj 174 212 bng 15 250 50 0 /\$1/ds/playlist/vis /\$1/ds/playlist/vis
+playlist 17 7 0 10 -262144 -1 -1;
+#X msg 85 332 vis 1;
+#X obj 85 354 s pd-\$0-playlist;
+#N canvas 604 68 333 238 \$0-playlist 0;
+#X obj 3 4 ds_pl_gui \$1;
+#X restore 84 381 pd \$0-playlist;
+#X obj 85 309 r /\$1/ds/playlist/vis;
+#X text 300 55 for help: see [ds-help];
+#X connect 12 0 13 0;
+#X connect 16 0 12 0;
+#X connect 22 0 23 0;
+#X connect 25 0 22 0;
+#X coords 0 -1 1 1 150 130 1 100 100;

+ 7 - 0
ds_logic-help.pd

@@ -0,0 +1,7 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 70 114 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 56 61 (corresponding gui: [ds_gui]);
+#X text 41 3 ds_logic <domain> <arg1> <arg2> ...;
+#X text 55 32 arguments: nodispatch \, direct;

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1612 - 0
ds_logic.pd


+ 5 - 0
ds_pl_gui-help.pd

@@ -0,0 +1,5 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 70 114 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 23 13 ds_pl_gui <domain>;

+ 159 - 0
ds_pl_gui.pd

@@ -0,0 +1,159 @@
+#N canvas 446 22 1042 713 10;
+#X text 423 388 (c)2012 Marian Weger;
+#X text 60 24 ds_pl_gui <domain>;
+#X obj 106 472 t b f;
+#X msg 89 555 set \$1;
+#X obj 89 525 + 1;
+#X obj 89 503 - 0;
+#X obj 89 579 s \$0-cursor;
+#X obj 273 442 r \$0-cursor-set;
+#X obj 273 524 + 0;
+#X obj 273 468 - 1;
+#X obj 89 421 r /\$1/ds/scene/current;
+#X obj 273 558 s /\$1/ds/scene/current;
+#X obj 106 450 r \$0-gui-offset;
+#X obj 288 495 r \$0-gui-offset;
+#N canvas 790 238 450 300 prev-next 0;
+#X msg 38 64 -1;
+#X msg 118 64 1;
+#X obj 38 146 +;
+#X obj 118 146 +;
+#X obj 118 205 max 0;
+#X obj 38 22 r \$0-gui-offset/prev;
+#X obj 118 42 r \$0-gui-offset/next;
+#X obj 133 102 r \$0-gui-offset;
+#X obj 118 229 s \$0-gui-offset;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 4 0;
+#X connect 4 0 8 0;
+#X connect 5 0 0 0;
+#X connect 6 0 1 0;
+#X connect 7 0 3 1;
+#X connect 7 0 2 1;
+#X restore 277 54 pd prev-next;
+#X obj 696 579 t b f;
+#X obj 676 693 s \$0-offset-slider;
+#X msg 676 671 set \$1;
+#X obj 477 461 r \$0-offset-slider-set;
+#X obj 477 617 int;
+#X obj 477 595 + 0.5;
+#X obj 477 659 t b f b;
+#X msg 543 628 0;
+#X msg 573 628 1;
+#X obj 676 483 spigot 1;
+#X obj 498 498 r /\$1/ds/scene/quantity;
+#X obj 696 515 r /\$1/ds/scene/quantity;
+#X obj 477 692 s \$0-gui-offset;
+#X obj 617 159 t b f;
+#X msg 600 242 set \$1;
+#X obj 600 212 + 1;
+#X obj 600 190 - 0;
+#X obj 772 225 + 0;
+#X obj 772 169 - 1;
+#X obj 772 147 r \$0-selected-set;
+#X obj 600 266 s \$0-selected;
+#X obj 600 108 r /\$1/ds/scene/selected;
+#X obj 772 263 s /\$1/ds/scene/selected;
+#X obj 617 137 r \$0-gui-offset;
+#X obj 787 196 r \$0-gui-offset;
+#X obj 676 461 r \$0-gui-offset;
+#X msg 869 369 0;
+#X obj 869 391 s \$0-gui-offset;
+#X obj 676 609 / 100;
+#X obj 696 537 - 0;
+#X obj 477 573 * 90;
+#X obj 101 115 cnv 20 307 194 empty empty empty 20 12 0 14 -228856
+-66577 0;
+#X obj 100 116 vradio 14 1 0 12 \$0-cursor-set \$0-cursor empty 0 -8
+0 10 -204786 -1 -1 1;
+#X obj 380 116 vradio 14 1 0 12 \$0-selected-set \$0-selected empty
+0 -8 0 10 -261234 -1 -1 1;
+#X obj 101 271 cnv 13 14 13 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 101 116 cnv 13 14 13 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 114 291 nbx 3 14 -1e+37 1e+37 0 0 /\$1/ds/scene/current /\$1/ds/scene/current
+current 0 -8 0 10 -232576 -1 -1 0 256;
+#X obj 380 271 cnv 13 14 13 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 380 116 cnv 13 14 13 empty empty empty 20 12 0 14 -228856 -66577
+0;
+#X obj 394 115 bng 15 250 50 0 \$0-gui-offset/prev \$0-gui-offset/prev
+< 4 7 0 10 -262144 -1 -1;
+#X obj 394 270 bng 15 250 50 0 \$0-gui-offset/next \$0-gui-offset/next
+> 5 7 0 10 -262144 -1 -1;
+#X obj 394 132 vsl 15 135 1 0 0 0 \$0-offset-slider-set \$0-offset-slider
+empty 0 -9 0 10 -262144 -1 -1 13400 1;
+#X symbolatom 150 291 30 0 0 0 - /#1/ds/scene/current/name #0-dummy
+;
+#X obj 114 130 ds_pl_gui_element \$1 0 \$0;
+#X obj 114 144 ds_pl_gui_element \$1 1 \$0;
+#X obj 114 158 ds_pl_gui_element \$1 2 \$0;
+#X obj 114 172 ds_pl_gui_element \$1 3 \$0;
+#X obj 114 186 ds_pl_gui_element \$1 4 \$0;
+#X obj 114 200 ds_pl_gui_element \$1 5 \$0;
+#X obj 114 214 ds_pl_gui_element \$1 6 \$0;
+#X obj 114 228 ds_pl_gui_element \$1 7 \$0;
+#X obj 114 242 ds_pl_gui_element \$1 8 \$0;
+#X obj 114 256 ds_pl_gui_element \$1 9 \$0;
+#X obj 869 324 loadbang;
+#X obj 869 346 del 3000;
+#X obj 498 520 - 9;
+#X obj 90 716 list_read 0;
+#X obj 90 622 r /\$1/ds/scene/current;
+#X obj 90 741 route bang;
+#X obj 147 766 s /\$1/ds/scene/current/name;
+#X obj 103 647 r /\$1/ds/scene-names;
+#X obj 103 669 t b a;
+#X connect 2 0 5 0;
+#X connect 2 1 5 1;
+#X connect 3 0 6 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 7 0 9 0;
+#X connect 8 0 11 0;
+#X connect 9 0 8 0;
+#X connect 10 0 5 0;
+#X connect 12 0 2 0;
+#X connect 13 0 8 1;
+#X connect 15 1 43 1;
+#X connect 17 0 16 0;
+#X connect 18 0 45 0;
+#X connect 19 0 21 0;
+#X connect 20 0 19 0;
+#X connect 21 0 23 0;
+#X connect 21 1 27 0;
+#X connect 21 2 22 0;
+#X connect 22 0 24 1;
+#X connect 23 0 24 1;
+#X connect 24 0 43 0;
+#X connect 25 0 70 0;
+#X connect 26 0 44 0;
+#X connect 28 0 31 0;
+#X connect 28 1 31 1;
+#X connect 29 0 35 0;
+#X connect 30 0 29 0;
+#X connect 31 0 30 0;
+#X connect 32 0 37 0;
+#X connect 33 0 32 0;
+#X connect 34 0 33 0;
+#X connect 36 0 31 0;
+#X connect 38 0 28 0;
+#X connect 39 0 32 1;
+#X connect 40 0 24 0;
+#X connect 41 0 42 0;
+#X connect 43 0 17 0;
+#X connect 44 0 15 0;
+#X connect 45 0 20 0;
+#X connect 68 0 69 0;
+#X connect 69 0 41 0;
+#X connect 70 0 45 1;
+#X connect 71 0 73 0;
+#X connect 72 0 71 0;
+#X connect 73 1 74 0;
+#X connect 75 0 76 0;
+#X connect 76 0 71 0;
+#X connect 76 1 71 1;
+#X coords 0 -1 1 1 309 210 1 100 100;

+ 6 - 0
ds_pl_gui_element-help.pd

@@ -0,0 +1,6 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 70 114 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 23 13 ds_pl_gui_element <name> <id>;
+#X text 23 43 used by [ds_pl_gui];

+ 30 - 0
ds_pl_gui_element.pd

@@ -0,0 +1,30 @@
+#N canvas 17 22 679 515 10;
+#X text 178 205 (c)2012 Marian Weger;
+#X symbolatom 136 100 38 0 0 0 - #0-name #0-name-set;
+#X obj 458 137 + \$2;
+#X obj 458 163 s \$0-slot-id;
+#X obj 100 100 nbx 3 14 -1e+37 1e+37 0 0 \$0-slot-id-set \$0-slot-id
+empty 0 -8 0 10 -232576 -1 -1 0 256;
+#X obj 458 114 max 0;
+#X obj 458 92 r \$3-gui-offset;
+#X obj 156 300 r \$0-name-set;
+#X obj 225 324 r \$0-slot-id;
+#X text 23 13 ds_pl_gui_element <name> <id>;
+#X text 23 43 used by [ds_pl_gui];
+#X text 184 351 (tbf);
+#X obj 422 360 list_read 0;
+#X obj 422 385 route bang;
+#X obj 435 291 r /\$1/ds/scene-names;
+#X obj 435 313 t b a;
+#X obj 479 410 s \$0-name;
+#X obj 422 266 r \$0-slot-id;
+#X connect 2 0 3 0;
+#X connect 5 0 2 0;
+#X connect 6 0 5 0;
+#X connect 12 0 13 0;
+#X connect 13 1 16 0;
+#X connect 14 0 15 0;
+#X connect 15 0 12 0;
+#X connect 15 1 12 1;
+#X connect 17 0 12 0;
+#X coords 0 -1 1 1 266 14 2 100 100;

+ 7 - 0
ds_reg-help.pd

@@ -0,0 +1,7 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X text 37 52 registers variable to state saving system;
+#X text 40 21 ds_reg <domain> <name> <arg1> <arg2> ...;
+#X text 39 80 arguments: nomorph \, slave \, set;
+#X obj 101 133 cnv 15 200 30 empty empty see_[ds-help]_for_help 20
+12 0 14 -261234 -1 0;

+ 557 - 0
ds_reg.pd

@@ -0,0 +1,557 @@
+#N canvas 155 25 853 550 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#N canvas 138 65 783 750 dispatch 1;
+#N canvas 458 24 812 638 morph 1;
+#X obj 215 68 inlet;
+#X obj 153 580 outlet;
+#X obj 272 90 * 1000;
+#X obj 239 580 outlet;
+#X obj 272 68 r \$2/ds/morph/time;
+#X obj 215 90 t b f;
+#X obj 153 304 sel 1;
+#X obj 257 134 f 0;
+#X msg 257 164 set 0 \, 1 \$1;
+#X obj 257 223 line;
+#X obj 284 370 r \$2;
+#X obj 284 391 route float;
+#X obj 254 459 - 0;
+#X obj 239 481 *;
+#X obj 239 523 + 0;
+#X obj 269 436 t f f;
+#X obj 257 248 t f f;
+#X obj 278 188 r \$2/ds/morph/timegrain;
+#X text 286 208 only for Pd version >= 0.43;
+#X obj 269 414 f;
+#X obj 242 350 t f b;
+#X obj 257 304 fadecurve \$0-\$2/ds/morph/curve 100 0;
+#X obj 470 76 r \$2/ds/morph/curve/shape;
+#X obj 488 121 r \$2/ds/morph/curve/weight;
+#X obj 507 165 r \$2/ds/morph/curve/resolution;
+#X obj 527 212 r \$2/ds/morph/curve/quality;
+#X obj 546 257 r \$2/ds/morph/curve/vis;
+#X msg 470 98 shape \$1;
+#X msg 488 143 weight \$1;
+#X msg 527 234 quality \$1;
+#X msg 507 187 resolution \$1;
+#X msg 546 279 vis \$1;
+#X connect 0 0 5 0;
+#X connect 2 0 7 1;
+#X connect 4 0 2 0;
+#X connect 5 0 7 0;
+#X connect 5 1 20 0;
+#X connect 6 0 1 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 9 0 16 0;
+#X connect 10 0 11 0;
+#X connect 11 0 19 1;
+#X connect 12 0 13 1;
+#X connect 13 0 14 0;
+#X connect 14 0 3 0;
+#X connect 15 0 12 1;
+#X connect 15 1 14 1;
+#X connect 16 0 6 0;
+#X connect 16 1 21 0;
+#X connect 17 0 9 2;
+#X connect 19 0 15 0;
+#X connect 20 0 12 0;
+#X connect 20 1 19 0;
+#X connect 21 0 13 0;
+#X connect 22 0 27 0;
+#X connect 23 0 28 0;
+#X connect 24 0 30 0;
+#X connect 25 0 29 0;
+#X connect 26 0 31 0;
+#X connect 27 0 21 1;
+#X connect 28 0 21 1;
+#X connect 29 0 21 1;
+#X connect 30 0 21 1;
+#X connect 31 0 21 1;
+#X restore 163 905 pd morph;
+#N canvas 605 22 427 408 slave 0;
+#X obj 173 64 inlet;
+#X obj 200 321 outlet;
+#X obj 200 296 list;
+#X msg 107 80 1;
+#X obj 107 56 t b;
+#X obj 107 106 t b f;
+#X msg 173 110 1;
+#X obj 173 215 &&;
+#X obj 173 237 sel 1;
+#X obj 173 259 t b b;
+#X msg 245 143 0;
+#X obj 107 34 r \$2/ds/slave/start;
+#X obj 173 88 t b a;
+#X connect 0 0 12 0;
+#X connect 2 0 1 0;
+#X connect 3 0 5 0;
+#X connect 4 0 3 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 9 0 2 0;
+#X connect 9 1 10 0;
+#X connect 10 0 7 0;
+#X connect 10 0 7 1;
+#X connect 11 0 4 0;
+#X connect 12 0 6 0;
+#X connect 12 1 2 1;
+#X restore 124 416 pd slave;
+#X obj 85 30 r \$2/dispatch;
+#X obj 85 1063 s \$0-dispatched;
+#X obj 208 1030 list trim;
+#X obj 247 994 list prepend set;
+#X obj 208 1063 s \$2;
+#X obj 134 317 list;
+#X obj 134 260 r \$2/redispatch;
+#X obj 85 890 t b a;
+#X obj 124 363 r \$2/ds/slave;
+#X obj 124 660 r \$2/ds/morph;
+#X obj 247 942 r \$2/ds/set;
+#X obj 163 826 r \$2/ds/morph/time;
+#X obj 85 788 kdemux2;
+#X obj 85 388 kdemux2;
+#X obj 85 480 kdemux2;
+#X obj 208 968 kdemux2;
+#X obj 124 851 kdemux2;
+#X obj 124 454 r \$2/ds/delay;
+#N canvas 378 104 346 300 delay 0;
+#X obj 66 20 inlet;
+#X obj 103 214 outlet;
+#X obj 103 165 list;
+#X obj 66 52 t b a;
+#X obj 66 124 del 0;
+#X obj 103 187 list trim;
+#X obj 133 42 * 1000;
+#X obj 133 20 r \$2/ds/delay;
+#X connect 0 0 3 0;
+#X connect 2 0 5 0;
+#X connect 3 0 4 0;
+#X connect 3 1 2 1;
+#X connect 4 0 2 0;
+#X connect 5 0 1 0;
+#X connect 6 0 4 1;
+#X connect 7 0 6 0;
+#X restore 124 507 pd delay;
+#N canvas 457 223 609 443 change 0;
+#X obj 105 43 inlet;
+#X obj 105 117 change;
+#X obj 105 329 outlet;
+#X obj 168 117 t a a;
+#X obj 207 142 list length;
+#X obj 207 164 > 1;
+#X obj 168 189 kdemux2;
+#X obj 208 231 symbol;
+#X obj 208 253 schange;
+#X obj 208 275 list trim;
+#X obj 105 75 route float;
+#X obj 287 27 r \$2;
+#X msg 287 71 set \$1;
+#X obj 350 71 t a a;
+#X obj 389 96 list length;
+#X obj 389 118 > 1;
+#X obj 350 143 kdemux2;
+#X obj 287 49 route float;
+#X connect 0 0 10 0;
+#X connect 1 0 2 0;
+#X connect 3 0 6 0;
+#X connect 3 1 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 0;
+#X connect 6 1 2 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 9 0 2 0;
+#X connect 10 0 1 0;
+#X connect 10 1 3 0;
+#X connect 11 0 17 0;
+#X connect 12 0 1 0;
+#X connect 13 0 16 0;
+#X connect 13 1 14 0;
+#X connect 14 0 15 0;
+#X connect 15 0 16 1;
+#X connect 16 0 8 1;
+#X connect 17 0 12 0;
+#X connect 17 1 13 0;
+#X restore 124 212 pd change;
+#X obj 85 188 kdemux2;
+#X obj 124 164 r \$2/ds/change;
+#X obj 136 58 r \$2/ds/occupy;
+#X obj 85 82 kdemux2 1;
+#N canvas 724 154 517 396 occupy 0;
+#X obj 181 127 r \$0-busy;
+#X obj 181 149 == 0;
+#X obj 136 172 spigot 1;
+#X obj 136 66 inlet;
+#X obj 136 224 outlet;
+#X obj 298 42 r \$0-dispatch-start;
+#X msg 298 64 1;
+#X obj 384 145 r \$0-dispatched;
+#X msg 384 167 0;
+#X obj 338 220 s \$0-busy;
+#X obj 331 102 r \$2/ds/morph;
+#X obj 298 148 spigot;
+#X connect 0 0 1 0;
+#X connect 1 0 2 1;
+#X connect 2 0 4 0;
+#X connect 3 0 2 0;
+#X connect 5 0 6 0;
+#X connect 6 0 11 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 10 0 11 1;
+#X connect 11 0 9 0;
+#X restore 136 107 pd occupy;
+#X obj 137 688 r \$2/ds/nomorph;
+#X obj 137 710 == 0;
+#X obj 124 762 &&;
+#X obj 137 732 t b f;
+#X obj 85 260 t a a;
+#X obj 85 578 t a b;
+#X obj 112 599 s \$0-dispatch-start;
+#X connect 0 0 3 0;
+#X connect 0 1 17 0;
+#X connect 1 0 16 0;
+#X connect 2 0 25 0;
+#X connect 4 0 6 0;
+#X connect 5 0 4 0;
+#X connect 7 0 15 0;
+#X connect 8 0 7 0;
+#X connect 9 0 3 0;
+#X connect 9 1 17 0;
+#X connect 10 0 15 1;
+#X connect 11 0 29 0;
+#X connect 12 0 17 1;
+#X connect 13 0 18 1;
+#X connect 14 0 9 0;
+#X connect 14 1 18 0;
+#X connect 15 0 16 0;
+#X connect 15 1 1 0;
+#X connect 16 0 32 0;
+#X connect 16 1 20 0;
+#X connect 17 0 4 0;
+#X connect 17 1 5 0;
+#X connect 18 0 9 0;
+#X connect 18 1 0 0;
+#X connect 19 0 16 1;
+#X connect 20 0 32 0;
+#X connect 21 0 31 0;
+#X connect 22 0 31 0;
+#X connect 22 1 21 0;
+#X connect 23 0 22 1;
+#X connect 24 0 25 1;
+#X connect 25 0 22 0;
+#X connect 25 1 26 0;
+#X connect 26 0 22 0;
+#X connect 27 0 28 0;
+#X connect 28 0 30 0;
+#X connect 29 0 14 1;
+#X connect 30 0 29 0;
+#X connect 30 1 29 1;
+#X connect 31 0 15 0;
+#X connect 31 1 7 1;
+#X connect 32 0 14 0;
+#X connect 32 1 33 0;
+#X restore 59 307 pd dispatch;
+#X obj 255 422 r \$0-dispatched;
+#X obj 255 454 outlet slave-chain;
+#N canvas 554 22 784 717 fetch_and_route 0;
+#X obj 261 119 r \$2;
+#X obj 132 573 s /\$1/ds/fetched;
+#X obj 132 551 list prepend \$2;
+#X obj 51 141 t b b;
+#X msg 78 164 0;
+#X msg 171 237 1;
+#X obj 51 284 route bang set;
+#X obj 171 349 list trim;
+#X obj 152 119 r \$2/route;
+#X obj 241 393 s;
+#X obj 152 141 t b b a;
+#X obj 352 204 t b;
+#X obj 352 226 list prepend \$2;
+#X obj 352 248 s \$2/route;
+#X text 437 119 global resend;
+#X text 447 141 local resend;
+#X text 161 102 route value;
+#X obj 352 314 s \$2/route;
+#X text 424 292 global route;
+#X text 434 314 local route;
+#X obj 51 237 list;
+#X obj 352 372 r /\$1/ds/morph/time;
+#X text 467 370 global morph time;
+#X text 478 391 local morph time;
+#X obj 352 394 s \$2/ds/morph/time;
+#X obj 51 259 list trim;
+#X obj 51 59 r /\$1/ds/fetch/data;
+#X text 39 41 fetch data to storage;
+#X obj 492 204 t b;
+#X obj 492 248 s \$2/route;
+#X obj 492 182 r \$2/ds/print;
+#X obj 429 551 print \$2;
+#X obj 492 226 list prepend \$0-print;
+#X obj 429 529 r \$0-print;
+#X obj -20 442 spigot;
+#X obj -20 464 t b b;
+#X msg -20 486 <not initialised>;
+#X msg 40 442 0;
+#X obj 13 371 r \$2/ds/print;
+#X obj 13 393 t b;
+#X msg 13 415 1;
+#X obj 132 323 kdemux2;
+#X obj 352 119 r /\$1/resend;
+#X obj 352 182 r \$2/resend;
+#X obj 352 141 s \$2/resend;
+#X obj 352 292 r /\$1/route;
+#X connect 0 0 20 1;
+#X connect 2 0 1 0;
+#X connect 3 0 20 0;
+#X connect 3 1 4 0;
+#X connect 4 0 41 1;
+#X connect 5 0 41 1;
+#X connect 6 0 34 0;
+#X connect 6 1 41 0;
+#X connect 6 2 41 0;
+#X connect 7 0 9 0;
+#X connect 8 0 10 0;
+#X connect 10 0 20 0;
+#X connect 10 1 5 0;
+#X connect 10 2 9 1;
+#X connect 11 0 12 0;
+#X connect 12 0 13 0;
+#X connect 20 0 25 0;
+#X connect 21 0 24 0;
+#X connect 25 0 6 0;
+#X connect 26 0 3 0;
+#X connect 28 0 32 0;
+#X connect 30 0 28 0;
+#X connect 32 0 29 0;
+#X connect 33 0 31 0;
+#X connect 34 0 35 0;
+#X connect 35 0 36 0;
+#X connect 35 1 37 0;
+#X connect 36 0 7 0;
+#X connect 37 0 34 1;
+#X connect 38 0 39 0;
+#X connect 39 0 40 0;
+#X connect 40 0 34 1;
+#X connect 41 0 2 0;
+#X connect 41 1 7 0;
+#X connect 42 0 44 0;
+#X connect 43 0 11 0;
+#X connect 45 0 17 0;
+#X restore 59 285 pd fetch_and_route;
+#N canvas 191 235 428 316 \$0-gui 0;
+#X obj -130 -13 cnv 15 400 300 empty empty \$2 12 12 0 12 -228856 -1
+0;
+#X obj -35 65 nbx 4 14 -1e+37 1e+37 0 0 \$2/ds/morph/time \$2/ds/morph/time
+time/s 47 7 0 10 -4034 -1 -1 4 256;
+#X obj -121 65 tgl 15 0 \$2/ds/morph \$2/ds/morph morph 17 7 0 10 -4034
+-1 -1 1 1;
+#X obj -121 15 tgl 15 0 \$2/ds/slave \$2/ds/slave slave 17 7 0 10 -203904
+-1 -1 0 1;
+#X obj -121 245 bng 15 250 50 0 \$2/ds/print \$2/ds/print print_current_value
+17 7 0 10 -262144 -1 -1;
+#X obj -35 105 nbx 4 14 -1e+37 1e+37 0 0 \$2/ds/morph/curve/shape \$2/ds/morph/curve/shape
+shape 47 7 0 10 -204786 -1 -1 4.42 256;
+#X obj -35 125 nbx 4 14 0 1 0 0 \$2/ds/morph/curve/weight \$2/ds/morph/curve/weight
+weight 47 7 0 10 -204786 -1 -1 0.81 256;
+#X obj -35 145 nbx 4 14 10 10000 0 0 \$2/ds/morph/curve/resolution
+\$2/ds/morph/curve/resolution resolution 47 7 0 10 -204786 -1 -1 100
+256;
+#X obj -121 145 hradio 15 1 0 4 \$2/ds/morph/curve/quality \$2/ds/morph/curve/quality
+quality 0 -8 0 10 -204786 -1 -1 3;
+#X obj -121 105 bng 15 250 50 0 \$2/ds/morph/curve/vis \$2/ds/morph/curve/vis
+show_curve 17 7 0 10 -204786 -1 -1;
+#X obj -35 85 nbx 4 14 -1e+37 1e+37 0 0 \$2/ds/morph/timegrain \$2/ds/morph/timegrain
+time-grain/ms 47 7 0 10 -4034 -1 -1 20 256;
+#X obj -121 35 nbx 4 14 -1e+37 1e+37 0 0 \$2/ds/delay \$2/ds/delay
+delay/s 47 7 0 10 -204800 -1 -1 0 256;
+#X obj -121 185 tgl 15 0 \$2/ds/occupy \$2/ds/occupy occupy 17 7 0
+10 -262130 -1 -1 0 1;
+#X obj 99 245 tgl 15 0 \$2/ds/set \$2/ds/set set 17 7 0 10 -228856
+-1 -1 0 1;
+#X obj 139 245 tgl 15 0 \$2/ds/change \$2/ds/change change 17 7 0 10
+-228856 -1 -1 1 1;
+#X obj 99 265 tgl 15 0 \$2/ds/nomorph \$2/ds/nomorph morph_deactivate
+17 7 0 10 -228856 -1 -1 0 1;
+#X obj 140 27 cnv 15 130 60 empty empty empty 20 12 0 14 -191407 -66577
+0;
+#X obj 147 43 bng 15 250 50 0 \$2/ds/settings/copy \$2/ds/settings/copy
+COPY_to_buffer 17 7 0 10 -4160 -1 -1;
+#X obj 147 63 bng 15 250 50 0 \$2/ds/settings/paste \$2/ds/settings/paste
+PASTE_from_buffer 17 7 0 10 -260097 -1 -1;
+#X text -103 214 Save scene after changes! Otherwise settings get lost!
+;
+#X restore 657 421 pd \$0-gui;
+#X obj 355 309 s \$2/ds/dialog;
+#X obj 657 318 r \$2/ds/dialog;
+#X obj 657 340 t b;
+#X msg 657 362 vis 1;
+#X obj 657 384 s pd-\$0-gui;
+#X obj 657 217 r /\$1/ds/reg-names/request;
+#X obj 657 239 list prepend \$2;
+#X obj 657 261 s /\$1/ds/reg-names;
+#N canvas 362 176 730 489 init 0;
+#X obj 340 34 loadbang;
+#X obj 28 203 list split 1;
+#X obj 62 225 t l;
+#X obj 28 250 list trim;
+#X obj 65 306 t b;
+#X obj 103 306 t b;
+#X msg 65 328 1;
+#X msg 103 328 1;
+#X obj 28 306 t b;
+#X msg 28 328 1;
+#X obj 103 355 s \$2/ds/set;
+#X obj 65 381 s \$2/ds/slave;
+#X obj 28 179 list prepend \$15 \$14 \$13 \$12 \$11 \$10 \$9 \$8 \$7
+\$6 \$5 \$4 \$3;
+#X obj 417 34 r /\$1/loadbang;
+#X obj 28 275 route nomorph slave set bang;
+#X obj 28 407 s \$2/ds/nomorph;
+#X obj 340 89 t b b b;
+#X obj 460 111 \$0;
+#X msg 460 133 \; \$1-busy 0 \;;
+#X obj 451 179 list prepend \$2 \$0;
+#X msg 451 211 \; \$2-\$1/ds/morph/curve/loadbang bang \; \$1/ds/morph/curve/quality
+0 \; \$1/ds/morph/curve/weight 0 \; \$1/ds/morph/curve/shape 0 \; \$1/ds/morph/time
+0 \; \$1/ds/morph 0 \; \$1/ds/nomorph 0 \; \$1/ds/delay 0 \; \$1/ds/slave
+0 \; \$1/ds/set 0 \; \$1/ds/morph/timegrain 20 \; \$1/ds/change 1 \;
+\$1/ds/occupy 1 \;;
+#X connect 0 0 16 0;
+#X connect 1 0 3 0;
+#X connect 1 1 2 0;
+#X connect 2 0 1 0;
+#X connect 3 0 14 0;
+#X connect 4 0 6 0;
+#X connect 5 0 7 0;
+#X connect 6 0 11 0;
+#X connect 7 0 10 0;
+#X connect 8 0 9 0;
+#X connect 9 0 15 0;
+#X connect 12 0 1 0;
+#X connect 13 0 16 0;
+#X connect 14 0 8 0;
+#X connect 14 1 4 0;
+#X connect 14 2 5 0;
+#X connect 16 0 12 0;
+#X connect 16 1 19 0;
+#X connect 16 2 17 0;
+#X connect 17 0 18 0;
+#X connect 19 0 20 0;
+#X restore 59 252 pd init;
+#N canvas 247 22 878 647 register 0;
+#X obj 531 115 ds_reg_settings \$1 \$2/ds/morph;
+#X obj 110 33 r \$2/ds/nomorph;
+#X obj 110 56 == 0;
+#X obj 23 33 r \$0-busy;
+#X obj 23 85 t f b f;
+#X obj 23 56 == 0;
+#X obj 110 148 list append \$2;
+#X obj 23 428 list append \$2;
+#X obj 110 118 && 1;
+#X obj 531 135 ds_reg_settings \$1 \$2/ds/morph/time;
+#X obj 531 155 ds_reg_settings \$1 \$2/ds/morph/curve/shape;
+#X obj 531 175 ds_reg_settings \$1 \$2/ds/morph/curve/weight;
+#X obj 531 195 ds_reg_settings \$1 \$2/ds/morph/curve/resolution;
+#X obj 531 305 ds_reg_settings \$1 \$2/ds/slave;
+#X obj 531 215 ds_reg_settings \$1 \$2/ds/morph/curve/quality;
+#X obj 531 235 ds_reg_settings \$1 \$2/ds/morph/timegrain;
+#X obj 531 285 ds_reg_settings \$1 \$2/ds/delay;
+#X obj 531 265 ds_reg_settings \$1 \$2/ds/occupy;
+#X msg 44 455 \; \$2/ds/occupy/save/state \$1 \; \$2/ds/delay/save/state
+\$1 \; \$2/ds/slave/save/state \$1 \;;
+#X msg 23 520 \; \$2/ds/occupy/dispatch/state \$1 \; \$2/ds/delay/dispatch/state
+\$1 \; \$2/ds/slave/dispatch/state \$1 \;;
+#X msg 150 180 \; \$2/ds/morph/save/state \$1 \; \$2/ds/morph/time/save/state
+\$1 \; \$2/ds/morph/timegrain/save/state \$1 \; \$2/ds/morph/curve/shape/save/state
+\$1 \; \$2/ds/morph/curve/weight/save/state \$1 \; \$2/ds/morph/curve/resolution/save/state
+\$1 \; \$2/ds/morph/curve/quality/save/state \$1 \;;
+#X msg 110 299 \; \$2/ds/morph/dispatch/state \$1 \; \$2/ds/morph/time/dispatch/state
+\$1 \; \$2/ds/morph/timegrain/dispatch/state \$1 \; \$2/ds/morph/curve/shape/dispatch/state
+\$1 \; \$2/ds/morph/curve/weight/dispatch/state \$1 \; \$2/ds/morph/curve/resolution/dispatch/state
+\$1 \; \$2/ds/morph/curve/quality/dispatch/state \$1 \;;
+#X connect 1 0 2 0;
+#X connect 2 0 8 0;
+#X connect 3 0 5 0;
+#X connect 4 0 7 0;
+#X connect 4 1 8 0;
+#X connect 4 2 8 1;
+#X connect 5 0 4 0;
+#X connect 6 0 20 0;
+#X connect 6 0 21 0;
+#X connect 7 0 19 0;
+#X connect 7 0 18 0;
+#X connect 8 0 6 0;
+#X restore 59 351 pd register;
+#X obj 355 216 inlet settings;
+#X text 37 62 registers variable to state saving system;
+#X text 40 21 ds_reg <domain> <name> <arg1> <arg2> ...;
+#X text 39 100 arguments: nomorph \, slave \, set;
+#X obj 355 246 route dialog bang;
+#X obj 425 402 r \$0-dispatched;
+#N canvas 163 300 1172 518 copy_paste_settings 0;
+#X obj 40 111 t b;
+#X obj 438 111 t b;
+#X obj 40 89 r \$2/ds/settings/paste;
+#X obj 438 89 r \$2/ds/settings/copy;
+#X obj 40 138 list append \$1 \$2;
+#X obj 438 138 list append \$1 \$2;
+#X msg 438 170 \; \$2/ds/morph/route /\$1/ds/reg/settings/buffer/morph
+\; \$2/ds/morph/time/route /\$1/ds/reg/settings/buffer/morph/time \;
+\$2/ds/morph/timegrain/route /\$1/ds/reg/settings/buffer/morph/timegrain
+\; \$2/ds/morph/curve/shape/route /\$1/ds/reg/settings/buffer/morph/curve/shape
+\; \$2/ds/morph/curve/weight/route /\$1/ds/reg/settings/buffer/morph/curve/weight
+\; \$2/ds/morph/curve/resolution/route /\$1/ds/reg/settings/buffer/morph/curve/resolution
+\; \$2/ds/morph/curve/quality/route /\$1/ds/reg/settings/buffer/morph/curve/quality
+\; \$2/ds/occupy/route /\$1/ds/reg/settings/buffer/occupy \; \$2/ds/slave/route
+/\$1/ds/reg/settings/buffer/slave \; \$2/ds/delay/route /\$1/ds/reg/settings/buffer/delay
+\;;
+#X msg 40 170 \; /\$1/ds/reg/settings/buffer/morph/route \$2/ds/morph
+\; /\$1/ds/reg/settings/buffer/morph/time/route \$2/ds/morph/time \;
+/\$1/ds/reg/settings/buffer/morph/timegrain/route \$2/ds/morph/timegrain
+\; /\$1/ds/reg/settings/buffer/morph/curve/shape/route \$2/ds/morph/curve/shape
+\; /\$1/ds/reg/settings/buffer/morph/curve/weight/route \$2/ds/morph/curve/weight
+\; /\$1/ds/reg/settings/buffer/morph/curve/resolution/route \$2/ds/morph/curve/resolution
+\; /\$1/ds/reg/settings/buffer/morph/curve/quality/route \$2/ds/morph/curve/quality
+\; /\$1/ds/reg/settings/buffer/occupy/route \$2/ds/occupy \; /\$1/ds/reg/settings/buffer/slave/route
+\$2/ds/slave \; /\$1/ds/reg/settings/buffer/delay/route \$2/ds/delay
+\;;
+#X obj 780 90 r /\$1/ds/reg/settings/buffer/paste/all;
+#X obj 780 112 t b;
+#X obj 780 138 list append \$1 \$2;
+#X msg 780 170 \; /\$1/ds/reg/settings/buffer/morph/route \$2/ds/morph
+\; /\$1/ds/reg/settings/buffer/morph/time/route \$2/ds/morph/time \;
+/\$1/ds/reg/settings/buffer/morph/timegrain/route \$2/ds/morph/timegrain
+\; /\$1/ds/reg/settings/buffer/morph/curve/shape/route \$2/ds/morph/curve/shape
+\; /\$1/ds/reg/settings/buffer/morph/curve/weight/route \$2/ds/morph/curve/weight
+\; /\$1/ds/reg/settings/buffer/morph/curve/resolution/route \$2/ds/morph/curve/resolution
+\; /\$1/ds/reg/settings/buffer/morph/curve/quality/route \$2/ds/morph/curve/quality
+\; /\$1/ds/reg/settings/buffer/occupy/route \$2/ds/occupy \; /\$1/ds/reg/settings/buffer/slave/route
+\$2/ds/slave \; /\$1/ds/reg/settings/buffer/delay/route \$2/ds/delay
+\;;
+#X connect 0 0 4 0;
+#X connect 1 0 5 0;
+#X connect 2 0 0 0;
+#X connect 3 0 1 0;
+#X connect 4 0 7 0;
+#X connect 5 0 6 0;
+#X connect 8 0 9 0;
+#X connect 9 0 10 0;
+#X connect 10 0 11 0;
+#X restore 58 471 pd copy_paste_settings;
+#X obj 404 279 s \$2/ds/slave/start;
+#X obj 425 434 s \$2/ds/dispatched;
+#X connect 2 0 3 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 9 0 10 0;
+#X connect 11 0 12 0;
+#X connect 12 0 13 0;
+#X connect 16 0 20 0;
+#X connect 20 0 6 0;
+#X connect 20 1 23 0;
+#X connect 21 0 24 0;

+ 5 - 0
ds_reg_global-help.pd

@@ -0,0 +1,5 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 82 120 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 27 22 ds_reg_global <domain> <subname>;

+ 14 - 0
ds_reg_global.pd

@@ -0,0 +1,14 @@
+#N canvas 632 315 362 304 10;
+#X obj 78 211 s \$1/ds/fetched;
+#X obj 78 115 t b;
+#X obj 93 139 r \$1\$2;
+#X obj 78 185 list prepend \$1\$2;
+#X obj 78 163 f 0;
+#X text 191 262 (c)2012 Marian Weger;
+#X obj 78 93 r \$1/ds/fetch/global/data;
+#X text 27 22 ds_reg_global <domain> <subname>;
+#X connect 1 0 4 0;
+#X connect 2 0 4 1;
+#X connect 3 0 0 0;
+#X connect 4 0 3 0;
+#X connect 6 0 1 0;

+ 6 - 0
ds_reg_global_settings-help.pd

@@ -0,0 +1,6 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 82 120 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 27 52 used by [ds_logic] for registering its settings;
+#X text 27 22 ds_reg_global_settings <domain> <subname>;

+ 15 - 0
ds_reg_global_settings.pd

@@ -0,0 +1,15 @@
+#N canvas 777 143 362 304 10;
+#X obj 78 115 t b;
+#X obj 78 163 f 0;
+#X text 191 262 (c)2012 Marian Weger;
+#X obj 78 93 r /\$1/ds/fetch/global/settings;
+#X obj 78 211 s /\$1/ds/fetched;
+#X obj 93 139 r /\$1\$2;
+#X obj 78 185 list prepend /\$1\$2;
+#X text 27 52 used by [ds_logic] for registering its settings;
+#X text 27 22 ds_reg_global_settings <domain> <subname>;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 3 0 0 0;
+#X connect 5 0 1 1;
+#X connect 6 0 4 0;

+ 6 - 0
ds_reg_settings-help.pd

@@ -0,0 +1,6 @@
+#N canvas 689 448 367 229 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 82 120 cnv 15 200 30 empty empty see_[ds-help]_for_help 20 12
+0 14 -261234 -1 0;
+#X text 27 22 ds_reg_settings <domain> <subname>;
+#X text 27 52 used by [ds_reg] for registering its settings;

+ 50 - 0
ds_reg_settings.pd

@@ -0,0 +1,50 @@
+#N canvas 519 22 524 394 10;
+#X text 27 22 ds_reg_settings <domain> <subname>;
+#X text 27 52 used by [ds_reg] for registering its settings;
+#X obj 78 253 f 0;
+#X text 327 323 (c)2012 Marian Weger;
+#X obj 93 229 r \$2;
+#X obj 78 335 list prepend \$2;
+#X obj 78 93 r /\$1/ds/fetch/settings;
+#X obj 78 361 s /\$1/ds/fetched;
+#X obj 339 93 r \$2/dispatch;
+#X obj 339 275 s \$2;
+#X obj 339 245 change;
+#X obj 442 163 r \$2;
+#X msg 442 185 set \$1;
+#X obj 78 169 spigot 1;
+#X obj 339 155 spigot 1;
+#X obj 78 195 t b b;
+#X msg 134 229 0;
+#X obj 78 275 kdemux2;
+#X obj 221 341 s;
+#X msg 242 233 1;
+#X obj 223 185 r \$2/route;
+#X obj 223 207 t b b a;
+#X text 232 168 route value;
+#X obj 236 302 symbol;
+#X obj 123 133 r \$2/save/state;
+#X obj 384 130 r \$2/dispatch/state;
+#X connect 2 0 17 0;
+#X connect 4 0 2 1;
+#X connect 5 0 7 0;
+#X connect 6 0 13 0;
+#X connect 8 0 14 0;
+#X connect 10 0 9 0;
+#X connect 11 0 12 0;
+#X connect 12 0 10 0;
+#X connect 13 0 15 0;
+#X connect 14 0 10 0;
+#X connect 15 0 2 0;
+#X connect 15 1 16 0;
+#X connect 16 0 17 1;
+#X connect 17 0 5 0;
+#X connect 17 1 18 0;
+#X connect 19 0 17 1;
+#X connect 20 0 21 0;
+#X connect 21 0 2 0;
+#X connect 21 1 19 0;
+#X connect 21 2 23 0;
+#X connect 23 0 18 1;
+#X connect 24 0 13 1;
+#X connect 25 0 14 1;

+ 20 - 0
ds_route.pd

@@ -0,0 +1,20 @@
+#N canvas 534 144 241 341 10;
+#X text 20 21 ds_route <name>;
+#X obj 95 245 s;
+#X text 92 78 route value;
+#X obj 110 216 symbol;
+#X obj 83 117 t b a;
+#X obj 38 170 list;
+#X obj 38 216 route bang;
+#X text 62 290 (c)2012 Marian Weger;
+#X obj 38 95 r \$1;
+#X obj 83 95 r \$1/route;
+#X obj 38 192 list trim;
+#X connect 3 0 1 1;
+#X connect 4 0 5 0;
+#X connect 4 1 3 0;
+#X connect 5 0 10 0;
+#X connect 6 1 1 0;
+#X connect 8 0 5 1;
+#X connect 9 0 4 0;
+#X connect 10 0 6 0;

+ 91 - 0
fadecurve-help.pd

@@ -0,0 +1,91 @@
+#N canvas 562 22 978 656 10;
+#X obj 269 84 vsl 15 128 -3 3 0 0 empty empty empty 0 -9 0 10 -262130
+-1 -1 3200 1;
+#X obj 381 84 vsl 15 128 0 1 0 0 empty empty empty 0 -9 0 10 -262130
+-1 -1 12700 1;
+#X msg 269 242 shape \$1;
+#X msg 381 242 weight \$1;
+#X floatatom 381 291 7 0 0 1 10...10000 - -;
+#X msg 381 312 resolution \$1;
+#X text 319 29 creation arguments:;
+#X text 449 29 1st: name;
+#X floatatom 269 220 5 0 0 1 --inf...inf - -;
+#X floatatom 381 220 5 0 0 1 0...1 - -;
+#X text 528 188 SHAPE:;
+#X text 571 248 abs(shape) >= 2: f(x) = x^abs(shape);
+#X text 570 468 2 --> x^2;
+#X text 570 488 5 --> x^5;
+#X floatatom 64 548 5 0 99 1 0...(N-1) - -;
+#X floatatom 64 611 5 0 0 0 - - -;
+#X obj 64 589 tabread4 \$0-curve;
+#X text 570 408 EXAMPLES:;
+#X msg 164 242 quality \$1;
+#X floatatom 194 548 5 0 99 1 0...(N-1) - -;
+#X floatatom 194 611 5 0 0 0 - - -;
+#X obj 194 589 tabread \$0-curve;
+#X text 19 29 fadecurve <name> <resolution> <quality>;
+#X text 449 66 3rd (optional): init quality:;
+#X obj 64 567 + 1;
+#X obj 194 567 + 1;
+#X text 45 496 The table can also be addressed directly via [tabread].
+;
+#X text 570 428 -1 --> standard cosine fade;
+#X text 571 298 shape < 0: output = 1-f(1-x);
+#X text 571 283 shape > 0: output = f(x);
+#X text 571 357 0 < abs(shape) < 1 && 1 <abs(shape) < 2;
+#X text 571 370 --> linear interpolation;
+#X text 571 188 MATHEMATICAL EXPLANATION:;
+#X text 641 94 2: linear interpolation;
+#X text 641 108 3: tabread4 4-point polynomianl interpolation;
+#X text 641 80 1: no interpolation;
+#X text 570 448 -1.67 --> mix between "cosine" and "1-(1-x)^2";
+#X obj 164 220 hradio 15 1 0 4 empty empty 0..1..2..3 0 -8 0 10 -262144
+-1 -1 0;
+#X obj 164 364 t b a;
+#X text 45 516 (size=N+3 \, N=resolution);
+#X text 449 47 2nd (optional): init resolution N (default=100);
+#X text 641 66 0: bypass --> output=input (default);
+#X text 571 208 abs(shape) = 0: f(x) = sin^2(x*pi/2);
+#X text 392 539 alternatively set parameters via send/receive:;
+#X text 571 328 input: 0 <= x <= 1;
+#X text 571 228 abs(shape) = 1: f(x) = 1-cos(x*pi/2);
+#X obj 42 416 cnv 15 170 30 empty empty empty 20 12 0 14 -204786 -66577
+0;
+#X floatatom 50 455 9 0 1 1 0...1 - -;
+#X floatatom 50 330 7 0 1 1 0...1 - -;
+#X obj 50 389 f;
+#X obj 50 422 fadecurve \$0-curve 100 3;
+#X obj 119 115 bng 15 250 50 0 empty empty empty 17 7 0 10 -257985
+-1 -1;
+#X text 107 98 click to see table;
+#X msg 119 143 vis;
+#X text 302 400 (c)2012 Marian Weger;
+#X obj 414 561 s \$0-curve/quality;
+#X obj 414 581 s \$0-curve/shape;
+#X obj 534 561 s \$0-curve/weight;
+#X obj 534 581 s \$0-curve/resolution;
+#X obj 414 601 s \$0-curve/vis;
+#X obj 534 601 s \$0-curve/loadbang;
+#X connect 0 0 8 0;
+#X connect 1 0 9 0;
+#X connect 2 0 38 0;
+#X connect 3 0 38 0;
+#X connect 4 0 5 0;
+#X connect 5 0 38 0;
+#X connect 8 0 2 0;
+#X connect 9 0 3 0;
+#X connect 14 0 24 0;
+#X connect 16 0 15 0;
+#X connect 18 0 38 0;
+#X connect 19 0 25 0;
+#X connect 21 0 20 0;
+#X connect 24 0 16 0;
+#X connect 25 0 21 0;
+#X connect 37 0 18 0;
+#X connect 38 0 49 0;
+#X connect 38 1 50 1;
+#X connect 48 0 49 0;
+#X connect 49 0 50 0;
+#X connect 50 0 47 0;
+#X connect 51 0 53 0;
+#X connect 53 0 38 0;

+ 373 - 0
fadecurve.pd

@@ -0,0 +1,373 @@
+#N canvas 87 101 860 610 10;
+#X text 492 542 (c)2012 Marian Weger;
+#X obj 16 396 tabread4 \$1;
+#X obj 94 541 outlet;
+#N canvas 774 81 317 328 init 0;
+#X obj 54 -61 loadbang;
+#X obj 157 51 float \$2;
+#X obj 157 73 sel 0;
+#X msg 157 95 100;
+#X obj 54 51 list prepend \$1;
+#X obj 54 103 list append;
+#X obj 54 -9 t b b;
+#X obj 54 143 list append \$3;
+#X msg 54 168 \; \$1 bounds 1 1 \$2 0 \; \$1/resolution \$2 \; \$1/quality
+\$3 \;;
+#X obj 119 -61 r \$1/loadbang;
+#X connect 0 0 6 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 2 1 5 1;
+#X connect 3 0 5 1;
+#X connect 4 0 5 0;
+#X connect 5 0 7 0;
+#X connect 6 0 4 0;
+#X connect 6 1 1 0;
+#X connect 7 0 8 0;
+#X connect 9 0 6 0;
+#X coords 0 328 1 327 85 60 0;
+#X restore 490 331 pd init;
+#X obj 382 241 s \$1/shape;
+#X obj 430 219 s \$1/weight;
+#X obj 479 197 s \$1/resolution;
+#X obj 246 421 + 1;
+#X obj 152 443 tabread \$1;
+#X obj 246 443 tabread \$1;
+#X text 19 30 fadecurve <name> <resolution> <quality>;
+#X obj 527 177 s \$1/quality;
+#X obj 139 175 r \$1/quality;
+#N canvas 466 47 586 541 demux 0;
+#X obj 64 99 inlet;
+#X obj 451 99 inlet;
+#X obj 64 227 spigot 1;
+#X obj 166 429 outlet;
+#X obj 64 429 outlet;
+#X obj 166 227 spigot 0;
+#X obj 211 181 == 1;
+#X obj 331 181 == 2;
+#X obj 286 429 outlet;
+#X obj 286 227 spigot 0;
+#X obj 406 429 outlet;
+#X obj 406 227 spigot 0;
+#X obj 406 400 + 1;
+#X obj 307 325 - 1;
+#X obj 406 378 * 99;
+#X obj 286 400 + 1;
+#X obj 286 378 * 99;
+#X obj 166 400 + 1;
+#X obj 166 378 * 99;
+#X obj 307 273 r \$1/resolution;
+#X obj 307 295 clip 10 10000;
+#X obj 109 181 <= 0;
+#X obj 451 181 >= 3;
+#X connect 0 0 2 0;
+#X connect 0 0 5 0;
+#X connect 0 0 9 0;
+#X connect 0 0 11 0;
+#X connect 1 0 6 0;
+#X connect 1 0 7 0;
+#X connect 1 0 21 0;
+#X connect 1 0 22 0;
+#X connect 2 0 4 0;
+#X connect 5 0 18 0;
+#X connect 6 0 5 1;
+#X connect 7 0 9 1;
+#X connect 9 0 16 0;
+#X connect 11 0 14 0;
+#X connect 12 0 10 0;
+#X connect 13 0 14 1;
+#X connect 13 0 16 1;
+#X connect 13 0 18 1;
+#X connect 14 0 12 0;
+#X connect 15 0 8 0;
+#X connect 16 0 15 0;
+#X connect 17 0 3 0;
+#X connect 18 0 17 0;
+#X connect 19 0 20 0;
+#X connect 20 0 13 0;
+#X connect 21 0 2 1;
+#X connect 22 0 11 1;
+#X restore 94 297 pd demux;
+#X obj 109 396 tabread \$1;
+#X obj 109 344 + 0.5;
+#X obj 109 366 int;
+#X obj 341 443 wrap;
+#X obj 227 396 t f f f;
+#X obj 139 229 int;
+#X obj 225 175 r \$1/weight;
+#X obj 225 207 > 0;
+#X obj 139 271 *;
+#X obj 225 229 t b f;
+#X obj 94 133 clip 0 1;
+#N canvas 221 88 964 756 curve-calculation 0;
+#X obj 87 350 until;
+#X obj 87 379 f;
+#X obj 127 379 + 1;
+#X obj 87 322 t f b;
+#X msg 127 350 0;
+#X obj 328 104 t b f;
+#X obj 51 1233 tabwrite \$1;
+#X obj 237 466 - 1;
+#X obj 166 550 / 99;
+#X obj 87 152 f 0;
+#X obj 328 79 f 0;
+#X obj 166 466 moses 100;
+#X obj 87 401 t f f;
+#X msg 51 608 0;
+#X obj 127 446 moses 2;
+#X obj 114 229 + 3;
+#X obj 87 297 f 103;
+#X msg 81 608 1;
+#X obj 166 488 - 1;
+#X obj 193 784 s \$0-linear;
+#X obj 260 1117 r \$0-linear;
+#X obj 166 1143 expr ($f1*$f3) + ($f2*(1.0-$f3));
+#X obj 166 608 t b f;
+#X obj 166 909 f 0;
+#X obj 87 178 t b f;
+#X obj 166 992 list append;
+#X obj 166 941 pack 0 0 0 0 0;
+#X obj 487 646 f 0;
+#X obj 543 433 moses 0;
+#X obj 797 469 moses 1;
+#X obj 543 469 moses -1;
+#X obj 502 520 * -1;
+#X obj 621 596 + 1;
+#X obj 878 520 - 1;
+#X obj 612 701 pack 0 0 0 0 0;
+#X obj 836 572 + 2;
+#X obj 797 520 * -1;
+#X obj 797 596 + 1;
+#X obj 543 520 + 2;
+#X msg 758 596 0;
+#X msg 723 596 0;
+#X msg 689 596 0;
+#X msg 652 596 0;
+#X obj 502 572 - 1;
+#X obj 588 596 * -1;
+#X obj 836 520 * -1;
+#X obj 166 1016 unpack 0 0 0 0 0 0 0 0 0 0;
+#X obj 166 1058 *;
+#X obj 201 1058 *;
+#X obj 236 1058 *;
+#X obj 271 1058 *;
+#X obj 307 1058 *;
+#X obj 166 1084 expr $f1+$f2+$f3+$f4+$f5;
+#X obj 442 572 max 2;
+#X obj 487 362 t b f;
+#X obj 234 608 unpack 0 0 0 0 0;
+#X obj 201 738 spigot;
+#X obj 224 718 spigot;
+#X obj 247 698 spigot;
+#X obj 270 678 spigot;
+#X obj 294 658 spigot;
+#X obj 612 723 s \$0-weight-list;
+#X obj 229 969 r \$0-weight-list;
+#X obj 234 581 r \$0-weight-list;
+#X obj 878 596 min 1;
+#X obj 836 596 max 0;
+#X obj 502 596 min 1;
+#X obj 543 596 max 0;
+#X obj 17 34 r \$1/shape;
+#X obj 337 904 expr pow($f1 \, $f2);
+#X obj 337 814 expr sin($f1*1.570796326794897);
+#X obj 87 34 r \$1/resolution;
+#X obj 87 56 t b f;
+#X obj 198 152 clip 10 10000;
+#X obj 328 34 r \$1/weight;
+#X obj 328 56 clip 0 1;
+#X msg 141 274 resize \$1;
+#X obj 141 297 s \$1;
+#X obj 114 251 t f f;
+#X obj 198 178 t f f f;
+#X obj 337 784 expr 1.0-pow(1.0-$f1 \, $f2);
+#X obj 337 874 expr 1.0-cos($f1*1.570796326794897);
+#X obj 337 844 expr pow(sin($f1*1.570796326794897) \, 2);
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 1 0 12 0;
+#X connect 2 0 1 1;
+#X connect 3 0 0 0;
+#X connect 3 1 4 0;
+#X connect 4 0 1 1;
+#X connect 5 0 9 0;
+#X connect 5 1 21 2;
+#X connect 7 0 8 1;
+#X connect 8 0 22 0;
+#X connect 9 0 24 0;
+#X connect 10 0 5 0;
+#X connect 11 0 18 0;
+#X connect 11 1 17 0;
+#X connect 12 0 14 0;
+#X connect 12 1 6 1;
+#X connect 13 0 6 0;
+#X connect 14 0 13 0;
+#X connect 14 1 11 0;
+#X connect 15 0 78 0;
+#X connect 16 0 3 0;
+#X connect 17 0 6 0;
+#X connect 18 0 8 0;
+#X connect 20 0 21 1;
+#X connect 21 0 6 0;
+#X connect 22 0 23 0;
+#X connect 22 1 19 0;
+#X connect 22 1 60 0;
+#X connect 22 1 59 0;
+#X connect 22 1 58 0;
+#X connect 22 1 57 0;
+#X connect 22 1 56 0;
+#X connect 23 0 26 0;
+#X connect 24 0 16 0;
+#X connect 24 1 54 0;
+#X connect 25 0 46 0;
+#X connect 26 0 25 0;
+#X connect 27 0 34 0;
+#X connect 28 0 30 0;
+#X connect 28 1 29 0;
+#X connect 29 0 34 3;
+#X connect 29 0 36 0;
+#X connect 29 0 40 0;
+#X connect 29 1 33 0;
+#X connect 29 1 39 0;
+#X connect 29 1 45 0;
+#X connect 29 1 53 0;
+#X connect 30 0 31 0;
+#X connect 30 0 38 0;
+#X connect 30 0 42 0;
+#X connect 30 1 41 0;
+#X connect 30 1 44 0;
+#X connect 30 1 32 0;
+#X connect 31 0 43 0;
+#X connect 31 0 53 0;
+#X connect 32 0 34 2;
+#X connect 33 0 64 0;
+#X connect 34 0 61 0;
+#X connect 35 0 65 0;
+#X connect 36 0 37 0;
+#X connect 37 0 34 2;
+#X connect 38 0 67 0;
+#X connect 39 0 34 2;
+#X connect 39 0 34 1;
+#X connect 39 0 27 1;
+#X connect 40 0 34 1;
+#X connect 40 0 27 1;
+#X connect 40 0 34 4;
+#X connect 41 0 34 3;
+#X connect 41 0 27 1;
+#X connect 41 0 34 4;
+#X connect 42 0 34 2;
+#X connect 42 0 34 3;
+#X connect 42 0 34 4;
+#X connect 43 0 66 0;
+#X connect 44 0 34 1;
+#X connect 45 0 35 0;
+#X connect 46 0 47 0;
+#X connect 46 1 48 0;
+#X connect 46 2 49 0;
+#X connect 46 3 50 0;
+#X connect 46 4 51 0;
+#X connect 46 5 47 1;
+#X connect 46 6 48 1;
+#X connect 46 7 49 1;
+#X connect 46 8 50 1;
+#X connect 46 9 51 1;
+#X connect 47 0 52 0;
+#X connect 48 0 52 1;
+#X connect 49 0 52 2;
+#X connect 50 0 52 3;
+#X connect 51 0 52 4;
+#X connect 52 0 21 0;
+#X connect 53 0 69 1;
+#X connect 53 0 80 1;
+#X connect 54 0 27 0;
+#X connect 54 1 28 0;
+#X connect 55 0 56 1;
+#X connect 55 1 57 1;
+#X connect 55 2 58 1;
+#X connect 55 3 59 1;
+#X connect 55 4 60 1;
+#X connect 56 0 80 0;
+#X connect 57 0 70 0;
+#X connect 58 0 82 0;
+#X connect 59 0 81 0;
+#X connect 60 0 69 0;
+#X connect 62 0 25 1;
+#X connect 63 0 55 0;
+#X connect 64 0 34 4;
+#X connect 65 0 34 3;
+#X connect 66 0 27 1;
+#X connect 67 0 34 1;
+#X connect 68 0 9 0;
+#X connect 69 0 26 4;
+#X connect 70 0 26 1;
+#X connect 71 0 72 0;
+#X connect 72 0 9 0;
+#X connect 72 1 73 0;
+#X connect 73 0 79 0;
+#X connect 74 0 75 0;
+#X connect 75 0 10 0;
+#X connect 76 0 77 0;
+#X connect 78 0 16 1;
+#X connect 78 1 76 0;
+#X connect 79 0 15 0;
+#X connect 79 1 11 1;
+#X connect 79 2 7 0;
+#X connect 80 0 23 1;
+#X connect 81 0 26 3;
+#X connect 82 0 26 2;
+#X coords 0 756 1 755 85 60 0;
+#X restore 490 351 pd curve-calculation;
+#N canvas 0 22 290 330 resize 0;
+#X obj 80 100 r \$0-resolution;
+#X obj 80 124 + 3;
+#X obj 80 148 list prepend \$1;
+#X msg 80 176 \; \$1 resize \$2 \;;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X restore 490 371 pd resize;
+#X obj 152 470 expr ($f1*(1.0-$f3)) + ($f2*$f3);
+#X obj 382 101 inlet control;
+#X obj 94 101 inlet;
+#X obj 382 133 route shape weight resolution quality vis;
+#X obj 593 401 r \$1/vis;
+#X obj 593 423 t b;
+#X msg 593 445 vis 1;
+#X obj 576 157 s \$1/vis;
+#X obj 593 467 s pd-\$1;
+#X obj 490 401 table \$1 100;
+#X connect 1 0 2 0;
+#X connect 7 0 9 0;
+#X connect 8 0 27 0;
+#X connect 9 0 27 1;
+#X connect 12 0 19 0;
+#X connect 13 0 2 0;
+#X connect 13 1 15 0;
+#X connect 13 2 18 0;
+#X connect 13 3 1 0;
+#X connect 14 0 2 0;
+#X connect 15 0 16 0;
+#X connect 16 0 14 0;
+#X connect 17 0 27 2;
+#X connect 18 0 8 0;
+#X connect 18 1 7 0;
+#X connect 18 2 17 0;
+#X connect 19 0 22 0;
+#X connect 20 0 21 0;
+#X connect 21 0 23 0;
+#X connect 22 0 13 1;
+#X connect 23 0 22 0;
+#X connect 23 1 22 1;
+#X connect 24 0 13 0;
+#X connect 27 0 2 0;
+#X connect 28 0 30 0;
+#X connect 29 0 24 0;
+#X connect 30 0 4 0;
+#X connect 30 1 5 0;
+#X connect 30 2 6 0;
+#X connect 30 3 11 0;
+#X connect 30 4 34 0;
+#X connect 31 0 32 0;
+#X connect 32 0 33 0;
+#X connect 33 0 35 0;
+#X coords 0 610 1 609 85 60 0;

+ 16 - 0
kdemux2-help.pd

@@ -0,0 +1,16 @@
+#N canvas 488 200 443 341 10;
+#X text 247 207 (c)2012 Marian Weger;
+#X obj 124 106 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
+1;
+#X floatatom 56 84 5 0 0 0 - - -;
+#X floatatom 83 205 5 0 0 0 - - -;
+#X obj 83 153 kdemux2;
+#X floatatom 126 201 5 0 0 0 - - -;
+#X text 154 103 0: left inlet to left outlet;
+#X text 154 123 non zero: left inlet to right outlet;
+#X text 27 28 kdemux2 <init value>;
+#X text 94 259 optional arg sets the initial state (0 by default);
+#X connect 1 0 4 1;
+#X connect 2 0 4 0;
+#X connect 4 0 3 0;
+#X connect 4 1 5 0;

+ 26 - 0
kdemux2.pd

@@ -0,0 +1,26 @@
+#N canvas 463 341 470 347 10;
+#X obj 74 109 inlet;
+#X obj 201 109 inlet;
+#X text 226 10 0: left inlet to left outlet;
+#X text 226 30 non zero: left inlet to right outlet;
+#X obj 74 257 spigot 1;
+#X obj 156 279 outlet;
+#X obj 74 279 outlet;
+#X obj 119 161 == 0;
+#X obj 201 161 != 0;
+#X obj 119 86 loadbang;
+#X obj 119 108 float \$1;
+#X obj 156 257 spigot 0;
+#X text 244 287 (c)2012 Marian Weger;
+#X text 43 11 kdemux2 <init value>;
+#X connect 0 0 4 0;
+#X connect 0 0 11 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 4 0 6 0;
+#X connect 7 0 4 1;
+#X connect 8 0 11 1;
+#X connect 9 0 10 0;
+#X connect 10 0 7 0;
+#X connect 10 0 8 0;
+#X connect 11 0 5 0;

+ 15 - 0
kmux2-help.pd

@@ -0,0 +1,15 @@
+#N canvas 488 200 403 328 10;
+#X text 164 111 non zero: 2nd inlet to outlet;
+#X text 164 91 0: 1st inlet to outlet;
+#X text 214 250 (c)2012 Marian Weger;
+#X text 49 39 kmux2;
+#X obj 163 138 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
+1;
+#X floatatom 56 114 5 0 0 0 - - -;
+#X obj 83 183 kmux2;
+#X floatatom 96 114 5 0 0 0 - - -;
+#X floatatom 83 235 5 0 0 0 - - -;
+#X connect 4 0 6 2;
+#X connect 5 0 6 0;
+#X connect 6 0 8 0;
+#X connect 7 0 6 1;

+ 21 - 0
kmux2.pd

@@ -0,0 +1,21 @@
+#N canvas 488 200 447 360 10;
+#X obj 94 129 inlet;
+#X obj 174 217 spigot;
+#X obj 269 129 inlet;
+#X obj 94 217 spigot 1;
+#X obj 94 279 outlet;
+#X obj 139 191 == 0;
+#X obj 207 191 != 0;
+#X text 141 75 non zero: 2nd inlet to outlet;
+#X text 141 55 0: 1st inlet to outlet;
+#X obj 174 129 inlet;
+#X text 257 285 (c)2012 Marian Weger;
+#X text 49 39 kmux2;
+#X connect 0 0 3 0;
+#X connect 1 0 4 0;
+#X connect 2 0 5 0;
+#X connect 2 0 6 0;
+#X connect 3 0 4 0;
+#X connect 5 0 3 1;
+#X connect 6 0 1 1;
+#X connect 9 0 1 0;

+ 13 - 0
list_accumulate-help.pd

@@ -0,0 +1,13 @@
+#N canvas 126 143 436 366 10;
+#X text 243 281 (c)2012 Marian Weger;
+#X text 44 38 list_accumulate;
+#X obj 153 185 list_accumulate;
+#X obj 153 102 bng 15 250 50 0 empty empty output_list 17 7 0 10 -262144
+-1 -1;
+#X obj 153 257 print;
+#X floatatom 241 147 5 0 0 0 - - -;
+#X msg 97 132 clear;
+#X connect 2 0 4 0;
+#X connect 3 0 2 0;
+#X connect 5 0 2 1;
+#X connect 6 0 2 0;

+ 25 - 0
list_accumulate.pd

@@ -0,0 +1,25 @@
+#N canvas 126 143 454 455 10;
+#X text 224 389 (c)2012 Marian Weger;
+#X text 44 38 list_accumulate;
+#X obj 106 77 inlet create;
+#X obj 177 199 list prepend;
+#X obj 177 241 t a a;
+#X obj 131 324 outlet list;
+#X obj 131 295 list;
+#X obj 221 77 inlet elements;
+#X obj 221 99 route bang;
+#X obj 106 123 t b;
+#X obj 152 123 t b;
+#X obj 106 99 route bang clear;
+#X connect 2 0 11 0;
+#X connect 3 0 4 0;
+#X connect 4 0 6 1;
+#X connect 4 1 3 1;
+#X connect 6 0 5 0;
+#X connect 7 0 8 0;
+#X connect 8 1 3 0;
+#X connect 9 0 6 0;
+#X connect 10 0 6 1;
+#X connect 10 0 3 1;
+#X connect 11 0 9 0;
+#X connect 11 1 10 0;

+ 14 - 0
list_read-help.pd

@@ -0,0 +1,14 @@
+#N canvas 522 129 436 366 10;
+#X text 209 269 (c)2012 Marian Weger;
+#X obj 63 237 print;
+#X floatatom 63 83 5 0 0 2 index - -;
+#X obj 63 165 list_read;
+#X obj 114 117 loadbang;
+#X msg 114 139 list a b c 1 2 3 x y z 9 8 7;
+#X text 74 195 if the indexed element is not existent \, a "bang" will
+be sent to the output.;
+#X text 17 16 list_read <index init (optional)>;
+#X connect 2 0 3 0;
+#X connect 3 0 1 0;
+#X connect 4 0 5 0;
+#X connect 5 0 3 1;

+ 31 - 0
list_read.pd

@@ -0,0 +1,31 @@
+#N canvas 555 105 454 553 10;
+#X obj 137 79 inlet list;
+#X obj 51 79 inlet index;
+#X text 241 432 (c)2012 Marian Weger;
+#X obj 97 352 list split 1;
+#X obj 97 446 outlet value;
+#X obj 103 293 route bang;
+#X obj 116 239 list split \$1;
+#X obj 191 352 t b;
+#X obj 116 210 list;
+#X obj 51 128 moses 0;
+#X obj 51 352 t b;
+#X obj 51 101 f \$1;
+#X obj 90 160 t b f;
+#X text 44 38 list_read <index init (optional)>;
+#X connect 0 0 8 1;
+#X connect 1 0 11 0;
+#X connect 3 0 4 0;
+#X connect 3 2 7 0;
+#X connect 5 0 7 0;
+#X connect 5 1 3 0;
+#X connect 6 1 5 0;
+#X connect 6 2 7 0;
+#X connect 7 0 4 0;
+#X connect 8 0 6 0;
+#X connect 9 0 10 0;
+#X connect 9 1 12 0;
+#X connect 10 0 4 0;
+#X connect 11 0 9 0;
+#X connect 12 0 8 0;
+#X connect 12 1 6 1;

+ 15 - 0
msg_monitor-help.pd

@@ -0,0 +1,15 @@
+#N canvas 461 109 311 368 10;
+#X text 31 51 "prints" any message to a message box;
+#X text 82 185 <-- connect message box here;
+#X text 81 147 <-- put data stream here;
+#X msg 39 105 bla blub 3 2 1;
+#X obj 39 167 msg_monitor;
+#X msg 39 209 ---;
+#X msg 139 105 7 6 ??? ### *blip* 3;
+#X text 26 16 msg_monitor <reset time>;
+#X text 38 259 creation argument (optional):;
+#X text 38 279 sets reset time in ms (default=5000);
+#X text 74 324 (c)2011 Marian Weger;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 6 0 4 0;

+ 32 - 0
msg_monitor.pd

@@ -0,0 +1,32 @@
+#N canvas 596 173 297 359 10;
+#X obj 35 130 list prepend set;
+#X obj 35 152 list trim;
+#X msg 74 197 clear;
+#X obj 35 175 t a b b;
+#X obj 35 275 outlet;
+#X obj 35 87 inlet;
+#X obj 54 219 pipe 5000;
+#X obj 153 118 loadbang;
+#X obj 153 167 sel 0;
+#X msg 153 189 5000;
+#X obj 153 140 \$1;
+#X msg 54 241 set ---;
+#X text 25 60 "prints" any message to a message box;
+#X text 77 275 <-- connect message box here;
+#X text 71 86 <-- put data stream here;
+#X text 28 27 msg_monitor <reset time>;
+#X text 43 311 (c)2011 Marian Weger;
+#X connect 0 0 1 0;
+#X connect 1 0 3 0;
+#X connect 2 0 6 0;
+#X connect 3 0 4 0;
+#X connect 3 1 6 0;
+#X connect 3 2 2 0;
+#X connect 5 0 0 0;
+#X connect 6 0 11 0;
+#X connect 7 0 10 0;
+#X connect 8 0 9 0;
+#X connect 8 1 6 1;
+#X connect 9 0 6 1;
+#X connect 10 0 8 0;
+#X connect 11 0 4 0;

+ 80 - 0
osc-help.pd

@@ -0,0 +1,80 @@
+#N canvas 341 22 804 756 10;
+#X obj 14 14 cnv 15 750 30 empty empty OSC_communication_system_for_KOLLABS
+20 12 0 14 -233017 -66577 0;
+#X obj 14 56 cnv 15 750 200 empty empty Registering_variables 20 12
+0 14 -204800 -66577 0;
+#X text 22 124 There are three types:;
+#X text 22 172 [osc_bi] registers a variable for BIDIRECTIONAL osc.
+;
+#X text 75 186 It also includes feedback prevention.;
+#X text 22 144 [osc_r] registers a variable to RECEIVE osc;
+#X text 22 158 [osc_s] registers a variable to SEND osc;
+#X obj 14 261 cnv 15 750 200 empty empty Example 20 12 0 14 -204800
+-66577 0;
+#X obj 612 355 hsl 128 15 0 127 0 0 /i/send/data /i/send/data /i/send/data
+-2 -8 0 10 -262144 -1 -1 0 1;
+#X obj 620 303 nbx 5 14 -1e+37 1e+37 0 0 /i/receive/data /i/receive/data
+/i/receive/data 0 -8 0 10 -262144 -1 -1 0 256;
+#X obj 27 301 osc_r 0 /i/receive/data;
+#X obj 31 363 osc_s 0 /i/send/data;
+#X text 188 300 This registers "/i/receive/data" to receive OSC from
+domain "0";
+#X text 180 357 This registers "/i/send/data" to send OSC from domain
+"0";
+#X obj 34 420 osc_bi 0 /i/do/both;
+#X text 185 419 This registers "/i/do/both" for bidirectional OSC communication
+with domain "0";
+#X obj 14 472 cnv 15 750 180 empty empty OSC_Output 20 12 0 14 -204786
+-66577 0;
+#X obj 150 499 r /0/osc/out;
+#X obj 150 599 print /0/osc/out;
+#X obj 150 575 spigot 1;
+#X obj 195 550 tgl 15 0 empty empty print_osc_output 17 7 0 10 -262144
+-1 -1 0 1;
+#X text 537 548 [packOSC];
+#X text 537 558 |;
+#X text 537 568 |;
+#X text 537 578 [udpsend 127.0.0.1];
+#X text 537 538 |;
+#X text 537 528 |;
+#X text 537 518 [r /0/osc/out];
+#X obj 14 661 cnv 15 750 220 empty empty OSC_Input 20 12 0 14 -204786
+-66577 0;
+#X text 502 829 |;
+#X text 502 839 |;
+#X text 502 809 |;
+#X text 502 799 |;
+#X obj 144 790 s /0/osc/in;
+#X text 502 789 [udreceive 127.0.0.1];
+#X text 502 819 [unpackOSC];
+#X text 502 849 [s /0/osc/in];
+#X obj 20 698 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
+-262144 -1 -1 0 256;
+#X msg 20 717 /i/receive/data \$1;
+#X msg 144 717 /i/do/both \$1;
+#X obj 147 697 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
+-1 -1 0 1;
+#X text 223 788 <-- put your OSC input in here. Like this:;
+#X obj 612 425 hsl 128 15 0 127 0 0 /i/do/both /i/do/both /i/do/both
+-2 -8 0 10 -262144 -1 -1 0 1;
+#X text 160 520 Connect this to your OSC externals \, i.e. mrpeach
+or iemnet:;
+#X text 127 477 The OSC output can be accessed und under "/<domain>/osc/out"
+;
+#X text 123 667 The OSC input must be sent to "/<domain>/osc/out";
+#X text 21 621 Play around with the patch on top of the page \, and
+see what's going to be printed...;
+#X text 598 19 (c)2011-2012 Marian Weger;
+#X text 21 89 New variables can be registered to an OSC-domain by using
+the [osc_...] modules.;
+#X text 23 208 SYNTAX: [osc_xx <domain> <variable_name>] \, where <domain>
+is the name of the storage you want to register to \, and <variable_name>
+is the complete name of your variable.;
+#X connect 17 0 19 0;
+#X connect 19 0 18 0;
+#X connect 20 0 19 1;
+#X connect 37 0 38 0;
+#X connect 38 0 33 0;
+#X connect 39 0 33 0;
+#X connect 40 0 39 0;
+#X coords 0 756 1 755 85 60 0;

+ 26 - 0
osc2send-help.pd

@@ -0,0 +1,26 @@
+#N canvas 678 110 351 374 10;
+#X text 28 -59 osc2send;
+#X text 27 -22 routes them to the corresponding send;
+#X text 27 -32 takes osc style messages and;
+#X floatatom 42 25 5 0 0 0 - - -;
+#X msg 42 44 /bla/blub \$1;
+#X obj 42 86 osc2send;
+#X obj 42 135 r /bla/blub;
+#X floatatom 42 157 5 0 0 0 - - -;
+#X obj 149 24 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
+1;
+#X obj 149 135 r /pling/plong;
+#X obj 149 157 unpack f s;
+#X floatatom 149 179 5 0 0 0 - - -;
+#X symbolatom 206 179 10 0 0 0 - - -;
+#X text 49 233 (c)2011 Marian Weger;
+#X msg 149 44 /pling/plong \$1 #blip?\$1;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 6 0 7 0;
+#X connect 8 0 14 0;
+#X connect 9 0 10 0;
+#X connect 10 0 11 0;
+#X connect 10 1 12 0;
+#X connect 14 0 5 0;
+#X coords 0 374 1 373 85 60 0;

+ 30 - 0
osc2send.pd

@@ -0,0 +1,30 @@
+#N canvas 212 191 416 534 10;
+#X obj 149 400 s;
+#X obj 95 338 list;
+#X obj 95 360 list trim;
+#X obj 95 248 list split 1;
+#X obj 32 202 inlet;
+#X text 28 91 osc2send;
+#X obj 137 288 t b s;
+#X obj 32 224 route float;
+#X text 27 128 routes them to the corresponding send;
+#X text 27 118 takes osc style messages and;
+#X text 121 173 example:;
+#X text 123 191 inlet: "/bla/blub 1 2 3";
+#X text 123 211 --> "1 2 3" is sent to "/bla/blub";
+#X msg 32 431 WARNING: need list but got float;
+#X obj 32 453 print osc2send;
+#X obj 32 246 t b;
+#X text 178 461 (c)2011 Marian Weger;
+#X connect 1 0 2 0;
+#X connect 2 0 0 0;
+#X connect 3 0 6 0;
+#X connect 3 1 1 1;
+#X connect 4 0 7 0;
+#X connect 6 0 1 0;
+#X connect 6 1 0 1;
+#X connect 7 0 15 0;
+#X connect 7 1 3 0;
+#X connect 13 0 14 0;
+#X connect 15 0 13 0;
+#X coords 0 534 1 533 85 60 0;

+ 13 - 0
osc_bi-help.pd

@@ -0,0 +1,13 @@
+#N canvas 659 149 379 230 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X text 24 43 registers parameter for bidirectional osc communication
+;
+#X obj 18 61 cnv 15 350 75 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 27 84 OSC input stream needs to be routed to /<domain>/osc/in
+;
+#X text 27 104 OSC output stream is routed to /<domain>/osc/out;
+#X text 50 15 osc_bi <domain> <name>;
+#X obj 61 150 cnv 15 250 30 empty empty see_[osc-help]_for_help 20
+12 0 14 -261234 -1 0;
+#X text 229 16 e.g. "main /foo/bar";

+ 37 - 0
osc_bi.pd

@@ -0,0 +1,37 @@
+#N canvas 805 155 426 432 10;
+#X msg 142 245 0;
+#X obj 49 342 list trim;
+#X obj 49 292 spigot 1;
+#X obj 115 128 spigot 1;
+#X obj 49 128 spigot 1;
+#X obj 115 179 t a b;
+#X obj 210 74 inlet send;
+#X obj 294 74 inlet receive;
+#X text 208 51 switch on/off OSC send & receive;
+#X text 210 356 (c)2011 Marian Weger;
+#X obj 49 179 t b a;
+#X msg 94 245 1;
+#X text 121 280 feedback prevention;
+#X obj 115 74 r /\$1/osc/in;
+#X obj 49 317 list prepend \$2;
+#X obj 49 374 s /\$1/osc/out;
+#X obj 49 74 r \$2;
+#X obj 115 157 route \$2;
+#X obj 194 245 s \$2;
+#X text 50 15 osc_bi <domain> <name>;
+#X connect 0 0 2 1;
+#X connect 1 0 15 0;
+#X connect 2 0 14 0;
+#X connect 3 0 17 0;
+#X connect 4 0 10 0;
+#X connect 5 0 18 0;
+#X connect 5 1 0 0;
+#X connect 6 0 4 1;
+#X connect 7 0 3 1;
+#X connect 10 0 11 0;
+#X connect 10 1 2 0;
+#X connect 11 0 2 1;
+#X connect 13 0 3 0;
+#X connect 14 0 1 0;
+#X connect 16 0 4 0;
+#X connect 17 0 5 0;

+ 11 - 0
osc_r-help.pd

@@ -0,0 +1,11 @@
+#N canvas 335 244 377 184 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 61 110 cnv 15 250 30 empty empty see_[osc-help]_for_help 20
+12 0 14 -261234 -1 0;
+#X text 24 43 registers parameter for osc receiving;
+#X obj 18 61 cnv 15 350 37 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 33 14 osc_r <domain> <name>;
+#X text 27 71 OSC input stream needs to be routed to /<domain>/osc/in
+;
+#X text 221 16 e.g. "main /foo/bar";

+ 12 - 0
osc_r.pd

@@ -0,0 +1,12 @@
+#N canvas 744 216 298 206 10;
+#X obj 43 97 spigot 1;
+#X text 141 140 (c)2011 Marian Weger;
+#X obj 129 55 inlet status_switch;
+#X obj 43 55 r /\$1/osc/in;
+#X obj 43 128 route \$2;
+#X obj 43 152 s \$2;
+#X text 33 14 osc_r <domain> <name>;
+#X connect 0 0 4 0;
+#X connect 2 0 0 1;
+#X connect 3 0 0 0;
+#X connect 4 0 5 0;

+ 10 - 0
osc_s-help.pd

@@ -0,0 +1,10 @@
+#N canvas 658 316 377 184 10;
+#X text 495 104 (c)2011-2012 \, Marian Weger;
+#X obj 61 110 cnv 15 250 30 empty empty see_[osc-help]_for_help 20
+12 0 14 -261234 -1 0;
+#X text 24 43 registers parameter for osc sending;
+#X obj 18 61 cnv 15 350 37 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 27 71 OSC output stream is routed to /<domain>/osc/out;
+#X text 221 16 e.g. "main /foo/bar";
+#X text 33 14 osc_s <domain> <name>;

+ 14 - 0
osc_s.pd

@@ -0,0 +1,14 @@
+#N canvas 236 289 287 274 10;
+#X obj 49 150 list trim;
+#X obj 49 90 spigot 1;
+#X obj 104 58 inlet status_switch;
+#X text 55 214 (c)2011 Marian Weger;
+#X obj 49 125 list prepend \$2;
+#X obj 49 182 s /\$1/osc/out;
+#X obj 49 58 r \$2;
+#X text 33 14 osc_s <domain> <name>;
+#X connect 0 0 5 0;
+#X connect 1 0 4 0;
+#X connect 2 0 1 1;
+#X connect 4 0 0 0;
+#X connect 6 0 1 0;

+ 16 - 0
prev-next-help.pd

@@ -0,0 +1,16 @@
+#N canvas 578 25 480 371 10;
+#X text 309 275 (c)2011 \, Marian Weger;
+#X text 39 31 prev_next <variable name> <lower border> <upper border>
+<step size>;
+#X obj 126 199 prev-next \$0-counter 0 100 1;
+#X obj 125 149 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X obj 187 252 r \$0-counter;
+#X floatatom 187 274 5 0 0 0 - - -;
+#X obj 290 152 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X text 110 125 step down;
+#X text 273 126 step up;
+#X connect 3 0 2 0;
+#X connect 4 0 5 0;
+#X connect 6 0 2 1;

+ 62 - 0
prev-next.pd

@@ -0,0 +1,62 @@
+#N canvas 578 25 513 521 10;
+#X msg 121 157 -1;
+#X msg 171 157 1;
+#X obj 121 281 +;
+#X obj 171 281 +;
+#X obj 384 157 r \$1;
+#X obj 121 471 s \$1;
+#X obj 121 231 * 1;
+#X obj 121 59 inlet;
+#X obj 171 59 inlet;
+#X obj 295 59 loadbang;
+#X obj 295 87 \$4;
+#X obj 295 109 sel 0;
+#X msg 295 131 1;
+#X obj 322 157 t f;
+#X text 261 439 (c)2011 \, Marian Weger;
+#X obj 444 109 \$3;
+#X obj 444 157 - \$2;
+#X obj 121 389 wrap;
+#X obj 121 367 / 1;
+#X obj 121 421 * 1;
+#X obj 121 327 - \$2;
+#X obj 121 443 + \$2;
+#X obj 51 59 r \$1/prev;
+#X obj 221 59 r \$1/next;
+#X obj 171 231 * 1;
+#X obj 444 131 + 1;
+#X obj 121 131 t b;
+#X obj 171 131 t b;
+#X text 75 19 prev_next <variable name> <lower border> <upper border>
+<step size>;
+#X connect 0 0 6 0;
+#X connect 1 0 24 0;
+#X connect 2 0 20 0;
+#X connect 3 0 20 0;
+#X connect 4 0 3 1;
+#X connect 4 0 2 1;
+#X connect 6 0 2 0;
+#X connect 7 0 26 0;
+#X connect 8 0 27 0;
+#X connect 9 0 10 0;
+#X connect 9 0 15 0;
+#X connect 10 0 11 0;
+#X connect 11 0 12 0;
+#X connect 11 1 13 0;
+#X connect 12 0 13 0;
+#X connect 13 0 6 1;
+#X connect 13 0 24 1;
+#X connect 15 0 25 0;
+#X connect 16 0 18 1;
+#X connect 16 0 19 1;
+#X connect 17 0 19 0;
+#X connect 18 0 17 0;
+#X connect 19 0 21 0;
+#X connect 20 0 18 0;
+#X connect 21 0 5 0;
+#X connect 22 0 26 0;
+#X connect 23 0 27 0;
+#X connect 24 0 3 0;
+#X connect 25 0 16 0;
+#X connect 26 0 0 0;
+#X connect 27 0 1 0;

+ 16 - 0
schange-help.pd

@@ -0,0 +1,16 @@
+#N canvas 563 102 444 332 10;
+#X text 39 26 schange <init value>;
+#X text 252 25 [change] for symbols;
+#X text 262 279 (c)2012 Marian Weger;
+#X msg 103 88 symbol dog;
+#X msg 123 118 symbol cow;
+#X msg 143 148 symbol pig;
+#X obj 110 197 schange dog;
+#X symbolatom 110 249 10 0 0 0 - - -;
+#X obj 82 248 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X connect 3 0 6 0;
+#X connect 4 0 6 0;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 6 0 8 0;

+ 28 - 0
schange.pd

@@ -0,0 +1,28 @@
+#N canvas 563 102 454 351 10;
+#X obj 116 56 inlet;
+#X obj 116 250 spigot 1;
+#X msg 187 214 0;
+#X obj 177 319 outlet;
+#X text 39 26 schange <init value>;
+#X text 258 30 [change] for symbols;
+#X text 36 313 (c)2012 Marian Weger;
+#X obj 116 138 t a a b;
+#X obj 177 292 t a a;
+#X msg 155 214 1;
+#X obj 187 190 sel init;
+#X obj 272 56 loadbang;
+#X obj 272 78 symbol \$1;
+#X obj 166 56 inlet set;
+#X connect 0 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 1 1;
+#X connect 7 0 1 0;
+#X connect 7 1 10 0;
+#X connect 7 2 9 0;
+#X connect 8 0 3 0;
+#X connect 8 1 10 1;
+#X connect 9 0 1 1;
+#X connect 10 0 2 0;
+#X connect 11 0 12 0;
+#X connect 12 0 10 1;
+#X connect 13 0 12 0;