|
MGIS
|
the namespace mgis encloses all the MGIS project.
More...
Classes | |
| struct | AbstractErrorHandler |
base class for error handlers This class shall be used as arguments to checkPreconditions methods More... | |
| struct | Context |
a class used to pass an execution context to most methods of MGIS and gather information (error, logs). More... | |
| struct | ContextInitializer |
class that can be used to initialize a context, in particular in a constexpr function. More... | |
| struct | ContractViolationHandler |
| a class used to report a contract violation More... | |
| struct | Cste |
| struct | ErrorBacktrace |
| a structure to keep trace of error messages. More... | |
| struct | InvalidResult |
| a class convertible to many values used as invalid result. More... | |
| struct | LibrariesManager |
| structure in charge of handling libraries and querying MGIS' meta-data More... | |
| struct | OptionalReference |
| a class that may contain a reference to a class More... | |
| struct | PreconditionsCheck |
| struct | PreconditionsChecker |
| struct | ThreadedTaskResult |
| a class standing for the result of a taks More... | |
| struct | ThreadedTaskResult< void > |
| Partial specialisation for non-returning tasks. More... | |
| struct | ThreadedTaskResultBase |
| non-template base class of the ThreadedTaskResult class More... | |
| struct | ThreadPool |
| structure handling a fixed-size pool of threads More... | |
Typedefs | |
| using | size_type = mgis_size_type |
| a simple alias to the the default indexing type used by mgis | |
| using | real = mgis_real |
| alias to the numeric type used | |
| using | ExceptionHandler = void(*)(void) |
| a simple alias | |
| template<typename F , typename... ArgumentsTypes> | |
| using | invoke_result_t = std::conditional_t< std::is_void_v< std::invoke_result_t< F, ArgumentsTypes... > >, bool, std::optional< std::invoke_result_t< F, ArgumentsTypes... > > > |
| a simple alias | |
Enumerations | |
| enum struct | OutputStreamColors { BLACK , RED , GREEN , YELLOW , BLUE , PURPLE , LIGHTBLUE , WHITE , RESET } |
| list of available colors for output stream More... | |
| enum struct | StorageMode { LOCAL_STORAGE , EXTERNAL_STORAGE } |
| storage option for a non uniform material property or non uniform external state variable. More... | |
| enum | VerbosityLevel { verboseQuiet = -1 , verboseLevel0 = 0 , verboseLevel1 = 1 , verboseLevel2 = 2 , verboseLevel3 = 3 , verboseDebug = 4 , verboseFull = 5 } |
list the possible values for the logging facilities provided by the Context class | |
Functions | |
|
template<typename Type , typename... Args> requires ( is_check_preconditions_callable<Type, Args...>) | |
| constexpr void | check_preconditions (Args &&...args) |
| MGIS_VISIBILITY_EXPORT mfront::MFrontDatabase & | getDatabase () noexcept |
| MGIS_EXPORT InvalidResult | registerExceptionInErrorBacktrace (ErrorBacktrace &) noexcept |
| a custom Lippincott-like function that extract error messages from an exception | |
| MGIS_EXPORT InvalidResult | registerExceptionInErrorBacktraceWithoutSourceLocation (ErrorBacktrace &) noexcept |
| a custom Lippincott-like function that extract error messages from an exception | |
| constexpr bool | isInvalid (const bool) noexcept |
| template<typename T > | |
| constexpr bool | isInvalid (const std::optional< T > &) noexcept |
| template<typename T > | |
| constexpr bool | isInvalid (T *const) noexcept |
| template<typename T > | |
| constexpr bool | isInvalid (const std::unique_ptr< T > &) noexcept |
| template<typename T > | |
| constexpr bool | isInvalid (const std::shared_ptr< T > &) noexcept |
| constexpr bool | areInvalid (const auto &...) noexcept |
| constexpr bool | isValid (const auto &) noexcept |
| constexpr bool | areValid (const auto &...) noexcept |
| constexpr bool | areInvalid (const auto &...o) noexcept |
| constexpr bool | areValid (const auto &...o) noexcept |
| MGIS_EXPORT std::ostream & | getDefaultLogStream () noexcept |
| MGIS_EXPORT std::pair< bool, std::string > | setDefaultLogStream (std::string_view) noexcept |
| set the default log stream as a file. | |
| MGIS_EXPORT void | setDefaultLogStream (std::ostream &) noexcept |
| set the default log stream from an exisiting output stream | |
| MGIS_EXPORT void | setDefaultLogStream (std::shared_ptr< std::ostream >) noexcept |
| set the default log stream from an exisiting output stream | |
| MGIS_EXPORT void | resetDefaultLogStream () noexcept |
| reset the default log stream | |
| MGIS_EXPORT void | disableDefaultLogStream () noexcept |
| disable the default log stream | |
| MGIS_EXPORT void | setStreamColor (std::ostream &, const OutputStreamColors) noexcept |
| change the color of the output for warnings for red | |
| MGIS_EXPORT void | resetStreamColor (std::ostream &) noexcept |
| reset the color of the output | |
| template<typename... Args> | |
| void | warning (std::ostream &, Args &&...) noexcept |
| print a warning message | |
| template<typename... Args> | |
| void | debug (std::ostream &, Args &&...) noexcept |
| print message for debugging | |
| MGIS_EXPORT void | setErrorColor (std::ostream &) noexcept |
| MGIS_EXPORT void | setWarningColor (std::ostream &) noexcept |
| template<typename... Args> | |
| void | warning (std::ostream &os, Args &&...args) noexcept |
| template<typename... Args> | |
| void | debug (std::ostream &os, Args &&...args) noexcept |
| MGIS_EXPORT void | setExceptionHandler (ExceptionHandler) |
| set an exception handler | |
| MGIS_EXPORT ExceptionHandler | getExceptionHandler () |
| return a registred exception handler, nullptr if none were registred. | |
| template<typename Exception = std::runtime_error> | |
| MGIS_VISIBILITY_LOCAL void | raise () |
a small wrapper used to build the exception outside the throw statement. As most exception's classes constructors may throw, this avoids undefined behaviour as reported by the cert-err60-cpp warning of clang-tidy (thrown exception type is not nothrow copy constructible). | |
| template<typename Exception = std::runtime_error, typename... Args> | |
| MGIS_VISIBILITY_LOCAL void | raise (Args &&...) |
a small wrapper used to build the exception outside the throw statement. As most exception's classes constructors may throw, this avoids undefined behaviour as reported by the cert-err60-cpp warning of clang-tidy (thrown exception type is not nothrow copy constructible). | |
| template<typename Exception = std::runtime_error> | |
| MGIS_VISIBILITY_LOCAL void | raise_if (const bool) |
raise an exception if the first argument is true. | |
| template<typename Exception = std::runtime_error, typename... Args> | |
| MGIS_VISIBILITY_LOCAL void | raise_if (const bool, Args &&...) |
raise an exception if the first argument is true. | |
| template<typename Exception > | |
| void | raise () |
a small wrapper used to build the exception outside the throw statement. As most exception's classes constructors may throw, this avoids undefined behaviour as reported by the cert-err60-cpp warning of clang-tidy (thrown exception type is not nothrow copy constructible). | |
| template<typename Exception , typename... Args> | |
| void | raise (Args &&... a) |
| template<typename Exception > | |
| void | raise_if (const bool c) |
raise an exception if the first argument is true. | |
| template<typename Exception , typename... Args> | |
| void | raise_if (const bool c, Args &&... a) |
| template<typename Type , typename... ArgumentsTypes> requires std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::optional< Type > | construct (Context &, ArgumentsTypes &&...) noexcept |
| try to build an object of the given type. | |
| template<typename Type , typename... ArgumentsTypes> requires std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::unique_ptr< Type > | make_unique (Context &, ArgumentsTypes &&...) noexcept |
| try to build a unique pointer holding the given type. | |
| template<typename BaseType , typename Type , typename... ArgumentsTypes> requires std::is_base_of_v<BaseType, Type> && std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::unique_ptr< BaseType > | make_unique_as (Context &, ArgumentsTypes &&...) noexcept |
| try to build a unique pointer of a base type holding the given type. | |
| template<typename Type , typename... ArgumentsTypes> requires std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::shared_ptr< Type > | make_shared (Context &, ArgumentsTypes &&...) noexcept |
| try to build a shared pointer holding the given type. | |
| template<typename BaseType , typename Type , typename... ArgumentsTypes> requires std::is_base_of_v<BaseType, Type> && std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::shared_ptr< BaseType > | make_shared_as (Context &, ArgumentsTypes &&...) noexcept |
| try to build a shared pointer of a base type holding the given type. | |
|
template<typename Type , typename... ArgumentsTypes> requires std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::optional< Type > | construct (Context &ctx, ArgumentsTypes &&...args) noexcept |
|
template<typename Type , typename... ArgumentsTypes> requires std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::unique_ptr< Type > | make_unique (Context &ctx, ArgumentsTypes &&...args) noexcept |
|
template<typename BaseType , typename Type , typename... ArgumentsTypes> requires std::is_base_of_v<BaseType, Type> && std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::unique_ptr< BaseType > | make_unique_as (Context &ctx, ArgumentsTypes &&...args) noexcept |
|
template<typename Type , typename... ArgumentsTypes> requires std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::shared_ptr< Type > | make_shared (Context &ctx, ArgumentsTypes &&...args) noexcept |
|
template<typename BaseType , typename Type , typename... ArgumentsTypes> requires std::is_base_of_v<BaseType, Type> && std::is_constructible_v<std::remove_const_t<Type>, ArgumentsTypes...> | |
| std::shared_ptr< BaseType > | make_shared_as (Context &ctx, ArgumentsTypes &&...args) noexcept |
| template<typename F , typename... ArgumentsTypes> | |
| invoke_result_t< F, ArgumentsTypes... > | invoke (Context &, F &&, ArgumentsTypes &&...) noexcept |
| invoke the given callable object param[inout] ctx: execution context | |
| template<typename F , typename... ArgumentsTypes> | |
| invoke_result_t< F, ArgumentsTypes... > | invokeCheckErrno (Context &, F &&, ArgumentsTypes &&...) noexcept |
| template<typename F , typename... ArgumentsTypes> | |
| invoke_result_t< F, ArgumentsTypes... > | invokeCheckErrno (Context &ctx, F &&f, ArgumentsTypes &&...args) noexcept |
| template<typename F , typename... ArgumentsTypes> | |
| invoke_result_t< F, ArgumentsTypes... > | invoke (Context &ctx, F &&f, ArgumentsTypes &&...args) noexcept |
| template<typename ValueType > | |
| void | swap (OptionalReference< ValueType > &p1, OptionalReference< ValueType > &p2) noexcept |
| template<typename ValueType > | |
| constexpr OptionalReference< ValueType > | make_optional_reference (ValueType &p) noexcept |
| template<typename ValueType > | |
| constexpr OptionalReference< ValueType > | make_optional_reference (ValueType *p) noexcept |
| template<typename ValueType1 , typename ValueType2 > | |
| constexpr bool | operator== (OptionalReference< ValueType1 > p1, OptionalReference< ValueType2 > p2) |
| template<typename ValueType1 , typename ValueType2 > | |
| constexpr bool | operator!= (OptionalReference< ValueType1 > p1, OptionalReference< ValueType2 > p2) |
| template<typename ValueType > | |
| constexpr bool | operator== (OptionalReference< ValueType > p, std::nullptr_t) noexcept |
| template<typename ValueType > | |
| constexpr bool | operator== (std::nullptr_t, OptionalReference< ValueType > p) noexcept |
| template<typename ValueType > | |
| constexpr bool | operator!= (OptionalReference< ValueType > p, std::nullptr_t) noexcept |
| template<typename ValueType > | |
| constexpr bool | operator!= (std::nullptr_t, OptionalReference< ValueType > p) noexcept |
| template<typename ValueType > | |
| constexpr bool | isInvalid (const OptionalReference< ValueType > &p) noexcept |
| MGIS_EXPORT VerbosityLevel & | getDefaultVerbosityLevel () noexcept |
| MGIS_EXPORT void | setDefaultVerbosityLevel (const VerbosityLevel) noexcept |
| change the default level of verbosity | |
| MGIS_EXPORT bool | setDefaultVerbosityLevel (Context &, std::string_view) noexcept |
| change the default level of verbosity | |
| MGIS_EXPORT std::optional< VerbosityLevel > | convertToVerbosityLevel (Context &, std::string_view) noexcept |
Variables | |
| constexpr auto | unsafe = attributes::UnsafeAttribute{} |
| constexpr auto | throwing = attributes::ThrowingAttribute<true>{} |
| constexpr auto | not_throwing = attributes::ThrowingAttribute<false>{} |
| constexpr auto | aborting = attributes::AbortingAttribute<true>{} |
| constexpr size_type | dynamic_extent |
| a constant whose role is similar to std::dynamic_extent | |
| template<typename Type , typename... Args> | |
| constexpr auto | is_check_preconditions_callable |
| constexpr auto | no_precondition_check = PreconditionsCheck<false>{} |
| constexpr auto | preconditions_check = PreconditionsCheck<true>{} |
the namespace mgis encloses all the MGIS project.
|
strong |
list of available colors for output stream
|
strong |
|
constexprnoexcept |
| [in] | o | objects tested |
|
constexprnoexcept |
| [in] | o | objects tested |
|
noexcept |
try to build an object of the given type.
The constructor of the object may throw. In this case, the exception thrown is catched and the information hold by the exception is added to the list of registered error messages.
| Type | type to build. |
| ArgumentsTypes | types of the arguments passed to the constructor. |
| [in,out] | ctx | execution context |
| [in] | args | arguments passed to the constructor |
|
noexcept |
| [in] | ctx | execution context |
| [in] | l | string representation of the verbose level |
|
noexcept |
print message for debugging
| Args | types of the arguments |
| [in] | args | streamed object |
|
noexcept |
disable the default log stream
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
invoke the given callable object param[inout] ctx: execution context
| [in] | F | callable object |
| [in] | args | arguments |
|
constexprnoexcept |
| [in] | b | value |
|
constexprnoexcept |
| [in] | o | optional value |
|
constexprnoexcept |
| [in] | p | pointer |
|
constexprnoexcept |
| [in] | p | pointer |
|
constexprnoexcept |
| [in] | p | pointer |
|
constexprnoexcept |
| [in] | o | object tested |
|
noexcept |
try to build a shared pointer holding the given type.
The constructor of the object may throw. In this case, the exception thrown is catched and the information hold by the exception is added to the list of registered error messages.
| Type | type to build. |
| ArgumentsTypes | types of the arguments passed to the constructor. |
| [in,out] | ctx | execution context |
| [in] | args | arguments passed to the constructor |
|
noexcept |
try to build a shared pointer of a base type holding the given type.
The constructor of the object may throw. In this case, the exception thrown is catched and the information hold by the exception is added to the list of registered error messages.
| BaseType | base type used to store the build object. |
| Type | type to build. |
| ArgumentsTypes | types of the arguments passed to the constructor. |
| [in,out] | ctx | execution context |
| [in] | args | arguments passed to the constructor |
|
noexcept |
try to build a unique pointer holding the given type.
The constructor of the object may throw. In this case, the exception thrown is catched and the information hold by the exception is added to the list of registered error messages.
| BaseType | base type used to store the build object. |
| Type | type to build. |
| ArgumentsTypes | types of the arguments passed to the constructor. |
| [in,out] | ctx | execution context |
| [in] | args | arguments passed to the constructor |
|
noexcept |
try to build a unique pointer of a base type holding the given type.
The constructor of the object may throw. In this case, the exception thrown is catched and the information hold by the exception is added to the list of registered error messages.
| BaseType | base type used to store the build object. |
| Type | type to build. |
| ArgumentsTypes | types of the arguments passed to the constructor. |
| [in,out] | ctx | execution context |
| [in] | args | arguments passed to the constructor |
|
inline |
a small wrapper used to build the exception outside the throw statement. As most exception's classes constructors may throw, this avoids undefined behaviour as reported by the cert-err60-cpp warning of clang-tidy (thrown exception type is not nothrow copy constructible).
| Exception | type of the exception to be thrown. |
|
inline |
a small wrapper used to build the exception outside the throw statement. As most exception's classes constructors may throw, this avoids undefined behaviour as reported by the cert-err60-cpp warning of clang-tidy (thrown exception type is not nothrow copy constructible).
| Exception | type of the exception to be thrown. |
|
inline |
a small wrapper used to build the exception outside the throw statement. As most exception's classes constructors may throw, this avoids undefined behaviour as reported by the cert-err60-cpp warning of clang-tidy (thrown exception type is not nothrow copy constructible).
| Exception | type of the exception to be thrown. |
| Args | type of the arguments passed to the exception' constructor. |
| [in] | a | arguments passed to the exception' constructor. |
|
inline |
raise an exception if the first argument is true.
| Exception | type of the exception to be thrown. |
| [in] | b | condition to be checked. If true, an exception is thrown. |
|
inline |
raise an exception if the first argument is true.
| Exception | type of the exception to be thrown. |
| [in] | b | condition to be checked. If true, an exception is thrown. |
|
inline |
raise an exception if the first argument is true.
| Exception | type of the exception to be thrown. |
| Args | type of the arguments passed to the exception' constructor. |
| [in] | b | condition to be checked. If true, an exception is thrown. |
| [in] | a | arguments passed to the exception' constructor. |
|
noexcept |
a custom Lippincott-like function that extract error messages from an exception
| [out] | e | error back trace handler |
|
noexcept |
a custom Lippincott-like function that extract error messages from an exception
| [out] | e | error back trace handler |
|
noexcept |
reset the color of the output
| [out] | out | output stream |
| [in] | l | verbosity level |
|
noexcept |
set the default log stream from an exisiting output stream
| [in,out] | os | output stream |
|
noexcept |
set the default log stream from an exisiting output stream
| [in,out] | os | output stream |
resetDefaultLogStream is called
|
noexcept |
set the default log stream as a file.
| [in] | n | file name |
disableDefaultLogStream except on the root process
|
noexcept |
change the default level of verbosity
| [in] | l | the new verbose level |
|
noexcept |
change the default level of verbosity
| [in] | ctx | execution context |
| [in] | l | the new verbose level |
| MGIS_EXPORT void mgis::setExceptionHandler | ( | ExceptionHandler | ) |
set an exception handler
| [in] | h | exception handler |
|
noexcept |
change the color of the output for warnings for red
| [out] | out | output stream |
| [in] | c | color |
|
noexcept |
print a warning message
| Args | types of the arguments |
| [in] | args | streamed object |
|
inlineconstexpr |
a constant whose role is similar to std::dynamic_extent
|
inlineconstexpr |