Michael Hansen
ce53a71990
There is no benefit to the hsFopen macro
11 years ago
Michael Hansen
1a987173d6
Use std::swap
11 years ago
Michael Hansen
72f18e8ebb
Complete the previous commit by also removing the inline min and max
...
functions defined in HeadSpin.h without breaking (3ds)Max compilation
11 years ago
Michael Hansen
e36220cca5
Use std::min and std::max
11 years ago
Michael Hansen
9d67b96837
Fix some errors and warnings when compiling with Clang
11 years ago
Michael Hansen
a1303d6d23
Fix inconsistent line endings :(
11 years ago
Michael Hansen
474b54396b
Reintroduce (and enforce use of) hsLockFor{Reading,Writing}
11 years ago
Michael Hansen
5836af7268
Clean up hsReaderWriterLock
11 years ago
Michael Hansen
f83ec34c67
Move the old IPC-based semaphore to hsGlobalSemaphore, and provide a
...
"normal" (inter-thread only) semaphore class.
11 years ago
Michael Hansen
a669abf10e
Use C++11 threading for hsEvent, and clean up the API a bit
11 years ago
Michael Hansen
2947acb2c8
Replace hsMutex with std::mutex
11 years ago
Michael Hansen
5ed3e3205c
Add move semantics to plString and plStringStream
11 years ago
Michael Hansen
fa1bb779e5
Add explicit string literal overload to try to help Coverity (and
...
avoid a strlen call to boot).
11 years ago
Michael Hansen
f93b37e152
Switch plFormat's accumulator to a plStringStream for better performance
11 years ago
Michael Hansen
aee2f7f7ca
Make hsRefCnt atomic, and merge with hsAtomicRefCnt
11 years ago
Michael Hansen
d283872da6
Unify leak checkers
11 years ago
Michael Hansen
39867610a2
Fix leak check race condition, and remove an unintentional circular ref
11 years ago
Michael Hansen
7f4701cc1a
Add a RefCnt leak debug tracker
11 years ago
Michael Hansen
d2a05929f8
Replace most vault *IncRef() API functions with hsRef versions
11 years ago
Michael Hansen
aa2a1de5d0
Provide an easier/safer way to manage hsRefCnt subclasses
11 years ago
Michael Hansen
9771baf7dd
Fix plStringBuffer constructor with explicit size to count chars, not bytes
11 years ago
Michael Hansen
bf5623224c
Add plPrintf - a cstdio-directed version of plFormat
11 years ago
Michael Hansen
1debf8180b
Convert many of the now-deprecated plString::Format calls to plFormat
11 years ago
Michael Hansen
2c82cdf996
Fix for {.0f} precision in plFormat()
11 years ago
Michael Hansen
1a0420127c
Provide some plFormat samples with floats/doubles
11 years ago
Michael Hansen
d15f1557b6
Implement plFormat for floating-point types
11 years ago
Michael Hansen
e331cbd4f7
ASSume that MSVC is the only compiler who uses the __declspec() syntax
11 years ago
Michael Hansen
688852e658
Put compiler checks in their own cmake module
11 years ago
Michael Hansen
15728bbfb5
Add an hsDeprecated macro for declaring APIs deprecated
11 years ago
Adam Johnson
83b8f6c10b
Fix invalid sizeof expressions in HeadSpin.cpp
11 years ago
Michael Hansen
d8c3769143
Fix it for standards-complient compilers (GCC/Clang).
...
Unfortunately, this means that all formatters must be declared in the
same place now, as they must be declared BEFORE the template which uses
them is declared (not just before it was instantiated, which MSVC allows).
11 years ago
Michael Hansen
7d76cae10f
Make life simpler. Make life less stupid. Make life work.
11 years ago
Michael Hansen
a53f425e38
Fixes for plFormat on GCC/Clang:
...
- int64_t is a typedef of long on Linux/x86_64 -- don't redefine its specialization
- Properly forward-declare the unspecialized variadic template form of _IFormat
11 years ago
Michael Hansen
933ae6ec17
Provide some sample conversions to plFormat for testing and copying
11 years ago
Michael Hansen
2cb19d3308
Oops - bits parameter isn't actually used any more
11 years ago
Michael Hansen
b199cb5ff0
Add better documentation, and fix some floating point flag stuff
11 years ago
Michael Hansen
63557352f2
Add support for bool formatting
11 years ago
Michael Hansen
1baefdd0f2
Properly handle zero
11 years ago
Michael Hansen
2048b641d3
Take advantage of some custom formatter shortcuts
11 years ago
Michael Hansen
3f92409a21
Provide implementations of most built-in types (excluding floating point)
11 years ago
Michael Hansen
ad5bef6671
Add framework for plFormat
11 years ago
Michael Hansen
34b2eb1836
More std::atomic and friends
11 years ago
Michael Hansen
23a071860e
pnUtRef started at zero refs instead of one, and this is simpler
...
than finding and removing all the extra Ref() calls.
11 years ago
Michael Hansen
d713a13dbe
Merge pnUtRef with hsRefCnt, and remove the former
11 years ago
Michael Hansen
b48963b904
Make it compile and work in GCC / Linux
11 years ago
Michael Hansen
e929708a3b
Use std::atomic_int for hsSafeRefCnt, and move it to hsRefCnt.h/cpp
11 years ago
Christian Walther
8c5286400a
Use premultiplied alpha for plDynamicTextMaps on GUI controls.
...
This fixes the irregular dark fringes around light text when not exactly pixel-aligned that are caused by independent interpolation of color and alpha. It also makes calculations simpler for things to come.
11 years ago
Darryl Pogue
d615f47dc4
Improve clarity of stat/_wstat64 return value.
11 years ago
Darryl Pogue
87e2150948
Remove unneeded register keyword.
...
In modern compilers, the register keyword has no effect. On clang, it
generates warnings.
11 years ago
Darryl Pogue
b66a2ba9e3
Fix an uninitialized value in hsBounds.
11 years ago