blob: a0a396ef4c1bb9cdb0f8efb2752ffb239d0f739c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
- singleton with registered pointers, so they can be shared between
loadable modules on Windows, example is the logger singleton currently:
- exported data segments
#pragma data_seg("SHARED")
#pragma data_seg()
#pragma comment(linker, "/section:SHARED,RWS")
- http://support.microsoft.com/kb/168958/en-us
- http://www.xing.com/net/moderncpp/allgemeines-zu-c-101269/singletons-in-dll-s-32375749
- http://stackoverflow.com/questions/1880052/c-duplicated-static-member
- http://stackoverflow.com/questions/4911994/sharing-a-global-static-variable-between-a-process-and-dll
- http://www.ogre3d.org/forums/viewtopic.php?p=75622&sid=ce193664e1d3d7c4af509e6f4e2718c6
- rewrite logger as proper singleton
- use traits in rewindinputstream, alternative wrappers for char/string
traits depending on underlying io stream
- spooling in RIS:
- thread-safe tempnames
- Windows, respect environment variables like TEMP
- module loader
- use weak pointers to create objects (pointers which don't transfer
ownership but act more as a handle). Avoid funny trouble with
objects originating for modules (especially DLLs on Windows)
|