Commit Graph

3361 Commits

Author SHA1 Message Date
Davis King
1a6554bce5 merged 2012-12-28 19:14:58 -05:00
Davis King
68e88433fc Changed the spec for mutex::unlock() to say that it is illegal for a thread to
unlock a dlib::mutex it doesn't own.  This is technically a non-backwards
compatible change to the API but it has always been implemented in a way that
didn't allow this kind of double unlock() on non-Windows platforms.
Additionally, the recent change to the dlib::mutex implementation on windows
also no longer allows this kind of double unlock.
2012-12-28 19:14:31 -05:00
Davis King
d5ca4a8b5b Changed the thread_pool so it uses auto_mutex::unlock() in the appropriate places
instead of mutex::unlock().
2012-12-28 19:02:38 -05:00
Davis King
d6c200693e Added auto_mutex::unlock() 2012-12-28 19:01:10 -05:00
Davis King
213b0ff14b Added speed information about the pipe and bridge 2012-12-28 17:11:44 -05:00
Davis King
2c1a2f4ee6 Added some polynomial drawing to the testing gui 2012-12-28 15:22:02 -05:00
Davis King
af7fcb0e09 Improved unit test repeatability. 2012-12-28 14:50:30 -05:00
Davis King
7087d75369 Switched the windows implementation of dlib::mutex to use a CRITICAL_SECTION instead
of a "mutex" (i.e. the thing made by CreateMutex()) since a critical section does the
same thing but faster.
2012-12-28 14:38:15 -05:00
Davis King
05f3537858 merged 2012-12-28 11:50:05 -05:00
Davis King
1653a8f502 changed the array2d overloads to read/write all the data in one block. 2012-12-28 11:49:41 -05:00
Davis King
b1902bd0ad spelling 2012-12-28 10:54:15 -05:00
Davis King
12a1104e65 grammar 2012-12-28 10:53:25 -05:00
Davis King
b5c0dede2b Clarified threading discussion in intro. 2012-12-28 10:51:02 -05:00
Davis King
dc9db58090 merged 2012-12-28 10:23:56 -05:00
Davis King
658927b37c clarified spec 2012-12-28 10:23:39 -05:00
Davis King
2516cac59c Added a bunch of THREAD SAFETY blocks to the specs for various machine learning
function objects.  In general, I noted that in most cases they are safe to use
from multiple threads so long as they are not modified.
2012-12-28 10:22:42 -05:00
Davis King
c6df93f5b7 Relaxed test slightly to avoid false alarm in visual studio 2005 2012-12-28 09:10:57 -05:00
Davis King
6b74536103 A minor change to avoid a warning in visual studio. 2012-12-28 08:27:20 -05:00
Davis King
0b88840f64 relaxed test a little 2012-12-27 16:23:54 -05:00
Davis King
17bde91955 Merge 2012-12-27 15:59:04 -05:00
Davis King
3c5251bb7b Renamed a variable to avoid a name conflict in visual studio 2005 2012-12-27 15:58:43 -05:00
Davis King
7ae702a49f Changed how murmur hash was used in find_max_factor_graph_nmplp to avoid a
violation of the strict aliasing rule.  This fixes a bug which caused
find_max_factor_graph_nmplp() to not work properly on some compilers.
2012-12-27 15:56:56 -05:00
Davis King
453fee6235 Relaxed test slightly 2012-12-27 15:28:55 -05:00
Davis King
7af1734d59 Changed to avoid compiler errors in visual studio 2012-12-27 15:06:51 -05:00
Davis King
580d90f0ea Added some casts to avoid warnings in gcc 4.1.2 2011-08-09 18:08:46 -04:00
Davis King
aa4d7caa37 Changed slightly to avoid compiler error in gcc 4.1.2 2011-08-09 18:07:39 -04:00
Davis King
24e3fe504c merged 2012-12-27 14:43:30 -05:00
Davis King
892fa86c46 Made tests more robust 2012-12-27 14:43:13 -05:00
Davis King
29cc31cd8d updated docs 2012-12-27 14:10:07 -05:00
Davis King
43d9768ecc Added unit tests for rank_unlabeled_training_samples() 2012-12-27 14:09:20 -05:00
Davis King
b5e8d9d835 Added rank_unlabeled_training_samples() 2012-12-27 11:52:06 -05:00
Davis King
015643e078 Made the matrix_exp iterator a proper iterator 2012-12-27 11:47:01 -05:00
Davis King
95ac81fa10 updated FAQ 2012-12-26 07:29:37 -05:00
Davis King
2f149cb58e cleanup 2012-12-25 10:51:13 -05:00
Davis King
64c986cfb7 Added another FAQ entry. 2012-12-25 10:46:11 -05:00
Davis King
70068e4683 Added a mat() overload for cv_image. 2012-12-25 10:22:06 -05:00
Davis King
e3743b5f30 Added a config.h file that can be used to permanently enable or disable
asserts when creating a shared library for dlib.
2012-12-25 09:59:07 -05:00
Davis King
6efc800b54 Added another mat() overload for Eigen matrices. 2012-12-24 00:15:34 -05:00
Davis King
a4f0719911 Added a mat() overload that works with Armadillo matrices. 2012-12-23 23:43:53 -05:00
Davis King
a0e3d2a606 Added unit tests for matrix iterators. 2012-12-23 23:06:34 -05:00
Davis King
ee4e7aea49 Added STL style begin() and end() methods to matrix and matrix_exp. 2012-12-23 22:06:18 -05:00
Davis King
634f4db4be updated docs 2012-12-23 14:26:05 -05:00
Davis King
37c815f671 All I did in this change was rename calls to array_to_matrix(),
vector_to_matrix(), pointer_to_column_vector(), and pointer_to_matrix() to
mat() (in addition to adding a few more mat() overloads for certain things).
2012-12-23 14:03:36 -05:00
Davis King
0d970e47ef Fixed bug in one of the new mat() functions. 2012-12-23 10:02:54 -05:00
Davis King
d7df21a8e1 switched examples over to the new mat() method. 2012-12-23 09:25:22 -05:00
Davis King
a5d3021816 Added the mat() function. It rolls the array_to_matrix(), vector_to_matrix(),
pointer_to_column_vector(), and pointer_to_matrix() methods all into one
convenient interface.  Also made stddev() slightly more general.

This change also deprecates the previous matrix conversion functions.
2012-12-23 09:25:10 -05:00
Davis King
30097efba1 Made toMat() work with matrix object in addition to array2d style images. 2012-12-22 18:24:59 -05:00
Davis King
ea55f97ef4 Previously, if you accidentally tried to copy between any_function instances
with incompatible function signatures you got a really confusing error message
from the compiler.  This change makes it so you get a much more informative
error message.
2012-12-21 22:27:40 -05:00
Davis King
cfc6e83d01 updated docs 2012-12-21 16:51:24 -05:00
Davis King
88a4f743f5 merged 2012-12-21 16:14:24 -05:00