Delay/Read in a patcher talking to Delay/Write in parent


#1

Is there some magic to doing this? I assume the patcher stuff has some namespace it uses when compiling. I have a patch for the noodling thread which uses a single Write in the parent and a bunch of reads (8+) to scan through the single parent. I would love to pack that functionality into a patcher, but trying it gives me this error:

C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:532:33: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       uint32_t tmp_di = parent->instanced1_i.writepos - (tmp_d>>(27-parent->instanced1_i.LENGTHPOW)) - BUFSIZE + buffer_index -1;
                                 ^
C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:532:77: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       uint32_t tmp_di = parent->instanced1_i.writepos - (tmp_d>>(27-parent->instanced1_i.LENGTHPOW)) - BUFSIZE + buffer_index -1;
                                                                             ^
C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:533:42: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       uint32_t tmp_w1 = (tmp_d<<(parent->instanced1_i.LENGTHPOW+3)) & 0x3FFFFFFF;
                                          ^
C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:535:32: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       int32_t tmp_a1 = parent->instanced1_i.array[tmp_di&parent->instanced1_i.LENGTHMASK]<<16;
                                ^
C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:535:66: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       int32_t tmp_a1 = parent->instanced1_i.array[tmp_di&parent->instanced1_i.LENGTHMASK]<<16;
                                                                  ^
C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:536:32: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       int32_t tmp_a2 = parent->instanced1_i.array[(tmp_di+1)&parent->instanced1_i.LENGTHMASK]<<16;
                                ^
C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.cpp:536:70: error: 'class rootc::instancepatcher__1' has no member named 'instanced1_i'
       int32_t tmp_a2 = parent->instanced1_i.array[(tmp_di+1)&parent->instanced1_i.LENGTHMASK]<<16;
                                                                      ^
make: *** [C:\Users\matthew\DOCUME~1\axoloti/build/xpatch.bin] Error 1
shell task failed, exit value: 1

is there some magic way to refer to a Write in the parent?


#2

you need to refer to the delay using 'file type' semantics
i.e.

../mydelay

its not shown in the delay examples (help) , but it is shown in the table examples, same syntax

EDIT: hang on a sec, I thought this worked for delays, but not working here... I'm testing now, perhaps only tables have this :frowning:

EDIT2: panic over does work, just a typo on my part :smile:


#3

We need a karma system! Thanks @thetechnobear I knew it was something simple.