Pavel Krajcevski
c3cb8403b5
Fix our threadsafe streambuf to accept a sink that receives all of the proper output...
2013-09-28 21:44:50 -04:00
Pavel Krajcevski
13af957ab9
Remove BlockStatManager in favor of ostreams
2013-09-28 21:42:24 -04:00
Pavel Krajcevski
7bd54105e4
Add simple implementation of our thread-safe stream buffer.
2013-09-28 18:11:41 -04:00
Pavel Krajcevski
8bc81edf14
Add skeleton for thread safe stream buffer.
2013-09-28 17:30:25 -04:00
Pavel Krajcevski
dcf389d346
Merge PVRTC compressor into split library.
2013-09-27 17:30:16 -04:00
Pavel Krajcevski
264e447e80
Deal with this bug once and for all. If we have an image in block stream order, then explicitly reorder it before doing any work. Then keep it that way. I probably could have fixed this in the amount of time I've wasted on it. -____-
2013-09-26 20:17:07 -04:00
Pavel Krajcevski
1093447055
Plug in the infrastructure to start passing images to be compressed.
2013-09-20 12:43:59 -04:00
Pavel Krajcevski
29bd1368e6
Fix a few compiler warnings and add the BPTCEncoder license.
2013-09-15 14:56:09 -04:00
Pavel Krajcevski
28cf254fe5
Initial decoupling of base library from core library. Includes a few formatting changes as well.
2013-09-13 19:36:37 -04:00
Pavel Krajcevski
2540032acc
Some small formatting changes
2013-09-13 16:25:00 -04:00
Pavel Krajcevski
9b7bb2cbc7
Add hooks to support outputing images whose pixels are not in block-stream order
2013-09-06 01:38:52 -04:00
Pavel Krajcevski
03a7934644
Get rid of evil tabs once and forever (from cpp/h files)
2013-08-26 16:54:08 -04:00
Pavel Krajcevski
fc1baea05f
Add a lot of comments and code cleanup
2013-08-22 18:33:42 -04:00
Pavel Krajcevski
7c3b3d8144
Fix a few bugs in our CompressionJobList's
2013-03-11 14:41:08 -04:00
Pavel Krajcevski
ae2324153d
Repurpose the rest of our scaffolding to use Compression Jobs
2013-03-09 13:36:39 -05:00
Pavel Krajcevski
435f935de3
Update atomics compression algorithm
...
In general, we want to use this algorithm only with self-contained compression
lists. As such, we've added all of the proper synchronization primitives in
the list object itself. That way, different threads that are working on the
same list will be able to communicate. Ideally, this should eliminate the
number of user-space context switches that happen. Whether or not this is
faster than the other synchronization algorithms that we've tried remains
to be seen...
2013-03-09 13:34:10 -05:00
Pavel Krajcevski
abd3961a09
Add a new interface to compressing files which we will call a 'compression job'
2013-03-09 13:22:42 -05:00
Pavel Krajcevski
2127c04987
Add flag to compression settings to use atomics.
2013-03-06 19:01:31 -05:00
Pavel Krajcevski
8ebdc30394
Add Yield function to global namespace
...
In order to develop a threadsafe texture compression function, we will need
to preempt threads in order to not kill performance while we initialzie everything...
2013-03-06 17:29:22 -05:00
Pavel Krajcevski
771b91b795
Fix a bunch of memory leaks.
2013-02-07 17:01:38 -05:00
Pavel Krajcevski
1b30efe488
Got rid of some more compiler warnings.
2013-01-28 16:57:15 -05:00
Pavel Krajcevski
5dd1fbbd48
Fix a lot of compiler warnings.
2013-01-28 16:30:04 -05:00
Pavel Krajcevski
cdbf72b6c0
Merge MSVC support into master.
2013-01-28 11:49:03 -05:00
Pavel Krajcevski
deac1e7fad
Fix some compiler errors...
2013-01-28 11:44:14 -05:00
Pavel Krajcevski
45e926536a
Move Thread.h out of the include directory, and update the BlockStatManager to compensate.
2013-01-27 14:36:19 -05:00
Pavel Krajcevski
5eba3ba6f7
Add license
2012-11-15 11:51:55 -05:00
Pavel Krajcevski
8761821220
More compiler fixes.
2012-11-07 18:01:02 -05:00
Pavel Krajcevski
05e6ca0bc9
Fix windows issues with blockstats...
2012-11-07 16:52:06 -05:00
Pavel Krajcevski
e3757fde74
Fix MSVC interpretation of our types.
2012-11-07 15:20:25 -05:00
Pavel Krajcevski
790df0736f
Make stats collection threadsafe.
2012-11-01 18:56:13 -04:00
Pavel Krajcevski
545a6f68e2
Add new structure to support creating Images and ImageFiles from compressed images
2012-10-31 17:50:38 -04:00
Pavel Krajcevski
71fbbca1ee
Fix a few issues and make sure that when we write out to a file, only the intended values are reported. We still have to fix the accumulated stat reporting and make it thread-safe.
2012-10-31 17:48:53 -04:00
Pavel Krajcevski
99534bc5d0
Add stats function to serial encoder. Otherwise, continue to use non-stats function in threaded mode.
2012-10-31 17:48:52 -04:00
Pavel Krajcevski
1e6a2d4c7b
Add new compression function that collects preliminary stats.
2012-10-31 17:48:52 -04:00
Pavel Krajcevski
fcbca9ca8d
Add files for new block stats in order to track things in our compression algorithms
2012-10-31 17:48:52 -04:00
Pavel Krajcevski
f82173f423
Add platform independent file stream reading and writing in order to allow us to write out logs.
2012-10-31 17:48:52 -04:00
Pavel Krajcevski
2c22889533
Broke the coupling between ImageFile and Image. One is strictly for IO, the other can be platform and file format agnostic.
2012-10-31 17:46:13 -04:00
Pavel Krajcevski
c1222d75f9
Reorganize a lot of code. Should probably split image and image file classes to separate IO operations and whatnot.
2012-10-31 17:46:12 -04:00
Pavel Krajcevski
78da9499ec
Add output for error metric
2012-09-18 19:00:20 -04:00
Pavel Krajcevski
e25e5bae90
Add flag to modify the number of compressions in order to take an average of the compression time.
2012-09-15 10:29:36 -04:00
Pavel Krajcevski
fc4cf7758b
Add ability to change quality of BPTC encoder.
2012-08-30 17:46:34 -04:00
Pavel Krajcevski
2ad2e94584
Move type defines into core library... all modules should have a standard set of types.
2012-08-30 13:28:28 -04:00
Pavel Krajcevski
9e625a4065
Start working on command line tool -- Currently just making sure that everything builds and links. Also rearranged some function definitions to better accomodate this.
2012-08-28 15:47:19 -04:00
Pavel Krajcevski
a076d1efb8
Fleshed out some more of the library
2012-08-27 18:34:37 -04:00
Pavel Krajcevski
39d7f2c942
Added files for core library.
2012-08-27 13:36:59 -04:00