All of the access methods for autoPtr include validity checks and will fail if the underlying point is NULL. In some cases, however, we'd like to retain the automatic deletion mechanism, but still address a nullptr. This is mostly for cases in which a file-stream should be allocated, but only on the master process. For these cases we'd still like to pass through and reference the underlying pointer (eg, to obtain the correct method call) without tripping the pointer check mechanism. If we attempt to use the ptr() method, the autoPtr memory management is bypassed and we risk memory leaks. Instead provide an alternative mechanism to obtain the raw underlying pointers/references. Use rawPtr() and rawRef() for these potentially useful, but also potentially dangerous, operations.
About OpenFOAM
OpenFOAM is a free, open source CFD software package developed primarily by OpenCFD since 2004 and is currently distributed by ESI-OpenCFD and the OpenFOAM Foundation. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to acoustics, solid mechanics and electromagnetics. More...
OpenFOAM+ uses the OpenFOAM Foundation version as a common code base, with wider functionality and platform support. Its purpose is to accelerate the public availability of new features which are sponsored by OpenCFD's customers and contributed by the OpenFOAM community.
Copyright
OpenFOAM+ is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. See the file COPYING in this directory or http://www.gnu.org/licenses/, for a description of the GNU General Public License terms under which you can copy the files.
OpenFOAM Trademark
OpenCFD Limited, owner of the OpenFOAM Trademark, has granted the use of the Trademark to the OpenFOAM Foundation. Violations of the Trademark are continuously monitored and will be duly prosecuted. Please contact OpenCFD if you have any questions on the use of the OpenFOAM trademark.
Useful Links
- Download and installation instructions
- Documentation
- Reporting bugs/issues (including bugs/suggestions/feature requests) in OpenFOAM+
- Collaborative and Community-based Developments
- Contacting OpenCFD
Copyright 2016 OpenCFD Ltd