diff --git a/annotated.html b/annotated.html index dc4ef9e06..9a6ef0ada 100644 --- a/annotated.html +++ b/annotated.html @@ -3,7 +3,7 @@ - + stdex: Class List @@ -30,7 +30,7 @@ - + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
stdex::errno_error Member List
+
+
+ +

This is the complete list of members for stdex::errno_error, including all inherited members.

+ + + + + + + +
errno_error(errno_t num, const std::string &msg)stdex::errno_errorinline
errno_error(errno_t num, const char *msg=nullptr)stdex::errno_errorinline
errno_error(const std::string &msg)stdex::errno_errorinline
errno_error(const char *msg=nullptr)stdex::errno_errorinline
m_numstdex::errno_errorprotected
number() conststdex::errno_errorinline
+ + + + diff --git a/classstdex_1_1errno__error.html b/classstdex_1_1errno__error.html new file mode 100644 index 000000000..e59f975c7 --- /dev/null +++ b/classstdex_1_1errno__error.html @@ -0,0 +1,292 @@ + + + + + + + +stdex: stdex::errno_error Class Reference + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
+Public Member Functions | +Protected Attributes | +List of all members
+
stdex::errno_error Class Reference
+
+
+ +

Standard C runtime library error. + More...

+ +

#include <stdex/errno.h>

+
+Inheritance diagram for stdex::errno_error:
+
+
+ +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 errno_error (errno_t num, const std::string &msg)
 Constructs an exception.
 
 errno_error (errno_t num, const char *msg=nullptr)
 Constructs an exception.
 
 errno_error (const std::string &msg)
 Constructs an exception using GetLastError()
 
 errno_error (const char *msg=nullptr)
 Constructs an exception using GetLastError()
 
+errno_t number () const
 Returns the error number.
 
+ + + + +

+Protected Attributes

+errno_t m_num
 Numeric error code.
 
+

Detailed Description

+

Standard C runtime library error.

+

Constructor & Destructor Documentation

+ +

◆ errno_error() [1/4]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stdex::errno_error::errno_error (errno_t num,
const std::string & msg 
)
+
+inline
+
+ +

Constructs an exception.

+
Parameters
+ + + +
[in]numNumeric error code
[in]msgError message
+
+
+ +
+
+ +

◆ errno_error() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stdex::errno_error::errno_error (errno_t num,
const char * msg = nullptr 
)
+
+inline
+
+ +

Constructs an exception.

+
Parameters
+ + + +
[in]numNumeric error code
[in]msgError message
+
+
+ +
+
+ +

◆ errno_error() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
stdex::errno_error::errno_error (const std::string & msg)
+
+inline
+
+ +

Constructs an exception using GetLastError()

+
Parameters
+ + +
[in]msgError message
+
+
+ +
+
+ +

◆ errno_error() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
stdex::errno_error::errno_error (const char * msg = nullptr)
+
+inline
+
+ +

Constructs an exception using GetLastError()

+
Parameters
+ + +
[in]msgError message
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classstdex_1_1errno__error.png b/classstdex_1_1errno__error.png new file mode 100644 index 000000000..f485bc337 Binary files /dev/null and b/classstdex_1_1errno__error.png differ diff --git a/classstdex_1_1global__progress-members.html b/classstdex_1_1global__progress-members.html new file mode 100644 index 000000000..4f9c536d1 --- /dev/null +++ b/classstdex_1_1global__progress-members.html @@ -0,0 +1,103 @@ + + + + + + + +stdex: Member List + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
stdex::global_progress< T > Member List
+
+
+ +

This is the complete list of members for stdex::global_progress< T >, including all inherited members.

+ + + + + + + + + + + + + + + +
attach(progress< T > *host)stdex::global_progress< T >inline
cancel()stdex::global_progress< T >inlinevirtual
detach()stdex::global_progress< T >inline
global_progress(progress< T > *host=NULL)stdex::global_progress< T >inline
m_glob (defined in stdex::global_progress< T >)stdex::global_progress< T >protected
m_host (defined in stdex::global_progress< T >)stdex::global_progress< T >protected
m_kaz (defined in stdex::global_progress< T >)stdex::global_progress< T >protected
m_odsek (defined in stdex::global_progress< T >)stdex::global_progress< T >protected
set(T value)stdex::global_progress< T >inlinevirtual
set_global_range(T start, T end)stdex::global_progress< T >inline
set_range(T start, T end)stdex::global_progress< T >inlinevirtual
set_section_range(T start, T end)stdex::global_progress< T >inline
set_text(const char *msg)stdex::global_progress< T >inlinevirtual
show(bool show=true)stdex::global_progress< T >inlinevirtual
+ + + + diff --git a/classstdex_1_1global__progress.html b/classstdex_1_1global__progress.html new file mode 100644 index 000000000..7ac392b3f --- /dev/null +++ b/classstdex_1_1global__progress.html @@ -0,0 +1,567 @@ + + + + + + + +stdex: stdex::global_progress< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
+Public Member Functions | +Protected Attributes | +List of all members
+
stdex::global_progress< T > Class Template Reference
+
+
+ +

