Hallöchen! Sebastian Kraft writes:
> [...] > > How do you like the following? > > // Constructor with image/camera parameters > lfModifier ( > int width, > int height, > lfPixelFormat format, > float crop, > float focal, > float aperture, > float distance > ); > > // Prepare corrections for a certain lens > lfModifier::PrepareCorrections( > const lfLens *lens, > lfLensType targeom, > float scale, > int flags, > bool reverse > ); On the long run, I'm toying with the idea of adding flatfield images and perspective control in Lensfun. Whether those are really senseful and interesting ideas may be discussed when it's due, but they are good examples of further parameters that may become necessary: - Flatfields need the camera (because the sensor/lens *combination* is important) and the timestamp (sensor dust may change over time). This affects the constructor parameters. - Perspective control needs control point coordinates. This affects the Prepare...() parameters. For such developments, the API should be extensible. Of course, one may add optional parameters to the methods. But appending fields to a struct, or adding a Prepare...() method, is better in my opinion. Tschö, Torsten. -- Torsten Bronger Jabber ID: [email protected] or http://bronger-jmp.appspot.com ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Lensfun-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/lensfun-users
