Ask a questionAsk a question
 

AnswerWindows callback as a Class member

Answers

  • Saturday, November 07, 2009 6:16 PMvivek.p Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    why not? use it as static member.

    example;

    class myClass
    {
    public:
    myClass();
    ~myClass();
    void StartMyFunction(void);
    private:
    void DoMyStuff(void);
    static void __cdecl DoMyStuffWrapper(LPVOID);
    }

    // Wrapper function is the callback
    void myClass::StartMyFunction()
    {
    c_function( &DoMyStuffWrapper, this );
    }

    // Wrapper creates C++ pointer to Function
    void myCLass::DoMyStuffWrapper(void *ptr)
    {
    myClass * mySelf=(myClass *)ptr;
    mySelf->DoMyStuff();
    }
    \\

    Cheers.
    • Marked As Answer byVivek Pandey Tuesday, November 10, 2009 4:46 AM
    •  

All Replies

  • Saturday, November 07, 2009 6:16 PMvivek.p Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    why not? use it as static member.

    example;

    class myClass
    {
    public:
    myClass();
    ~myClass();
    void StartMyFunction(void);
    private:
    void DoMyStuff(void);
    static void __cdecl DoMyStuffWrapper(LPVOID);
    }

    // Wrapper function is the callback
    void myClass::StartMyFunction()
    {
    c_function( &DoMyStuffWrapper, this );
    }

    // Wrapper creates C++ pointer to Function
    void myCLass::DoMyStuffWrapper(void *ptr)
    {
    myClass * mySelf=(myClass *)ptr;
    mySelf->DoMyStuff();
    }
    \\

    Cheers.
    • Marked As Answer byVivek Pandey Tuesday, November 10, 2009 4:46 AM
    •