Ipopt journal printing through casadi::uout() More...
#include <ipopt_uout_journal.hpp>
uout() is thread_local, so the stream is looked up at every write rather than stored: a StreamJournal holding &uout() keeps pointing at the stream of the thread that created the solver memory, which is destroyed when that thread exits (e.g. a map(..., "thread") worker). The next solve on another thread then crashes in Journalist::FlushBuffer, even with printing disabled.
Shared by the ipopt and bonmin plugins (header-only).
Definition at line 49 of file ipopt_uout_journal.hpp.


Public Member Functions | |
| UoutJournal (const std::string &name, Ipopt::EJournalLevel default_level) | |
Protected Member Functions | |
| void | PrintImpl (Ipopt::EJournalCategory, Ipopt::EJournalLevel, const char *str) override |
| void | PrintfImpl (Ipopt::EJournalCategory, Ipopt::EJournalLevel, const char *pformat, va_list ap) override |
| void | FlushBufferImpl () override |
|
inline |
Definition at line 51 of file ipopt_uout_journal.hpp.
|
inlineoverrideprotected |
Definition at line 71 of file ipopt_uout_journal.hpp.
References casadi::uout().
|
inlineoverrideprotected |
|
inlineoverrideprotected |
Definition at line 55 of file ipopt_uout_journal.hpp.
References casadi::str(), and casadi::uout().