Global progress indicator base class. + More...

+ +

#include <stdex/progress.h>

+
+Inheritance diagram for stdex::global_progress< T >:
+
+
+ + +stdex::progress< T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 global_progress (progress< T > *host=NULL)
 Constructs a progress indicator.
 
void attach (progress< T > *host)
 Attach to a host progress indicator.
 
progress< T > * detach ()
 Detach host progress indicator.
 
void set_global_range (T start, T end)
 Set global extend of the progress indicator.
 
void set_section_range (T start, T end)
 Set section extend of the progress indicator.
 
virtual void set_text (const char *msg)
 Set progress indicator text.
 
virtual void set_range (T start, T end)
 Set local extend of the progress indicator.
 
virtual void set (T value)
 Set local current progress.
 
virtual void show (bool show=true)
 Show or hide progress.
 
virtual bool cancel ()
 Query whether user requested abort.
 
virtual void set_text (const char *msg)
 Set progress indicator text.
 
virtual void set_range (T start, T end)
 Set progress range extent.
 
virtual void set (T value)
 Set current progress.
 
virtual void show (bool show=true)
 Show or hide progress.
 
virtual bool cancel ()
 Query whether user requested abort.
 
+ + + + + + + + + +

+Protected Attributes

+progressm_host
 
+interval< T > m_kaz
 
+interval< T > m_glob
 
+interval< T > m_odsek
 
+

Detailed Description

+
template<class T>
+class stdex::global_progress< T >

Global progress indicator base class.

+

Use to report progress of a phase or section as a part of a whole progress.

+

Constructor & Destructor Documentation

+ +

◆ global_progress()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
stdex::global_progress< T >::global_progress (progress< T > * host = NULL)
+
+inline
+
+ +

Constructs a progress indicator.

+
Parameters
+ + +
[in]hostHost progress indicator
+
+
+ +
+
+

Member Function Documentation

+ +

◆ attach()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
void stdex::global_progress< T >::attach (progress< T > * host)
+
+inline
+
+ +

Attach to a host progress indicator.

+
Parameters
+ + +
[in]hostHost progress indicator
+
+
+ +
+
+ +

◆ cancel()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + +
virtual bool stdex::global_progress< T >::cancel ()
+
+inlinevirtual
+
+ +

Query whether user requested abort.

+ +

Reimplemented from stdex::progress< T >.

+ +
+
+ +

◆ detach()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + +
progress< T > * stdex::global_progress< T >::detach ()
+
+inline
+
+ +

Detach host progress indicator.

+
Returns
Old host progress indicator
+ +
+
+ +

◆ set()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::global_progress< T >::set (value)
+
+inlinevirtual
+
+ +

Set local current progress.

+
Parameters
+ + +
[in]valueCurrent value of the progress. Must be between start and end parameters provided in set_range() call.
+
+
+ +

Reimplemented from stdex::progress< T >.

+ +
+
+ +

◆ set_global_range()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stdex::global_progress< T >::set_global_range (start,
end 
)
+
+inline
+
+ +

Set global extend of the progress indicator.

+
Parameters
+ + + +
[in]startMinimum value of the progress
[in]endMaximum value of the progress
+
+
+ +
+
+ +

◆ set_range()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stdex::global_progress< T >::set_range (start,
end 
)
+
+inlinevirtual
+
+ +

Set local extend of the progress indicator.

+
Parameters
+ + + +
[in]startMinimum value of the progress
[in]endMaximum value of the progress
+
+
+ +

Reimplemented from stdex::progress< T >.

+ +
+
+ +

◆ set_section_range()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stdex::global_progress< T >::set_section_range (start,
end 
)
+
+inline
+
+ +

Set section extend of the progress indicator.

+
Parameters
+ + + +
[in]startMinimum value of the progress
[in]endMaximum value of the progress
+
+
+ +
+
+ +

◆ set_text()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::global_progress< T >::set_text (const char * msg)
+
+inlinevirtual
+
+ +

Set progress indicator text.

+
Parameters
+ + +
[in]msgText to display
+
+
+ +

Reimplemented from stdex::progress< T >.

+ +
+
+ +

◆ show()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::global_progress< T >::show (bool show = true)
+
+inlinevirtual
+
+ +

Show or hide progress.

+
Parameters
+ + +
[in]showShows or hides progress indicator
+
+
+ +

Reimplemented from stdex::progress< T >.

+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classstdex_1_1global__progress.png b/classstdex_1_1global__progress.png new file mode 100644 index 000000000..4eea192c4 Binary files /dev/null and b/classstdex_1_1global__progress.png differ diff --git a/classstdex_1_1hex__dec-members.html b/classstdex_1_1hex__dec-members.html index c8801632c..c83b379e6 100644 --- a/classstdex_1_1hex__dec-members.html +++ b/classstdex_1_1hex__dec-members.html @@ -3,7 +3,7 @@ - + stdex: Member List @@ -30,7 +30,7 @@ - + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
stdex::lazy_progress< T > Member List
+
+
+ +

