[vtkusers] CALLBACK / function pointers ?
Antonin Perrot-Audet
antonin07130 at gmail.com
Thu May 6 17:42:04 EDT 2010
Yes, and it can compile then, but it makes my program crash, when it
tries to set the callback :
vtkCBSynchroCam->SetCallback( A::Reaction );
I just have a std::cout << "React" << std::endl; in the Reaction function.
Thanks,
Antonin
On 5/6/10 5:27 PM, John Platt wrote:
> Hi,
>
> Have you tried
>
> static void Reaction (... )
> {
> }
>
> HTH
>
> John
>
>
> ----- Original Message ----- From: "Antonin Perrot-Audet"
> <antonin07130 at gmail.com>
> To: <vtkusers at vtk.org>
> Sent: Thursday, May 06, 2010 9:47 PM
> Subject: [vtkusers] CALLBACK / function pointers ?
>
>
>> Hello all,
>>
>> I have a hopefully simple problem, but I have been struggling for
>> days and I hope someone has an answer :
>>
>> I am trying to use *VTK callbacks* in a custom class :
>> The problem is that I can't get it to execute the function I created.
>>
>> I get a :
>> *no matching function for call to
>> 'vtkCallbackCommand::SetCallback(<unresolved overloaded function
>> type>)'*
>> when I try to compile.
>>
>> It seems that it can't find my function based on its signature ?
>>
>>
>> I wrote a simple example :
>> --------------------------------------------------------
>> // all necessary includes
>>
>> class A
>> {
>>
>> //[...]
>> public:
>> //[...]
>>
>>
>> void SetObserversA ()
>> {
>> // I create a callback object
>> vtkSmartPointer<vtkCallbackCommand> vtkCBSynchroCam =
>> vtkSmartPointer<vtkCallbackCommand>::New();
>>
>> // HERE IS THE PROBLEM : I TRY TO SET THE CALLBACK FUNCTION
>> vtkCBSynchroCam->SetCallback( A::Reaction );
>>
>> RenderWin->AddObserver( vtkCommand::AnyEvent,
>> vtkCBSynchroCam );
>> }
>>
>>
>> void Reaction ( vtkObject* caller, long unsigned int eventId, void*
>> clientData, void* callData )
>> {
>> // do some stuff with the class' private
>> }
>>
>>
>> private:
>> vtkRenderWindow* RenderWin;
>>
>> };
>>
>> --------------------------------------------------------
>>
>>
>> I also tried to use :
>> vtkCBSynchroCam->SetCallback( Reaction );
>> (without the A::)
>> but I still have the same error.
>>
>>
>> I would greatly appreciate if someone could take two minutes to help
>> me with that.
>>
>> Thanks !
>>
>> --
>> Antonin
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the VTK FAQ at:
>> http://www.vtk.org/Wiki/VTK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
>
>
--
Antonin Perrot-Audet
Electrical Engineering& Computer Sciences, INSA Lyon
M2 GEGP Signal& Image Processing, INSA Lyon, UCBL, Centrale Lyon
More information about the vtkusers
mailing list