bfa5700df0
view: add string comparison operators
2018-04-01 14:44:15 +10:00
41cf6c3d51
view: slice should be const
2018-04-01 14:44:08 +10:00
5b9eae9b25
posix/except: add templated error_code
2018-04-01 14:43:28 +10:00
cc54d23998
gitignore: add pretty printer python cache
2018-03-29 14:16:55 +11:00
a4634a771b
g/frustum: simplify aabb intersection test
2018-03-28 20:42:43 +11:00
48e007c545
debug: add gdb pretty printers for coord types
2018-03-28 14:55:54 +11:00
4f10505d09
build: fix warnings from -Wparentheses
2018-03-27 20:16:32 +11:00
5642ff43b8
README: note all the environment variables we use.
2018-03-27 16:21:38 +11:00
47613c5ec2
string: remove unneeded rval-ref qualifier
2018-03-27 16:21:20 +11:00
62920f36f4
job/dispatch: retain the supplied function if forwarded to us
2018-03-27 16:20:56 +11:00
45fa54a5ee
job/dispatch: don't unconditionally cast parameters
2018-03-27 16:16:35 +11:00
d941188dd5
job/queue: add default constructor
2018-03-27 16:16:13 +11:00
429c0151db
singleton: add comments
2018-03-27 16:15:54 +11:00
473556f9ed
maths/fast: use relatively_equal for tests
2018-03-27 16:15:21 +11:00
046e6182e7
maths: avoid division by zero in relatively_equal
2018-03-27 16:14:41 +11:00
8777d32b94
debug: don't enable float exceptions by default
...
sometimes we just power through computations with invalid results to
simplify conditionals.
2018-03-27 16:14:01 +11:00
5532f90de7
vector: note what each component in spherical corresponds to
2018-03-27 16:11:49 +11:00
951b160d0d
parse: instantiate unsigned in parsing
2018-03-27 16:11:04 +11:00
14e2fc5bd5
geom/ray: use infinity, not nan, to signal no intersection
2018-03-27 16:06:34 +11:00
048cffaee7
extent;string: return references in iterators
2018-03-27 16:05:46 +11:00
67c8c9c69c
debug: enable debugging features by default
2018-03-27 15:50:29 +11:00
1b023f7c8d
iterator: improve reference semantics
2018-03-27 15:49:47 +11:00
93185775e6
coord/simd: template on arity and type
2018-03-23 17:52:08 +11:00
3409d39fc9
job/dispatch: add chunked image job queueing
2018-03-23 16:59:09 +11:00
490aab08bc
iterator: retain rvalue sources when constructing zip/izip
2018-03-23 16:41:11 +11:00
86b1fa38c7
variadic: add filter call
2018-03-23 16:40:30 +11:00
cceadcba40
tuple/value: add explanatory comment for map
2018-03-23 16:39:35 +11:00
af77aad894
extent/region: simplify iteration over ranges
2018-03-23 16:38:54 +11:00
7568e34649
view: don't force const iterators for cbegin/cend
2018-03-23 14:40:40 +11:00
58843fb0c7
view: use trivial constructors and assignment
...
this allows us to fulfil the requirements of TriviallyCopyable which is
useful particularly in dumb allocators and job queues.
2018-03-23 14:10:57 +11:00
36f4ba035c
thread: rename thread primitives from job namespace
2018-03-23 14:10:20 +11:00
6cd2bef17d
tap: send output to the recorded stream, not cout
2018-03-22 16:11:13 +11:00
2d7e3e5d7d
build: prefer iosfwd over iostream
2018-03-22 16:11:13 +11:00
40da3f8df7
singleton: add trivial implementation
2018-03-22 15:06:48 +11:00
9bfefb3dab
job/queue: use a reaper thread to clear finished tasks
...
clearing the tasks on the worker threads can cause the queue to stall
while the cookie is notified, released, and deleted. we punt the cleanup
off to a reaper thread so that the workers can continue.
2018-03-22 14:59:03 +11:00
3689b08535
parallel/queue: add nodiscard to push/pop
...
Users _must_ check the return value otherwise they've no indication
whether anything happened... This is a pretty common mistake because it
looks a lot like a typical push/pop operation.
2018-03-22 14:57:34 +11:00
4f4b812356
parallel/queue: add capacity query
2018-03-22 14:57:24 +11:00
53255ca4a0
job/semaphore: add multi-release
2018-03-22 13:39:16 +11:00
848b9951e8
job/semaphore: add multi-acquire
2018-03-22 13:37:28 +11:00
804b2263b8
parallel/queue: rename the queue type
2018-03-22 13:22:27 +11:00
d47f9e0cce
debug: write threadid to trace output
2018-03-22 13:20:23 +11:00
370488c498
coord: test coords are trivial types
2018-03-22 13:20:00 +11:00
88d514aa9c
pool: launder the allocated pointers
2018-03-22 13:10:18 +11:00
7fc51aa151
parallel/queue: use representative name for class
2018-03-22 13:05:51 +11:00
fc148fa7a4
parallel/queue: comments and type checks
2018-03-22 13:02:51 +11:00
4773e4be21
parallel: initial single-producer/multiple-consumer queue
2018-03-21 18:53:24 +11:00
82d63f68b1
job/flag: improved parallelism test
2018-03-20 18:02:20 +11:00
e120540bb9
job: add forward declarations
2018-03-20 15:01:23 +11:00
2508c5cc71
test: read TAP status before exit
2018-03-20 14:50:46 +11:00
197160daba
tap: check the status variable is read
2018-03-20 14:50:32 +11:00