This is the complete list of members for stdex::lazy_progress< T >, including all inherited members.

+ + + + + + + + + + + + + +
cancel()stdex::progress< T >inlinevirtual
do_set()stdex::lazy_progress< T >inlineprotectedvirtual
lazy_progress(const std::chrono::nanoseconds &timeout=std::chrono::nanoseconds(500000))stdex::lazy_progress< T >inline
m_end (defined in stdex::lazy_progress< T >)stdex::lazy_progress< T >protected
m_last (defined in stdex::lazy_progress< T >)stdex::lazy_progress< T >protected
m_start (defined in stdex::lazy_progress< T >)stdex::lazy_progress< T >protected
m_timeout (defined in stdex::lazy_progress< T >)stdex::lazy_progress< T >protected
m_value (defined in stdex::lazy_progress< T >)stdex::lazy_progress< T >protected
set(T value)stdex::lazy_progress< T >inlinevirtual
set_range(T start, T end)stdex::lazy_progress< T >inlinevirtual
set_text(const char *msg)stdex::progress< T >inlinevirtual
show(bool show=true)stdex::progress< T >inlinevirtual
+ + + + diff --git a/classstdex_1_1lazy__progress.html b/classstdex_1_1lazy__progress.html new file mode 100644 index 000000000..edbd8418d --- /dev/null +++ b/classstdex_1_1lazy__progress.html @@ -0,0 +1,291 @@ + + + + + + + +stdex: stdex::lazy_progress< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
+Public Member Functions | +Protected Member Functions | +Protected Attributes | +List of all members
+
stdex::lazy_progress< T > Class Template Reference
+
+
+ +

Lazy progress indicator base class. + More...

+ +

#include <stdex/progress.h>

+
+Inheritance diagram for stdex::lazy_progress< T >:
+
+
+ + +stdex::progress< T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 lazy_progress (const std::chrono::nanoseconds &timeout=std::chrono::nanoseconds(500000))
 Constructs a lazy progress indicator.
 
virtual void set_range (T start, T end)
 Set progress range extent.
 
virtual void set (T value)
 Set current progress.
 
- Public Member Functions inherited from stdex::progress< T >
virtual void set_text (const char *msg)
 Set progress indicator text.
 
virtual void set_range (T start, T end)
 Set progress range extent.
 
virtual void set (T value)
 Set current progress.
 
virtual void show (bool show=true)
 Show or hide progress.
 
virtual bool cancel ()
 Query whether user requested abort.
 
+ + + + +

+Protected Member Functions

+virtual void do_set ()
 Called when progress reporting is due. Should override this method to implement actual progress refresh.
 
+ + + + + + + + + + + +

+Protected Attributes

+std::chrono::nanoseconds m_timeout
 
+std::chrono::steady_clock::time_point m_last
 
+T m_start
 
+T m_end
 
+T m_value
 
+

Detailed Description

+
template<class T>
+class stdex::lazy_progress< T >

Lazy progress indicator base class.

+

Use with expensive progress reporting to suppress progress indication for a period of time.

+

Constructor & Destructor Documentation

+ +

◆ lazy_progress()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
stdex::lazy_progress< T >::lazy_progress (const std::chrono::nanoseconds & timeout = std::chrono::nanoseconds(500000))
+
+inline
+
+ +

Constructs a lazy progress indicator.

+
Parameters
+ + +
[in]timeoutTimeout to wait before forwarding progress
+
+
+ +
+
+

Member Function Documentation

+ +

◆ set()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::lazy_progress< T >::set (value)
+
+inlinevirtual
+
+ +

Set current progress.

+
Parameters
+ + +
[in]valueCurrent value of the progress. Must be between start and end parameters provided in set_range() call.
+
+
+ +

Reimplemented from stdex::progress< T >.

+ +
+
+ +

◆ set_range()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stdex::lazy_progress< T >::set_range (start,
end 
)
+
+inlinevirtual
+
+ +

Set progress range extent.

+
Parameters
+ + + +
[in]startMinimum value of the progress
[in]endMaximum value of the progress
+
+
+ +

Reimplemented from stdex::progress< T >.

+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classstdex_1_1lazy__progress.png b/classstdex_1_1lazy__progress.png new file mode 100644 index 000000000..9c891a108 Binary files /dev/null and b/classstdex_1_1lazy__progress.png differ diff --git a/classstdex_1_1progress-members.html b/classstdex_1_1progress-members.html new file mode 100644 index 000000000..4d5a4e402 --- /dev/null +++ b/classstdex_1_1progress-members.html @@ -0,0 +1,94 @@ + + + + + + + +stdex: Member List + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
stdex::progress< T > Member List
+
+
+ +

This is the complete list of members for stdex::progress< T >, including all inherited members.

