ObjectARX
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Who called the Object?

2 REPLIES 2
Reply
Message 1 of 3
Anonymous
151 Views, 2 Replies

Who called the Object?

I'm with problem with persistent reactors & stuff here. I have an object A.
Then I have objects 1, 2, 3.
If user changes A then A opens 1, modifies 1 then 2 and then 3. If user
modifies any of 1, 2, 3 then
problems begin. If 2 gets changed, then it calls A, but A will now want to
modify all 1,2,3. It will take 1 and crash..
So A should now what caused its modified() called. If user changed A it
should modify 1, 2, 3.
If object 3 called A then A should try to modify only 3 to prevent infinite
loops.
Please help me out here...

Andrus
2 REPLIES 2
Message 2 of 3
Anonymous
in reply to: Anonymous

Try Adesk::Boolean isNotifying() const;
Check it in the beginning of you reactor-function, and return if so

I recall this from and old class i went to, but not sure if it shoud be
called on "this" or on the argument

/Matt


"andy" wrote in message
news:5106135@discussion.autodesk.com...
I'm with problem with persistent reactors & stuff here. I have an object A.
Then I have objects 1, 2, 3.
If user changes A then A opens 1, modifies 1 then 2 and then 3. If user
modifies any of 1, 2, 3 then
problems begin. If 2 gets changed, then it calls A, but A will now want to
modify all 1,2,3. It will take 1 and crash..
So A should now what caused its modified() called. If user changed A it
should modify 1, 2, 3.
If object 3 called A then A should try to modify only 3 to prevent infinite
loops.
Please help me out here...

Andrus
Message 3 of 3
Anonymous
in reply to: Anonymous

Thanks, now worked it out. Part of my problem was that I have only one
reactor for several objects (1,2,3 all have same reactor).
Figured that this would make things easier: reactors contain only method not
data, data is hold within my custom objects.
Object A knows from where notification event started because, say 2, sets
flag to A. Problem solved......for now.

Andrus



"Matt" wrote in message
news:5107186@discussion.autodesk.com...
Try Adesk::Boolean isNotifying() const;
Check it in the beginning of you reactor-function, and return if so

I recall this from and old class i went to, but not sure if it shoud be
called on "this" or on the argument

/Matt


"andy" wrote in message
news:5106135@discussion.autodesk.com...
I'm with problem with persistent reactors & stuff here. I have an object A.
Then I have objects 1, 2, 3.
If user changes A then A opens 1, modifies 1 then 2 and then 3. If user
modifies any of 1, 2, 3 then
problems begin. If 2 gets changed, then it calls A, but A will now want to
modify all 1,2,3. It will take 1 and crash..
So A should now what caused its modified() called. If user changed A it
should modify 1, 2, 3.
If object 3 called A then A should try to modify only 3 to prevent infinite
loops.
Please help me out here...

Andrus

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report

”Boost