itkEventMacro no longer works the way it used to. Applications that used itkEventMacro(myEvent, itk::UserEvent); must break up the statement into two statements and two files: in the .h file itkEventMacroDeclaration(myEvent,itk::UserEvent); in the .cxx file itkEventMacroDefinition(myEvent,itk::UserEvent);
The problems occurs when an application has multiple source files that include the file with itkEventMacro. Duplicate symbols are created now. Prior to the API-break this was fine. Application code that uses itkEventMacro that wants to support ITK pre-the-API-break and post-the-API-break will need further statements. I am working on getting the ITKApps to work with both pre and post API-break versions. The unintended consequences of this API break are troublesome. On Mon, May 25, 2015 at 3:10 PM, Bill Lorensen <[email protected]> wrote: > itksnap also has issues with the API change. I'll try to make a small > example that illustrates the problem. > > > > On Mon, May 25, 2015 at 12:08 PM, Bill Lorensen <[email protected]> > wrote: >> Looks to me that the API for itkEventMacro has changed. This is bad. >> In ITKApps there are several definitions like this. How must these be >> changed? >> >> namespace fltk { >> >> /** >> * List of the events expected in this domain >> */ >> itkEventMacro( RedrawEvent, itk::UserEvent ); >> itkEventMacro( GlDrawEvent, itk::UserEvent ); >> itkEventMacro( VolumeReslicedEvent, itk::UserEvent ); >> itkEventMacro( ClippingPlaneEvent, itk::UserEvent ); >> >> >> >> } // end namespace fltk >> >> >> On Mon, May 25, 2015 at 11:59 AM, Bill Lorensen <[email protected]> >> wrote: >>> Since this topic was merged, ITKApps failk to build. I narrowed it >>> down using git commit. >>> >>> http://review.source.kitware.com/#/c/19729/ >>> >>> Here is the failing dashboard entry: >>> https://open.cdash.org/viewBuildError.php?buildid=3828894 >>> >>> I'll take a lot to see if I can fix it. >>> >>> Bill >> >> >> >> -- >> Unpaid intern in BillsBasement at noware dot com > > > > -- > Unpaid intern in BillsBasement at noware dot com -- Unpaid intern in BillsBasement at noware dot com _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/insight-developers
