summaryrefslogtreecommitdiff
path: root/TODOS
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)