---
# System prepended metadata

title: Rakietowe repo

---

# Rakietowe repo

https://gitlab.com/sat-polsl/rocket-design/sfrc_rocket_computer

- potrzebny jest `.gitignore` bo jest wciągnięte `.vscode`

- https://gitlab.com/sat-polsl/rocket-design/sfrc_rocket_computer/-/blob/master/platformio.ini#L18 - jakaś lokalna ścieżka się tu wcisnęła

- ogólnie jest dużo jakichś pozostały po generatorze `README.md` to bym też wywalił

- zastanów się czy nie lepiej `#pragma once` zamiast header guardów

- https://gitlab.com/sat-polsl/rocket-design/sfrc_rocket_computer/-/blob/master/platformio.ini#L18 - jest sens to tu trzymać?

- https://gitlab.com/sat-polsl/rocket-design/sfrc_rocket_computer/-/blob/master/include/SD_Card.h#L17 - to mi się bardzo nie podoba. Jeśli dobrze rozumiem to `println` jest w stanie wypisać jakiś fundamental type, co jeśli będziesz chciał wypisać string? Założyliście, że macie dwa pliki: `logs.txt` i `data.txt` i jakoś musicie mieć te pliki sensownie sformatowane, żeby się je dało czytać. dla `data.txt` coś w stylu:
```
timestamp0,pressure0,gyro_x0,gyro_y0,gyro_z0
timestamp1,pressure1,gyro_x1,gyro_y1,gyro_z1
timestamp2,pressure2,gyro_x2,gyro_y2,gyro_z2
...
timestampN,pressureN,gyro_xN,gyro_yN,gyro_zN
```

a w logach:
```
timestamp0, Gyro initialized
timestamp1, Parachute fired
timestamp2, Rapis unschedule disassembly
...
```

więc za pomocą takiej jednej metody to się zastrzelisz zanim to zrobisz.
lepij użyć `write(buf, len)` i wcześniej sobie do `buf` sformatować dane za pomocą jakiegoś `snprintf`

- https://gitlab.com/sat-polsl/rocket-design/sfrc_rocket_computer/-/blob/master/include/SD_Card.h#L11 - czy będziecie w trakcie lotu otwierać i zamykać pliki? jeśli tak to aż się prosi, żeby zrobic tutaj RAII. https://en.cppreference.com/w/cpp/language/raii 
