summaryrefslogtreecommitdiff
path: root/basebmp/source
AgeCommit message (Collapse)Author
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-10-01basebmp: these headers are not used from other modulesMiklos Vajna
Change-Id: I88c5c341b88a6ea62730e5d3dd1962365c531f70
2015-09-13boost->stdCaolán McNamara
Change-Id: I9b4f884c6313a53fea543ea6f93175205351ad14 Reviewed-on: https://gerrit.libreoffice.org/18517 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-07-06loplugin:unusedmethods basebmpNoel Grandin
Change-Id: I9e89fea4e94a91edbbe355780c2a12d6e6cb6e4a Reviewed-on: https://gerrit.libreoffice.org/16728 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-06-04convert basegfx::FillRule to scoped enumNoel Grandin
and drop unused NONZERO_WINDING_NUMBER value Change-Id: If2a8f01934796eaf9a343113387b775fd169ccb9
2015-06-04convert basebmp::Format to scoped enumNoel Grandin
Change-Id: I6eb213d6dcf387936967271fba9e2de3879ef479
2015-06-04convert DrawMode to scoped enumNoel Grandin
Change-Id: Ie4a7705cc3d042d08178e562a2c2ffaf0be3810f
2015-06-01remove unused BASEBMP_NO_NESTED_TEMPLATE_PARAMETERNoel Grandin
Change-Id: I631b5fa984f5a59619aef62e38a503239989b253
2015-04-22Various #include <sal/log.hxx> fixupsStephan Bergmann
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it. Cleaned up some, but something like grep -FwL sal/log.hxx $(git grep -Elw \ 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF') -- \*.cxx) shows lots more files that potentially need fixing before the include can be removed from rtl/string.hxx and rtl/ustring.hxx. Change-Id: Ibf033363e83d37851776f392dc0b077381cd8b90
2015-03-31Reduce to static_cast any reinterpret_cast from void pointersStephan Bergmann
Change-Id: I88949a300ebff7c0c37ec147ca50f08695db7775
2015-03-29Clean up template-parameter-dependent C-style castsStephan Bergmann
Change-Id: Ia1ab134a0afbeeb3ae40264bd4233a47df26b734
2015-03-27loplugin:staticfunctionNoel Grandin
Change-Id: I982ba552579019e4902ae59fddf14a6b34ba5954
2015-03-23drawing a vertical/horizontal line does not really damage 0 width/height areasCaolán McNamara
so follow the same logic as drawPixel which equally does not damage a 0 width and height point Change-Id: Ie2c400caf1ad2e3a874f92c6f90f5f071f9c95e3
2015-02-25rename BGRU to BGRXCaolán McNamara
Change-Id: I0f28b986542b4d30c0a2cb75e15fb258af98e9cd
2015-02-25rename BGRX32 etc to BGRA32Caolán McNamara
Change-Id: I60e1951fe56e4b00ee0caa142eb0e19dcb6d12b7
2015-02-25give basebmp a cairo compatible 24 bit surfaceCaolán McNamara
where each unit is actually 32bit with unused upper 8bit. Change-Id: I5c406cebe406d2db6fda73d744dfd22a99b80ba3
2015-02-24make ScanlineStride an argument to createBitmapDeviceCaolán McNamara
so we could create bitmap devices that have the same stride that cairo expects, provide getBitmapDeviceStrideForWidth to get a default value Change-Id: I7ecc6f54a734b3f6bed59c699ac3b482c4ad7c47
2015-01-20Some more loplugin:cstylecast: basebmpStephan Bergmann
Change-Id: I7e1e37110b9bd53a5eae543c854cc2c434a6b678
2014-10-14basebmp: accelerated method to create a clipping device.Michael Meeks
This was some staggering proportion of tiled rendering documents with complex clipping; it seems 'clear' is not what memset is for 1bit clip masks. Change-Id: I9142ffb7d7016603feb7782d6f03b9992b9494e3
2014-08-28keep nScanlineStride number saneCaolán McNamara
bff + valgrind Change-Id: I255a052251a6a0f1e4005b9cfb3b6ce00c6653ee
2014-04-19fixincludeguards.sh: basebmpThomas Arnhold
2014-04-19Remove gcc3 workaround for bug long since fixed in gccChris Sherlock
Change-Id: Ieb1c41481a79ab8713663caee3d5373640ff0ec8 Reviewed-on: https://gerrit.libreoffice.org/9102 Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2014-03-26First batch of adding SAL_OVERRRIDE to overriding function declarationsStephan Bergmann
...mostly done with a rewriting Clang plugin, with just some manual tweaking necessary to fix poor macro usage. Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
2014-02-23Remove unneccessary commentsAlexander Wilms
Change-Id: I939160ae72fecbe3d4a60ce755730bd4c38497fb Reviewed-on: https://gerrit.libreoffice.org/8182 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-01-27coverity#1078535 Division or modulo by zeroCaolán McNamara
Change-Id: Iab9bb56ce7646955d2592d7e9abdaf829ee1ec78
2013-11-11basebmp: include <> for external includesNorbert Thiebaud
Change-Id: I6f1f573662d5e759694c401598408df9fbb20be8
2013-10-08Hanlde TopDown -> BottomUp conversion in basebmp DirectCopy logictsahi glik
Change-Id: Ic6b94e8f01c0151741626f8b50d69597cc401852 Reviewed-on: https://gerrit.libreoffice.org/6155 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2013-09-27Off-by-one errorStephan Bergmann
Change-Id: I84749158fb8dee3fec10869e0955177bbd917d59
2013-09-27Improve performance of copyArea(), especially relevant for mobile devices.tsahi glik
vigra::copyImage89 does not handle copy areas in the same image so the code checks whether the src and dst are same buffer and directs it to scaleImage() which is very slow. The whole concept of pixel accessors is a huge overhead in the case of direct pixel copy (vigra::copyImage is also using pixel accessors). The idea here is to identify when direct memory copy is applicable (when the format is an integral number of bytes per pixel, src.size==dst.size, and src.format==dst.format) and use direct memory block copy and not pixel-wise copy. The result is 100x faster than the vigra implementation. This direct copy is also handling the case when the src and dst are same buffer by copy it from bottom to top when needed and using memmove() instead of memcpy(). Change-Id: I8ec589463d6386db82777a916371a5ebbf9e2d50 Reviewed-on: https://gerrit.libreoffice.org/5707 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2013-07-18fdo#62475 removed pointless commentsJelle van der Waa
Change-Id: I85bee68e89c41642b2da72e11b695588b3dfe346
2013-07-18WaE: assuming signed overflow does not occur when assuming...Caolán McNamara
that (X + c) < X is always false [-Wstrict-overflow] Change-Id: I63880bf27ab7e34eb9e0be682b39b80b71d65103
2013-07-12Turn basebmp::Format into a proper enumStephan Bergmann
Change-Id: I4067c5039c7b5c74a1c144721dd7260de54dd2bf
2013-06-04Add test for basebmp memory clobber.Thorsten Behrens
Cloned bitmap devices may share the same chunk of memory, thus risking overwriting our own data when we copy stuff around. Now caught from unit tests. Change-Id: I33b1a0b5d17550cbc6eced8bae01ae5ab9ebce9d
2013-06-04Detect copyArea trying to operate on overlapping memory.Tsahi Glik
Equality test also needs to check if disjunct BitmapDevice instances might not actually share the same memory buffer. Change-Id: I09a93cb092a0039353be211ed053e991e7fe66f0
2013-04-12Nah, I don't need a getOffset(), but I do need a getBufferSize()Tor Lillqvist
To properly handle subsetted BitmapDevices in the iOS vcl backend I seem to need to know what the size of the full BitmapDevice is. I wasted at least one day on desperate hacking and debugging, trying to wrap my head around a misunderstanding of what a subsetted BitmapDevice is. I thought it involved coordinate offsetting... Change-Id: I83bf1a7d75ce192aaf21f1e408008e362fd6c6e6
2013-04-11Add an accessor to get the offset of a subsetted BitmapDeviceTor Lillqvist
Change-Id: I8a4a588287a90c6953b367bb02e075ea58f13a96
2013-04-11Add debugging printout of subsetting informationTor Lillqvist
Change-Id: I6c37885823f14dcfbe750691dad27e094f46e66e
2013-03-26Log also corresponding destructions of BitmapDeviceTor Lillqvist
Change-Id: Ic74032b430691215482172c3c5f834374d47873d
2013-03-25Add some debugging printoutTor Lillqvist
Change-Id: Iea0decde41be8b9325b19651433f1b3b79f851a9
2012-10-01Replace usage of rtl_*Memory with equivalent from string.hArnaud Versini
Change-Id: I50ffc10f007f03c3252ef0196b59b881429cc159 Reviewed-on: https://gerrit.libreoffice.org/734 Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com> Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
2012-07-18re-base on ALv2 code. Includes:Michael Meeks
reportbuilder, license file not needed. Patch contributed by Armin Le Grand http://svn.apache.org/viewvc?view=revision&revision=1305814 Adapting extras/ to our wordbook setup.
2012-06-19re-base on ALv2 code.Michael Meeks
2012-06-07Add two new 32bpp formats and add helpful commentsTor Lillqvist
For Android (and perhaps iOS) we need a 32bpp format with channels in RGBA order. Rename the (basebmp-internal) 32bpp PixelFormatTreats_* typedefs so that the channel order in their names matches the memory order of the channels. Change-Id: Ia8a74f6d44e0a2cffdf66a05ddf8fc7d6ae2a263
2012-05-11put debugDump behind #if OSL_DEBUG_LEVEL > 2Matúš Kukan
basebmp/source/debug.cxx is only for vcl/headless/svpgdi.cxx Change-Id: I I Ib0624d919d7c0c5ce54dbef62fa0b49fd6eb0ab1
2012-04-17png parsing regression testCaolán McNamara
2011-12-13Make LineTest::testCornerCases succeed again after last basebmp fix.Stephan Bergmann
Though it looks wrong that rtl_allocateMemory(0) == 0.
2011-12-13handle failed bitmap storage allocation gracefullyMichael Meeks
2011-11-04Put BitmapDevice::getPixelData() back.Thorsten Behrens
Slight tweak of d0d62edf3f398e9ddb2fd0f1f5fbe1dd0393ff47 - getPixel() and getPixelData() are complementary functions, similar in spirit to const and non-const getters. Added unit test for it to avoid flagging it for removal again.
2011-11-03Cleanup basebmp a littleJoseph Powers
I removed 2 unused headers. I also stopped delivering a lot of headers that no one outside of basebmp cared about. I also removed the unused methods: basebmp::BitmapDevice::getPaletteEntryCount() const basebmp::BitmapDevice::getPixelData(basegfx::B2IPoint const&)
2011-11-03Fix one more subtlety around B2IBox / B2IRange changes.Thorsten Behrens
The Cohen/Sutherland clip flag routine was not aware of B2IBox, thusly yielding incorrect line clipping for BitmapDevice software rendering. Cleaned that up, added some more unit tests around the problem, and removed the now-extraneous maLineClip member from the bitmap device.