+ + + + + + +
cancel()stdex::progress< T >inlinevirtual
set(T value)stdex::progress< T >inlinevirtual
set_range(T start, T end)stdex::progress< T >inlinevirtual
set_text(const char *msg)stdex::progress< T >inlinevirtual
show(bool show=true)stdex::progress< T >inlinevirtual
+ + + + diff --git a/classstdex_1_1progress.html b/classstdex_1_1progress.html new file mode 100644 index 000000000..ab66a2043 --- /dev/null +++ b/classstdex_1_1progress.html @@ -0,0 +1,324 @@ + + + + + + + +stdex: stdex::progress< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
+Public Member Functions | +List of all members
+
stdex::progress< T > Class Template Reference
+
+
+ +

Progress indicator base class. + More...

+ +

#include <stdex/progress.h>

+
+Inheritance diagram for stdex::progress< T >:
+
+
+ + +stdex::global_progress< T > +stdex::lazy_progress< T > + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual void set_text (const char *msg)
 Set progress indicator text.
 
virtual void set_range (T start, T end)
 Set progress range extent.
 
virtual void set (T value)
 Set current progress.
 
virtual void show (bool show=true)
 Show or hide progress.
 
virtual bool cancel ()
 Query whether user requested abort.
 
+

Detailed Description

+
template<class T>
+class stdex::progress< T >

Progress indicator base class.

+

Member Function Documentation

+ +

◆ cancel()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + +
virtual bool stdex::progress< T >::cancel ()
+
+inlinevirtual
+
+ +

Query whether user requested abort.

+ +

Reimplemented in stdex::global_progress< T >.

+ +
+
+ +

◆ set()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::progress< T >::set (value)
+
+inlinevirtual
+
+ +

Set current progress.

+
Parameters
+ + +
[in]valueCurrent value of the progress. Must be between start and end parameters provided in set_range() call.
+
+
+ +

Reimplemented in stdex::lazy_progress< T >, and stdex::global_progress< T >.

+ +
+
+ +

◆ set_range()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stdex::progress< T >::set_range (start,
end 
)
+
+inlinevirtual
+
+ +

Set progress range extent.

+
Parameters
+ + + +
[in]startMinimum value of the progress
[in]endMaximum value of the progress
+
+
+ +

Reimplemented in stdex::lazy_progress< T >, and stdex::global_progress< T >.

+ +
+
+ +

◆ set_text()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::progress< T >::set_text (const char * msg)
+
+inlinevirtual
+
+ +

Set progress indicator text.

+
Parameters
+ + +
[in]msgText to display
+
+
+ +

Reimplemented in stdex::global_progress< T >.

+ +
+
+ +

◆ show()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
virtual void stdex::progress< T >::show (bool show = true)
+
+inlinevirtual
+
+ +

Show or hide progress.

+
Parameters
+ + +
[in]showShows or hides progress indicator
+
+
+ +

Reimplemented in stdex::global_progress< T >.

+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classstdex_1_1progress.png b/classstdex_1_1progress.png new file mode 100644 index 000000000..8cbf839c2 Binary files /dev/null and b/classstdex_1_1progress.png differ diff --git a/classstdex_1_1user__cancelled-members.html b/classstdex_1_1user__cancelled-members.html new file mode 100644 index 000000000..b352ebf5c --- /dev/null +++ b/classstdex_1_1user__cancelled-members.html @@ -0,0 +1,90 @@ + + + + + + + +stdex: Member List + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
stdex::user_cancelled Member List
+
+
+ +

This is the complete list of members for stdex::user_cancelled, including all inherited members.

+ + +
user_cancelled(const char *msg=nullptr)stdex::user_cancelledinline
+ + + + diff --git a/classstdex_1_1user__cancelled.html b/classstdex_1_1user__cancelled.html new file mode 100644 index 000000000..5c03c7aab --- /dev/null +++ b/classstdex_1_1user__cancelled.html @@ -0,0 +1,147 @@ + + + + + + + +stdex: stdex::user_cancelled Class Reference + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
+Public Member Functions | +List of all members
+
stdex::user_cancelled Class Reference
+
+
+ +

User cancelled exception. + More...

+ +

#include <stdex/exception.h>

+
+Inheritance diagram for stdex::user_cancelled:
+
+
+ +
+ + + + + +

+Public Member Functions

 user_cancelled (const char *msg=nullptr)
 Constructs an exception.
 
+

Detailed Description

+

User cancelled exception.

+

Constructor & Destructor Documentation

+ +

◆ user_cancelled()

+ +
+
+ + + + + +
+ + + + + + + + +
stdex::user_cancelled::user_cancelled (const char * msg = nullptr)
+
+inline
+
+ +

Constructs an exception.

