aboutsummaryrefslogtreecommitdiff
path: root/doc/additional/pd-msg/0.intro.txt
blob: 7574af96e627c646454c5b2e209827251f198e4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
Here is some documentation that covers internal pd messages.
(pd-msg_05)

1) Internal msgs are sent directly to pd (pd selector) or to a loaded patch (pd-patch.pd selector).
  all these msgs have to end with a semicolon ";"
  you can test them using :
    the pd menu under "File : Message..." or with the shortcut <ctrl-m>
    pdsend
    the tclsend2pd in the 4.msg_from_tcl folder.

  These messages allow you to:
    control pd without the gui :
    make use of the no-gui option
    open a patch via socket... (tcl, python, sh, c++,...)
    modify or create a new patch
    create a patch that will create some other patch
    dynamically create objects to create polyphony (e.g., 100 osc~ or more...)
    load patches from within another patch
    construct generative patches
    create a new gui
    and much more...

2) Here's a list of pd's internal msgs (* are documented somewhere in this doc):

  messages to pd:
        init  [gimme]
        filename  [symbol] [symbol]
    *   open  [symbol] [symbol]
    *   quit
        foo  [gimme]
    *   dsp  [gimme]
        meters  [float]
        key  [gimme]
    *   audiostatus
        finderror
        ping

 messages to canvas:
    *   obj  [gimme]
    *   msg  [gimme]
    *   floatatom  [gimme]
    *   symbolatom  [gimme]
    *   text  [gimme]
    *   graph  [gimme]
    *   array
    *   scalar  [gimme]
        bng  [gimme]
        toggle  [gimme]
        vslider  [gimme]
        hslider  [gimme]
        radio  [gimme]
        vumeter  [gimme]
        mycnv  [gimme]
    *   connect  [float] [float] [float] [float]
    *   restore  [gimme]
        write  [symbol] [defsymbol]
        read  [symbol] [defsymbol]
        mergefile  [symbol] [defsymbol]
        sort
    *   click  [float] [float] [float] [float]
    *   mouseup  [float] [float] [float]
    *   key  [gimme]
    *   motion  [float] [float] [float]
    *   print  [symbol]
    *   menusave
    *   menusaveas
    *   menuclose  [deffloat]
    *   saveto  [symbol] [symbol]
    *   cut
    *   copy
    *   paste
    *   duplicate
    *   selectall
    *   tidy
    *   texteditor
    *   editmode  [deffloat]
        protectmode  [deffloat]
    *   print  [symbol]
    *   pop  [deffloat]
    *   loadbang
    *   relocate  [symbol] [symbol]
    *   menufont
    *   font  [float] [float] [float]
    *   find  [gimme]
    *   findagain
    *   findparent
    *   vis  [float]
        properties  [float] [float]
        help  [float] [float]
        arraydialog  [symbol] [float] [float] [float]
        map  [float]
        clear
        intatom  [gimme]
        atom  [gimme]



3) Here's an overview of the documentation :
  1.msg_and_patch
    description of msgs that can be sent to patches.
    (contains pd files)

  2.msg_and_pd
    description of msgs that can be sent to pd.
    (contains pd files)  

  3.pdscript 
    an example sh scrip using pdsend to create a patch in pd.
    pdscript was authored by Guenter Geiger
    (contains it's own readme + files)

  4.msg_from_tcl/tk
    decription of how to use tcl/tk to create a patch, open a patch, etc...
  
  5.Examples
    examples of how an "obj x y myOsc~" message can be used
    to deal with "massive polyphony"

4) Releases :

  release 0.5 : pd-msg_05.tar.gz
    added some more msg.
    Thanks to Krzysztof Czaja
    all msgs are listed for pd0.34

  release 0.4 : pd-msg_04.tar.gz
    added many messages :
      the events messages
      the menu messages
      the cut&paste msg, etc...
    complete the polyphonie example
  
  release 0.3 : pd-msg
    Rearrange patch & examples in different directory.
    add polyphonie examples
    add tcl scripts...

  release 0.2 : self-generation
    added messages to open and close patch.

  release 0.1 : self-construction
    first release

5) To do list :

  some msgs are not well explained or not explained at all.

6) Reference :
  Look @ the end of code of g_canvas.c in the source directory.


Damien HENRY