This thread is simply a reminder to myself how to port C++ code to D code. Sometimes I forget, muck things up, then start all over again :-/

1. Copy the file.h into file.cpp, delete file.h and rename file.cpp to file.d
2. Put all the class functions inside the class
3. Replace all -> with .
4. Remove all #include's and #define's
5. func(Struct *) either maps to func(inout Struct) or func(Struct[])
- Pointers can either be ported to arrays or inout's, depending

I am by no means an expert in C++ porting and I probably won't find an error in any of the above unless it breaks but...

1) I'm not sure how to handle that reference, I think I'd need a better reference, because for that example, I'd say, use the actual variable itself and not the reference. I handle references / some pointers in functions with inout.

2) Class pointers. I've been doing ...

MrClass *class;

replace with

MrClass class;

Since I'm fairly sure all D classes are pointers to an object on the heap, the pointer is simply not necessary, and neither is inout for functions.