+
Parameters
+ + +
[in]msgError message
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classstdex_1_1user__cancelled.png b/classstdex_1_1user__cancelled.png new file mode 100644 index 000000000..ffb5ebb8c Binary files /dev/null and b/classstdex_1_1user__cancelled.png differ diff --git a/classstdex_1_1vector__queue-members.html b/classstdex_1_1vector__queue-members.html index 1139dbb6f..a6dbe3db3 100644 --- a/classstdex_1_1vector__queue-members.html +++ b/classstdex_1_1vector__queue-members.html @@ -3,7 +3,7 @@ - + stdex: Member List @@ -30,7 +30,7 @@ - + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
errno.h
+
+
+
1/*
+
2 SPDX-License-Identifier: MIT
+
3 Copyright © 2023 Amebis
+
4*/
+
5
+
6#pragma once
+
7
+
8#include "sal.h"
+
9#include <stdexcept>
+
10#include <cstring>
+
11
+
12namespace stdex
+
13{
+
17 class errno_error : public std::runtime_error
+
18 {
+
19 public:
+
26 errno_error(_In_ errno_t num, _In_ const std::string& msg) :
+
27 m_num(num),
+
28 runtime_error(msg)
+
29 {
+
30 }
+
31
+
38 errno_error(_In_ errno_t num, _In_opt_z_ const char *msg = nullptr) :
+
39 m_num(num),
+
40 runtime_error(msg)
+
41 {
+
42 }
+
43
+
49 errno_error(_In_ const std::string& msg) :
+
50 m_num(errno),
+
51 runtime_error(msg)
+
52 {
+
53 }
+
54
+
60 errno_error(_In_opt_z_ const char *msg = nullptr) :
+
61 m_num(errno),
+
62 runtime_error(msg)
+
63 {
+
64 }
+
65
+
69 errno_t number() const
+
70 {
+
71 return m_num;
+
72 }
+
73
+
74 protected:
+
75 errno_t m_num;
+
76 };
+
77}
+
Standard C runtime library error.
Definition: errno.h:18
+
errno_t m_num
Numeric error code.
Definition: errno.h:75
+
errno_error(errno_t num, const std::string &msg)
Constructs an exception.
Definition: errno.h:26
+
errno_t number() const
Returns the error number.
Definition: errno.h:69
+
errno_error(const std::string &msg)
Constructs an exception using GetLastError()
Definition: errno.h:49
+
errno_error(const char *msg=nullptr)
Constructs an exception using GetLastError()
Definition: errno.h:60
+
errno_error(errno_t num, const char *msg=nullptr)
Constructs an exception.
Definition: errno.h:38
+
+ + + + diff --git a/exception_8h_source.html b/exception_8h_source.html new file mode 100644 index 000000000..50c67e7b7 --- /dev/null +++ b/exception_8h_source.html @@ -0,0 +1,108 @@ + + + + + + + +stdex: include/stdex/exception.h Source File + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
exception.h
+
+
+
1/*
+
2 SPDX-License-Identifier: MIT
+
3 Copyright © 2023 Amebis
+
4*/
+
5
+
6#pragma once
+
7
+
8#include "sal.h"
+
9#include <exception>
+
10
+
11namespace stdex
+
12{
+
16 class user_cancelled : public std::exception
+
17 {
+
18 public:
+
24 user_cancelled(_In_opt_z_ const char *msg = nullptr) : exception(msg)
+
25 {
+
26 }
+
27 };
+
28}
+
User cancelled exception.
Definition: exception.h:17
+
user_cancelled(const char *msg=nullptr)
Constructs an exception.
Definition: exception.h:24
+
+ + + + diff --git a/files.html b/files.html index 42daaeaf7..7dab3dfc5 100644 --- a/files.html +++ b/files.html @@ -3,7 +3,7 @@ - + stdex: File List @@ -30,7 +30,7 @@ - + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Class Hierarchy
+
+
+
This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 12]
+ + + + + + + + + + + + + + +
 Cstdex::base64_decBase64 decoding session
 Cstdex::base64_encBase64 encoding session
 Cstd::exception
 Cstdex::user_cancelledUser cancelled exception
 Cstdex::hex_decHexadecimal decoding session
 Cstdex::hex_encHexadecimal encoding session
 Cstdex::interval< T >Numerical interval
 Cstdex::progress< T >Progress indicator base class
 Cstdex::global_progress< T >Global progress indicator base class
 Cstdex::lazy_progress< T >Lazy progress indicator base class
 Cstdex::idrec::record< T, T_ID, ID, T_SIZE, ALIGN >Helper class for read/write of records to/from memory
 Cstd::runtime_error
 Cstdex::errno_errorStandard C runtime library error
 Cstdex::vector_queue< T >Helper class to allow limited size FIFO queues implemented as vector of elements
