Forums > Dev

Checking for mute state of object inside poly~ instance

May 27, 2012 | 12:11 pm

Hello devs,

Can anyone tell me how to determine whether or not an object, which is instantiated inside an instance of a poly~, is muted (using poly~’s mute message)? Checking l_obj.z.disabled inside the perform routine doesn’t work for this (as in below)…

if (x->l_obj.z_disabled) {
     ...
}

best,
Zachary


May 31, 2012 | 5:27 am

I can’t believe that no one here knows something about this? I need help here, can not for the life of me find a way to detect mute status while inside a poly~. The z_disabled flag does not seem to be linked to this (although it does work using the mute~ object with a subpatch/abstraction. Help please?

best,
Zachary


May 31, 2012 | 7:19 am

When an object is in a muted poly~ it’s perform method is just no longer called. until you unmute it. Is there a specific reason why you want to know that?


May 31, 2012 | 8:09 am

I’m interested by your answer @Emmanuel.
By saying its perform method, you mean everything inside the poly~ (metro, other objects) ?


May 31, 2012 | 9:14 am

Hi Emmanuel,

Without going into to too much detail here, my object accesses a CLASS_NOBOX object, shared amongst all objects with the same name attribute. I need to do something in each object’s perform routine, regardless of it’s mute state. Using the z_disabled flag I am still able to do these necessary tasks at every pass of the signal chain, when dsp is muted using mute~. I need to do the same thing when the dsp is muted inside a poly~. Wouldn’t it make sense to have the z_disabled flag update based on dsp muting status inside a poly~ as well?

best,
Zachary


June 1, 2012 | 5:38 pm

@Emmanuel,

Do you or any other Cycling folks have pointers, examples, etc. showing how to make an object know it is inside a muted poly~? This is basically the last issue to be resolved in an object I’m working on, and I’ve been unable to come up with a way by myself. Would probably be worthwhile to post here for reference, in case others need to do something similar.

best,
Zachary


June 7, 2012 | 10:10 am

No ideas from Cycling on this??? Is there just simply no way to know that you object is a muted instance of a poly~? Nicolas’s idea about mutemap would have been my guess as well, if it’s didn’t require an outlet.

best,
Zachary


June 7, 2012 | 10:14 am

check thispoly~ object.

[attachment=195916,3991]

Attachments:
  1. thispoly.PNG

June 7, 2012 | 10:40 am

I think that requires that a thispoly~ object always accompany an instantiation of my external, which I don’t want to require. I’m looking for a C API solution.


June 11, 2012 | 9:51 am

Sorry but you’ll have to find a way to either have a thispoly~ object somewhere in your patch. There’s no way to figure this out from C. thispoly~ uses some private function to communicate with the poly~ object in the upper level.


June 12, 2012 | 7:16 am

It’s not going to work. Thispoly~ needs to be instantiated in a patcher (to be able to find it’s parent poly~) not in your object.


June 12, 2012 | 5:06 pm

Thanks Emmanuel and Nicolas,

I guess for now, unless I can think of a redesign that avoids my current need for mute state knowledge inside a poly~, I’ll just need to accept this is a limitation of the object.

best,
Zachary


Viewing 12 posts - 1 through 12 (of 12 total)