picopass_device.c 957 B

123456789101112131415161718192021222324252627282930313233
  1. #include "picopass_device.h"
  2. #include <toolbox/path.h>
  3. #include <flipper_format/flipper_format.h>
  4. #define TAG "PicopassDevice"
  5. PicopassDevice* picopass_device_alloc() {
  6. PicopassDevice* picopass_dev = malloc(sizeof(PicopassDevice));
  7. picopass_dev->storage = furi_record_open("storage");
  8. picopass_dev->dialogs = furi_record_open("dialogs");
  9. return picopass_dev;
  10. }
  11. void picopass_device_clear(PicopassDevice* dev) {
  12. furi_assert(dev);
  13. picopass_device_data_clear(&dev->dev_data);
  14. memset(&dev->dev_data, 0, sizeof(dev->dev_data));
  15. }
  16. void picopass_device_free(PicopassDevice* picopass_dev) {
  17. furi_assert(picopass_dev);
  18. picopass_device_clear(picopass_dev);
  19. furi_record_close("storage");
  20. furi_record_close("dialogs");
  21. free(picopass_dev);
  22. }
  23. void picopass_device_data_clear(PicopassDeviceData* dev_data) {
  24. FURI_LOG_D(TAG, "picopass_device_data_clear");
  25. memset(&dev_data->AA1, 0, sizeof(ApplicationArea));
  26. }