+
+
+ + + + diff --git a/idrec_8h_source.html b/idrec_8h_source.html index f5c07552a..44a6e7e70 100644 --- a/idrec_8h_source.html +++ b/idrec_8h_source.html @@ -3,7 +3,7 @@ - + stdex: include/stdex/idrec.h Source File @@ -30,7 +30,7 @@ - + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
interval.h
+
+
+
1/*
+
2 SPDX-License-Identifier: MIT
+
3 Copyright © 2023 Amebis
+
4*/
+
5
+
6#pragma once
+
7
+
8#include "sal.h"
+
9
+
10namespace stdex
+
11{
+
15 template <class T>
+
16 struct interval
+
17 {
+ +
19 T end;
+
20
+
24 inline interval() noexcept : start(1), end(0) {}
+
25
+
31 inline interval(_In_ T x) noexcept : start(x), end(x) {}
+
32
+
39 inline interval(_In_ T _start, _In_ T _end) noexcept : start(_start), end(_end) {}
+
40
+
46 inline T size() const { return start <= end ? end - start : 0; }
+
47
+
53 inline operator bool() const { return start <= end; }
+
54 };
+
55}
+
Numerical interval.
Definition: interval.h:17
+
interval(T x) noexcept
Constructs a zero-size interval.
Definition: interval.h:31
+
interval(T _start, T _end) noexcept
Constructs an interval.
Definition: interval.h:39
+
T size() const
Returns interval size.
Definition: interval.h:46
+
T end
interval end
Definition: interval.h:19
+
interval() noexcept
Constructs an invalid interval.
Definition: interval.h:24
+
T start
interval start
Definition: interval.h:18
+
+ + + + diff --git a/menudata.js b/menudata.js index 5a4461511..1330c9f03 100644 --- a/menudata.js +++ b/menudata.js @@ -27,6 +27,7 @@ var menudata={children:[ {text:"Classes",url:"annotated.html",children:[ {text:"Class List",url:"annotated.html"}, {text:"Class Index",url:"classes.html"}, +{text:"Class Hierarchy",url:"hierarchy.html"}, {text:"Class Members",url:"functions.html",children:[ {text:"All",url:"functions.html",children:[ {text:"a",url:"functions.html#index_a"}, @@ -35,8 +36,10 @@ var menudata={children:[ {text:"d",url:"functions.html#index_d"}, {text:"e",url:"functions.html#index_e"}, {text:"f",url:"functions.html#index_f"}, +{text:"g",url:"functions.html#index_g"}, {text:"h",url:"functions.html#index_h"}, {text:"i",url:"functions.html#index_i"}, +{text:"l",url:"functions.html#index_l"}, {text:"m",url:"functions.html#index_m"}, {text:"n",url:"functions.html#index_n"}, {text:"o",url:"functions.html#index_o"}, @@ -44,6 +47,7 @@ var menudata={children:[ {text:"r",url:"functions.html#index_r"}, {text:"s",url:"functions.html#index_s"}, {text:"t",url:"functions.html#index_t"}, +{text:"u",url:"functions.html#index_u"}, {text:"v",url:"functions.html#index_v"}, {text:"~",url:"functions.html#index__7E"}]}, {text:"Functions",url:"functions_func.html",children:[ @@ -53,13 +57,17 @@ var menudata={children:[ {text:"d",url:"functions_func.html#index_d"}, {text:"e",url:"functions_func.html#index_e"}, {text:"f",url:"functions_func.html#index_f"}, +{text:"g",url:"functions_func.html#index_g"}, {text:"h",url:"functions_func.html#index_h"}, {text:"i",url:"functions_func.html#index_i"}, +{text:"l",url:"functions_func.html#index_l"}, +{text:"n",url:"functions_func.html#index_n"}, {text:"o",url:"functions_func.html#index_o"}, {text:"p",url:"functions_func.html#index_p"}, {text:"r",url:"functions_func.html#index_r"}, {text:"s",url:"functions_func.html#index_s"}, {text:"t",url:"functions_func.html#index_t"}, +{text:"u",url:"functions_func.html#index_u"}, {text:"v",url:"functions_func.html#index_v"}, {text:"~",url:"functions_func.html#index__7E"}]}, {text:"Variables",url:"functions_vars.html"}, diff --git a/progress_8h_source.html b/progress_8h_source.html new file mode 100644 index 000000000..937dbb757 --- /dev/null +++ b/progress_8h_source.html @@ -0,0 +1,266 @@ + + + + + + + +stdex: include/stdex/progress.h Source File + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
progress.h
+
+
+
1/*
+
2 SPDX-License-Identifier: MIT
+
3 Copyright © 2023 Amebis
+
4*/
+
5
+
6#pragma once
+
7
+
8#include "sal.h"
+
9#include "interval.h"
+
10#include <chrono>
+
11
+
12namespace stdex
+
13{
+
17 template <class T>
+ +
19 {
+
20 public:
+
26 virtual void set_text(_In_z_ const char* msg)
+
27 {
+
28 msg;
+
29 }
+
30
+
37 virtual void set_range(_In_ T start, _In_ T end)
+
38 {
+
39 start; end;
+
40 }
+
41
+
47 virtual void set(_In_ T value)
+
48 {
+
49 value;
+
50 }
+
51
+
57 virtual void show(_In_ bool show = true)
+
58 {
+
59 show;
+
60 }
+
61
+
65 virtual bool cancel()
+
66 {
+
67 return false;
+
68 }
+
69 };
+
70
+
76 template <class T>
+
77 class lazy_progress : public progress<T>
+
78 {
+
79 public:
+
85 lazy_progress(_In_ const std::chrono::nanoseconds& timeout = std::chrono::nanoseconds(500000)) :
+
86 m_timeout(timeout),
+
87 m_start(0),
+
88 m_end(0),
+
89 m_value(-1)
+
90 {}
+
91
+
98 virtual void set_range(_In_ T start, _In_ T end)
+
99 {
+
100 m_start = start;
+
101 m_end = end;
+
102 }
+
103
+
109 virtual void set(_In_ T value)
+
110 {
+
111 if (value == m_start || value == m_end)
+
112 m_last = std::chrono::high_resolution_clock::now();
+
113 else if (value == m_value)
+
114 return;
+
115 else {
+
116 auto now = std::chrono::high_resolution_clock::now();
+
117 if (now - m_last < m_timeout)
+
118 return;
+
119 m_last = now;
+
120 }
+
121 m_value = value;
+
122 do_set();
+
123 }
+
124
+
125 protected:
+
129 virtual void do_set() {}
+
130
+
131 protected:
+
132 std::chrono::nanoseconds m_timeout;
+
133 std::chrono::steady_clock::time_point m_last;
+
134 T m_start, m_end, m_value;
+
135 };
+
136
+
142 template <class T>
+
143 class global_progress : public progress<T>
+
144 {
+
145 public:
+
151 global_progress(_In_opt_ progress<T>* host = NULL) : m_host(host)
+
152 {}
+
153
+
159 inline void attach(_In_opt_ progress<T>* host)
+
160 {
+
161 m_host = host;
+
162 }
+
163
+ +
170 {
+
171 progress* k = m_host;
+
172 m_host = NULL;
+
173 return k;
+
174 }
+
175
+
182 inline void set_global_range(_In_ T start, _In_ T end)
+
183 {
+
184 m_glob.start = start;
+
185 m_glob.end = end;
+
186 if (m_host)
+
187 m_host->set_range(m_glob.start, m_glob.end);
+
188 }
+
189
+
196 inline void set_section_range(_In_ T start, _In_ T end)
+
197 {
+
198 m_odsek.start = start;
+
199 m_odsek.end = end;
+
200 }
+
201
+
207 virtual void set_text(_In_ const char* msg)
+
208 {
+
209 if (m_host)
+
210 m_host->set_text(msg);
+
211 }
+
212
+
219 virtual void set_range(_In_ T start, _In_ T end)
+
220 {
+
221 m_kaz.start = start;
+
222 m_kaz.end = end;
+
223 }
+
224
+
230 virtual void set(_In_ T value)
+
231 {
+
232 if (m_host) {
+
233 T dolzina = m_kaz.size();
+
234 if (dolzina != 0) {
+
235 // TODO: Implement with muldiv.
+
236 m_host->set(((value - m_kaz.start) * m_odsek.size() / dolzina) + m_odsek.start);
+
237 }
+
238 }
+
239 }
+
240
+
246 virtual void show(_In_ bool show = true)
+
247 {
+
248 if (m_host)
+
249 m_host->show(show);
+
250 }
+
251
+
255 virtual bool cancel()
+
256 {
+
257 return m_host && m_host->cancel();
+
258 }
+
259
+
260 protected:
+
261 progress* m_host;
+
262 interval<T> m_kaz, m_glob, m_odsek;
+
263 };
+
264}
+
Global progress indicator base class.
Definition: progress.h:144
+
global_progress(progress< T > *host=NULL)
Constructs a progress indicator.
Definition: progress.h:151
+
void set_section_range(T start, T end)
Set section extend of the progress indicator.
Definition: progress.h:196
+
virtual void show(bool show=true)
Show or hide progress.
Definition: progress.h:246
+
virtual bool cancel()
Query whether user requested abort.
Definition: progress.h:255
+
virtual void set(T value)
Set local current progress.
Definition: progress.h:230
+
virtual void set_text(const char *msg)
Set progress indicator text.
Definition: progress.h:207
+
progress< T > * detach()
Detach host progress indicator.
Definition: progress.h:169
+
void set_global_range(T start, T end)
Set global extend of the progress indicator.
Definition: progress.h:182
+
void attach(progress< T > *host)
Attach to a host progress indicator.
Definition: progress.h:159
+
virtual void set_range(T start, T end)
Set local extend of the progress indicator.
Definition: progress.h:219
+
Lazy progress indicator base class.
Definition: progress.h:78
+
virtual void set(T value)
Set current progress.
Definition: progress.h:109
+
lazy_progress(const std::chrono::nanoseconds &timeout=std::chrono::nanoseconds(500000))
Constructs a lazy progress indicator.
Definition: progress.h:85
+
virtual void do_set()
Called when progress reporting is due. Should override this method to implement actual progress refre...
Definition: progress.h:129
+
virtual void set_range(T start, T end)
Set progress range extent.
Definition: progress.h:98
+
Progress indicator base class.
Definition: progress.h:19
+
virtual bool cancel()
Query whether user requested abort.
Definition: progress.h:65
+
virtual void set_text(const char *msg)
Set progress indicator text.
Definition: progress.h:26
+
virtual void show(bool show=true)
Show or hide progress.
Definition: progress.h:57
+
virtual void set(T value)
Set current progress.
Definition: progress.h:47
+
virtual void set_range(T start, T end)
Set progress range extent.
Definition: progress.h:37
+
Numerical interval.
Definition: interval.h:17
+
+ + + + diff --git a/sal_8h_source.html b/sal_8h_source.html index 65c5d93d7..fb540c94d 100644 --- a/sal_8h_source.html +++ b/sal_8h_source.html @@ -3,7 +3,7 @@ - + stdex: include/stdex/sal.h Source File @@ -30,7 +30,7 @@ - + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
string.h
+
+
+
1/*
+
2 SPDX-License-Identifier: MIT
+
3 Copyright © 2016-2022 Amebis
+
4*/
+
5
+
6#pragma once
+
7
+
8#include "sal.h"
+
9
+
10namespace stdex
+
11{
+
19 template <class T>
+
20 inline size_t strlen(_In_z_ const T* str)
+
21 {
+
22 size_t i;
+
23 for (i = 0; str[i]; i++);
+
24 return i;
+
25 }
+
26
+
36 template <class T>
+
37 inline const T* strnchr(
+
38 _In_reads_or_z_(count) const T* str,
+
39 _In_ T chr,
+
40 _In_ size_t count)
+
41 {
+
42 for (size_t i = 0; i < count && str[i]; i++)
+
43 if (str[i] == chr) return str + i;
+
44 return NULL;
+
45 }
+
46
+
56 template <class T>
+
57 inline size_t crlf2nl(_Out_writes_z_(strlen(src)) T* dst, _In_z_ const T* src)
+
58 {
+
59 size_t i, j;
+
60 for (i = j = 0; src[j];) {
+
61 if (src[j] != (T)'\r' || src[j + 1] != (T)'\n')
+
62 dst[i++] = src[j++];
+
63 else {
+
64 dst[i++] = (T)'\n';
+
65 j += 2;
+
66 }
+
67 }
+
68 dst[i] = (T)0;
+
69 return i;
+
70 }
+
71}
+
+ + + + diff --git a/structstdex_1_1interval-members.html b/structstdex_1_1interval-members.html new file mode 100644 index 000000000..f90eba9ca --- /dev/null +++ b/structstdex_1_1interval-members.html @@ -0,0 +1,96 @@ + + + + + + + +stdex: Member List + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
stdex::interval< T > Member List
+
+
+ +

This is the complete list of members for stdex::interval< T >, including all inherited members.

+ + + + + + + + +
endstdex::interval< T >
interval() noexceptstdex::interval< T >inline
interval(T x) noexceptstdex::interval< T >inline
interval(T _start, T _end) noexceptstdex::interval< T >inline
operator bool() conststdex::interval< T >inline
size() conststdex::interval< T >inline
startstdex::interval< T >
+ + + + diff --git a/structstdex_1_1interval.html b/structstdex_1_1interval.html new file mode 100644 index 000000000..4c3fbea32 --- /dev/null +++ b/structstdex_1_1interval.html @@ -0,0 +1,277 @@ + + + + + + + +stdex: stdex::interval< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + +
+
stdex +
+
Additional custom or not Standard C++ covered algorithms
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+
+
+Public Member Functions | +Public Attributes | +List of all members
+
stdex::interval< T > Struct Template Reference
+
+
+ +

Numerical interval. + More...

+ +

#include <stdex/interval.h>

+ + + + + + + + + + + + + + + + + +

+Public Member Functions

interval () noexcept
 Constructs an invalid interval.
 
 interval (T x) noexcept
 Constructs a zero-size interval.
 
 interval (T _start, T _end) noexcept
 Constructs an interval.
 
size () const
 Returns interval size.
 
 operator bool () const
 Is interval valid?
 
+ + + + + + + +

+Public Attributes

+T start
 interval start
 
+T end
 interval end
 
+

Detailed Description

+
template<class T>
+struct stdex::interval< T >

Numerical interval.

+

Constructor & Destructor Documentation

+ +

◆ interval() [1/2]

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
stdex::interval< T >::interval (x)
+
+inlinenoexcept
+
+ +

Constructs a zero-size interval.

+
Parameters
+ + +
[in]xInterval start and end value
+
+
+ +
+
+ +

◆ interval() [2/2]

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stdex::interval< T >::interval (_start,
_end 
)
+
+inlinenoexcept
+
+ +

Constructs an interval.

+
Parameters
+ + + +
[in]_startInterval start value
[in]_endInterval end value
+
+
+ +
+
+

Member Function Documentation

+ +

◆ operator bool()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + +
stdex::interval< T >::operator bool () const
+
+inline
+
+ +

Is interval valid?

+
Returns
true if interval is valid or false otherwise
+ +
+
+ +

◆ size()

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + +
T stdex::interval< T >::size () const
+
+inline
+
+ +

Returns interval size.

+
Returns
Interval size or 0 if interval is invalid
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/vector__queue_8h_source.html b/vector__queue_8h_source.html index 6e577ac80..3523f6593 100644 --- a/vector__queue_8h_source.html +++ b/vector__queue_8h_source.html @@ -3,7 +3,7 @@ - + stdex: include/stdex/vector_queue.h Source File @@ -30,7 +30,7 @@ - +