Hello, Howard, > I have changed this again to no longer throw an exception > if nothing is found. Instead, as suggested by Mateusz, > the Dimension is wrapped in a boost::optional that may be null.
Yes, that sounds reasonable. :-) I've been away on holidays, in case you're wondering about the delayed response... ;-) Regards, David Trudgett -----Original Message----- From: Howard Butler [mailto:[email protected]] Sent: Friday, 24 December 2010 05:44 To: Trudgett, David Cc: [email protected] Subject: Re: [Liblas-devel] HasColor() and HasTime() removed from Schema class public interface On Dec 19, 2010, at 8:38 PM, Howard Butler wrote: > The proper way to ask for HasColor or HasTime now is to ask the schema if the color or time dimensions exist. > > bool bColorExists = false; > try { > > liblas::Dimension const& red = schema.GetDimension("Red"); > liblas::Dimension const& green = schema.GetDimension("Green"); > liblas::Dimension const& blue = schema.GetDimension("Blue"); > bColorExists = true; > > } catch (std::runtime_error const&) > { > } David, I have changed this again to no longer throw an exception if nothing is found. Instead, as suggested by Mateusz, the Dimension is wrapped in a boost::optional that may be null. boost::optional< Dimension const& > red = schema.GetDimension("Red"); boost::optional< Dimension const& > green = schema.GetDimension("Green"); boost::optional< Dimension const& > blue = schema.GetDimension("Blue"); if (red && green && blue) bColorExists = true; A boost::optional can be dereferenced to get the const &. For example, red->GetName(); Thanks for the feedback. I think this is better :) Howard Attention Email Disclaimer Notice - This message is the property of AAM Pty Ltd. The information in this email is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it is prohibited and may be unlawful. If you have received this message in error please notify AAM Pty Ltd. immediately via email to [email protected] <mailto:[email protected]> This email has been scanned and cleared by NetIQ Mail Marshal, however AAM Pty Ltd does not guarantee this message free of viruses, or interference. ________________________________ _______________________________________________ Liblas-devel mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/liblas-devel
