User:Vladbogolin/GSoC2014/Logs
From BRL-CAD
Contents
Daily Progress
Project Info
Project Name | Embedding a framebuffer window |
Student Name | Bogolin Simion Vlad |
IRC nick | vladbogo |
Link to proposal | http://brlcad.org/wiki/User:Vladbogolin/Proposal/EmbeddingFrameBuffer |
Milestones
- Implementing a new Qt framebuffer
- Raytracing
- Embedding a framebuffer window
Progress reports
- Midterm evaluation report can be found here
Logs
Community Bonding
- Studied the existing framebuffer implementation
- Researched to see exactly what framebuffer functions are called when using the rt command
Week 1
- Weekly milestone:
- Start working at the "open" function.
- 19 May:
- Started creating a new Qt framebuffer: I started by creating a txt framebuffer that just logs function calls.
- 20 May:
- Mostly a break day
- 21 May - 25 May:
- In this interval I had my final exams
Week 2
- Weekly milestone:
- Make up for the lost time due to exams
- Implement the open/close functions
- 26 May:
- I had my last exam so from now on I will focus on the project.
- Worked a little bit more on the txt framebuffer
- 27 May:
- Worked at attaching the txt framebuffer to the display manager - the txt framebuffer is almost done.
- Studied the existing "open" functions.
- 28 May:
- Attached the qt framebuffer to the display manager.
- Started working at the "open" function.
- 29 May:
- Continued working at the "open" function - it should be done shortly
- 30 May:
- Researched how the raytracer uses the framebuffer and attached the new framebuffer to it.
- 31 May:
- Mostly a break day.
- 1 June:
- Break day.
Week 3
- Weekly milestone:
- Finish implementing open/close and start working at the write function.
- 2 June:
- Continued working at the open function: created an empty window - the function should be done tomorrow.
- 3 June:
- Basically finished the open function - some changes might be needed during the implementation of the other functions.
- 4 June:
- Break day.
- 5 June:
- Researched the write function and the existing framebuffer implementation.
- 6 June:
- Break day.
- 7 June:
- Continued researching the write function and how the content is displayed.
- 8 June:
- More research, but mostly a break day.
- Conclusion:
- Finished implementing the open function and studied existing implementation of the write function
Week 4
- Weekly milestone:
- Have content displayed in the window
- 9 June:
- Solved a issue regarding the cmake build - I forgot to add Qt_INCLUDE_DIRS.
- Created a custom window so that it can be easily added content to it.
- 10 June:
- Released memory so that the qt_close function is done.
- Started working at content displaying. Since this is the main aspect I want to do as much research as possible on how to represent the backing store and how to display its content.
- 11 June:
- Break day.
- 12 June:
- Created and allocated the backing store for the framebuffer.
- Started working at the write function.
- Managed to get some content displayed - even though it's far from done, it is a good start
- 13 June:
- Continued working at the write function.
- 14 June:
- Managed to fix the content display:
- 15 June:
- Mostly a break day.
Week 5
- Weekly milestone:
- Finish the write function.
- 16 June:
- Finished a first version of the write function. Also, tested if more complex models are displayed correctly.
- 17 June:
- Started working at the open_existing function.
- 18 June:
- Break day.
- 19 June:
- Searched for the best way on how to create the open_existing function. Since until now, the functions were declared in fb.h and all framebuffers use the same header, after adding the Qt includes a lot of conflicts appear so a new method of dealing with the open_existing functions is necessary.
- 20 June:
- Continued studying how to integrate the open_existing function.
- 21 June:
- Break day.
- 22 June:
- Worked at the open_existing function.
Week 6
- Weekly milestone:
- Finish the open_existing function
- 23 June:
- Worked on raytracing from the display manager.
- 24 June:
- Break day.
- 25 June:
- Created the midterm report that can be found here
- 26 June:
- Processed events so that the output is displayed line by line
- Fixed the upside down drawing problem:
- 27 June:
- Break day.
- 28 June:
- Started modifying the fbio interface in order to add a generic open_existing entry.
- 29 June:
- Mostly a break day.
Week 7
- Time spent preparing my final project
Week 8
- Weekly milestone:
- Finish modifying the interface in order to use the open_existing function
- 7-8 July:
- Had my final paper presentation. Now I can focus only on GSoC for the rest of the summer.
- 9 July:
- Added a new entry in struct dm so that the framebuffer can be opened from libdm. This is necessary in order to avoid using qt code in mged/dm-qt and also can be used for refactoring dm related code from mged folder.
- Added the _qt_open_existing function in fb.h. This is a temporary solution until a final form of the function is implemented. In the end a new entry will be added in the fbio interface.
- Opened the framebuffer from the display manager, but at the moment there are two different windows.
- 10 July:
- Continued working at the open_existing function. Hopefully it will be done by the end of the week.
- 11 July:
- Struggled more with the embedding of a framebuffer window.
- 12 July:
- More struggle regarding the display of raytraced objects from the display manager.
- 13 July:
- Mostly a break day.
Week 9
- Weekly milestone:
- Finish the embedding of a framebuffer window
- 14 July:
- Worked at the actual embedding of a framebuffer window - still couldn't find a working solution
- 15 July:
- Did a deeper research on how the exting implementation is done. Still couldn't find a way do display content in the embedded window.
- 16 July:
- Break day