- 13 Mar, 2020 1 commit
-
-
Martin Marinov authored
* Add functionality to store index mesh in OBJ and OFF formats; Add DEB_index_mesh_out[_if] * Switch DEB_index_mesh_out to obj format * Add TEST_if()
-
- 07 Mar, 2020 1 commit
-
-
Martin Marinov authored
-
- 27 Feb, 2020 2 commits
-
-
Martin Marinov authored
-
* Adds optional pre-call and post-call events in the journal to implement reference count abridgement. * Adds new documentation for many functions, and improves existing. * Removes "JOURNAL_FUNCTION" from the created macros when journal is turned off, because there is no such macro when journal is turned on. * Adds the ability to unlink names in the journal manually. This was already being done by destructors, but there wasn't a way to do it for names managed in other ways. * Add HandleT<> to support handle tracking * Generalize the key<> function to handles and make key a pair of size_t * Simplify ReturnLink and make it work for HandleT<> * Adds an operator< to the HandleT class so that it can be used as a key in associative containers (T-Splines uses it this way for ref-count collapsing).
-
- 11 Feb, 2020 5 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
Add JOURNAL_ADD_TYPE_INTERNAL_TRACKED, ab internal type that is tracked by the name book at all time
-
Martin Marinov authored
-
Martin Marinov authored
-
Martin Marinov authored
* Move type_name<> to JournalCppDefs.hh and namespace Cpp and enable automatic handling on *, & and const types * Add JOURNAL_ADD_TYPE, JOURNAL_ADD_TYPE_INTERNAL, JOURNAL_TYPE_EXTERNAL * Leverage argument<> for CArrayT<> elements * Add Journal::to_lower() and improve object naming when the class name is all capitals * Prevent de-referencing of possibly invalid argument pointers * Add define_consrtuct[_default] to simplify for non-opaque data constructors, e.g., vectors, planes, matrices, transforms, etc. * Fix a bug where references to a pointer could inadvertently dereference an invalid pointer * Disable automatic includes by default; enable them by defining JOURNAL_AUTO_INCLUDE. * Add JOURNAL_MAIN_VOID to prevent return from the main() function in C++ journals. * Add extract_directory() and replace_filename() in JournalFileSystem.hh/cc
-
- 04 Feb, 2020 2 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
* Add support for output arguments accessed by * and ** * Add ArgT and ArgQ, the macro JT (journal traits) to provide a generic approach to disambiguate definitions for value, reference and pointer arguments * Add support for linked arguments * Recursive Cpp::define() for ArgLinkT<> and ArgT<> * Reference to pointer arguments now defer processing to the pointer argument implementation, rendering define overloads for pointer to custom types redundant * Journal non-linked pointers to opaque data now using their actual addresses cast with reinterpret_cast<> * Remove links to this pointers when emitting object destructor calls * Remove Data::key * Add Data::type to allow different types of initialization * Simplify ArgLinkT * Add ReturnLinkT and JOURNAL_[METHOD|FUNCTION]_RETURN_LINK * Remove OutputT * Add JOURNAL_TYPE_NAME macro * Add Journal::Cpp casts * Fix a bug where define(..., float) was outputting invalid float constants * Improve the comment on Journal::Filename
-
- 24 Jan, 2020 2 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
-
- 23 Jan, 2020 1 commit
-
-
Martin Marinov authored
* Refactor Journal::Stream::Impl * Add Scheme journal implementation * Apply SMI class naming conventions for Scheme * Remove Base::Command as this is breaking ENDL output during static initialization * Clang reformat for JournalStream.cc * Improve the naming API * Various fixes for the Scheme journal * Replace define() overloads with template<> define() specializations
-
- 17 Jan, 2020 1 commit
-
-
Martin Marinov authored
MTBR-691 refactor C++-related code from Journal::Stream::Impl to allow journals in other languages (#3)
-
- 16 Jan, 2020 1 commit
-
-
Martin Marinov authored
-
- 15 Jan, 2020 1 commit
-
-
Martin Marinov authored
-
- 14 Jan, 2020 4 commits
-
-
Martin Marinov authored
Fix a bug where the Journal can be turned on before the stream pointer is initialized, resulting in a failure to output and memory leaks
-
Martin Marinov authored
Ensure Journal stream is always flushed when `\n` is printed
-
Martin Marinov authored
-
Martin Marinov authored
-
- 20 Dec, 2019 2 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
* Add the Journal sources * Remove ReForm specific code in Journal and allow various configuration options * Fix a macro that was incorrect if JOURNAL_ON was undefined * Journal can work either with Boost or the std::experimental filesystem implementations * OStringStream using std::ostringstream now and sets the locale to "C" * Debug::FIle now uses OStringStream * Add IOutputStream:Base::print(float) * Fix initialization bugs * Allow comment streaming, allow existing journal entries to be output as comments, improve code consistency * Document the Journal functions * Add Journal::output_path()
-
- 30 Nov, 2019 1 commit
-
-
Martin Marinov authored
Flush the test stream after each result output to make sure results are not lost in the event of a crash
-
- 14 Nov, 2019 1 commit
-
-
Martin Marinov authored
-
- 08 Nov, 2019 1 commit
-
-
Martin Marinov authored
-
- 17 Oct, 2019 1 commit
-
-
Martin Marinov authored
-
- 01 Oct, 2019 1 commit
-
-
Martin Marinov authored
-
- 30 Sep, 2019 3 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
-
Martin Marinov authored
* Remove boost dependency * Make the CMakeLists.txt reusable * Add more configuration options and remove ReForm-specific defaults * Clean up the File interface and implementation * Clean up definitions of helper and stream functions * Use the configured print function for debug output to the console instead of streaming to std::cerr * Clean up the File flags and HTML support (unused) * Simplify File and Config to avoid deallocations on app shutdown * Update (C) notices, clean up code * Add the macro DEB_if() to simplify the DEB_if_*() macro implementations
-
- 23 Sep, 2019 2 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
-
- 30 Jul, 2018 1 commit
-
-
* Add new warning guard macro for CQI: add a completely new macro rather than using the existing one as this will let us customise the behaviour without breaking any of the existing warning suppressions. In particular the warning level can be set to 3 even for the problem header files. * Add unused variable macro. * Minor whitespace correction
-
- 29 Jan, 2018 4 commits
-
-
Martin Marinov authored
-
Martin Marinov authored
-
Martin Marinov authored
Change BaseDefines.hh to only export symbols if BASEDLL is defined (same behavior as Windows) to allow building Base as static library without exposing its symbols
-
Martin Marinov authored
-
- 06 Dec, 2017 1 commit
-
-
Martin Heistermann authored
-
- 13 Nov, 2017 1 commit
-
-
Max Lyon authored
-