Recieving CoreMessage several times



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 09/06/2004 at 05:51, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   8.207 
    Platform:   Windows  ;   
    Language(s) :     C++  ;

    ---------
    i defined some messages using own plug-in IDs and send them with SpecialEventAdd(PLUGINID) to notify another plug-in that some-work is to do.
    now i have the problem, that a message which was send only once (i checked this) will be recieved by the recieving plug-in three times.

      
    Bool Plugin::CoreMessage(LONG id, const BaseContainer& msg)  
    {     switch (id)  
         {       
         case GRADIMSG_RM_TREE_SAVED:  
              {  
                   doanything();  
              } break;  
    

    that makes my recieving plug-in won't work correctly because it starts a function three times instead of one time.

    what does multiply the message and how can i avoid that.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 09/06/2004 at 05:53, xxxxxxxx wrote:

    I don't know. One workaround would be to have something you increment in the message container, so that duplicates can be ignored.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 09/06/2004 at 06:04, xxxxxxxx wrote:

    how should i increment in the container.
    imagine:
    i send a message once and get it three times. so i will get three times the same container.
    but unfortunately before recieving the message my function will be called the first time. then it starts again.

    i tried to increment a value after recieving a message and want to avoid calling the function if the message arrived second (or more) time. but where should i reset my value to get the function free for the next time i want to call it by myself.

    seems to get tricky...



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 09/06/2004 at 07:07, xxxxxxxx wrote:

    it's not necessary to do any tricks.
    the undocumented function CheckCoreMessage(msg)
    solved the problem.


Log in to reply