ECE2035 Project 2
Dependencies: mbed mbed-rtos SDFileSystem
compost_pile.cpp@4:8e15742ebcc6, 2021-04-07 (annotated)
- Committer:
- kwengryn3
- Date:
- Wed Apr 07 13:26:44 2021 +0000
- Revision:
- 4:8e15742ebcc6
- Parent:
- 0:bff8b9020128
- Child:
- 5:b9b7993823e1
update;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kwengryn3 | 0:bff8b9020128 | 1 | //================================================================= |
kwengryn3 | 0:bff8b9020128 | 2 | // The file is for module "compost pile" |
kwengryn3 | 0:bff8b9020128 | 3 | // |
kwengryn3 | 0:bff8b9020128 | 4 | // Copyright 2020 Georgia Tech. All rights reserved. |
kwengryn3 | 0:bff8b9020128 | 5 | // The materials provided by the instructor in this course are for |
kwengryn3 | 0:bff8b9020128 | 6 | // the use of the students currently enrolled in the course. |
kwengryn3 | 0:bff8b9020128 | 7 | // Copyrighted course materials may not be further disseminated. |
kwengryn3 | 0:bff8b9020128 | 8 | // This file must not be made publicly available anywhere. |
kwengryn3 | 0:bff8b9020128 | 9 | //================================================================== |
kwengryn3 | 0:bff8b9020128 | 10 | |
kwengryn3 | 0:bff8b9020128 | 11 | #include "compost_pile_private.h" |
kwengryn3 | 4:8e15742ebcc6 | 12 | #define X 0x00FF00 //GREEN |
kwengryn3 | 0:bff8b9020128 | 13 | |
kwengryn3 | 4:8e15742ebcc6 | 14 | COMPOST* compost_record[NUM_PILE]; |
kwengryn3 | 4:8e15742ebcc6 | 15 | const int tallest_pile_height = 4; |
kwengryn3 | 4:8e15742ebcc6 | 16 | |
kwengryn3 | 4:8e15742ebcc6 | 17 | int compost_sprite[COMPOST_WIDTH * COMPOST_WIDTH] = { |
kwengryn3 | 4:8e15742ebcc6 | 18 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 19 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 20 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 21 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 22 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 23 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 24 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 25 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 26 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 27 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 28 | X,X,X,X,X,X,X,X,X,X,X, |
kwengryn3 | 4:8e15742ebcc6 | 29 | |
kwengryn3 | 4:8e15742ebcc6 | 30 | }; |
kwengryn3 | 0:bff8b9020128 | 31 | |
kwengryn3 | 0:bff8b9020128 | 32 | |
kwengryn3 | 0:bff8b9020128 | 33 | // See the comments in compost_pile_public.h |
kwengryn3 | 0:bff8b9020128 | 34 | void compost_pile_init() { |
kwengryn3 | 4:8e15742ebcc6 | 35 | int x = 6; |
kwengryn3 | 4:8e15742ebcc6 | 36 | for (int i = 0; i < NUM_PILE; i++) { |
kwengryn3 | 4:8e15742ebcc6 | 37 | compost_record[i] = (COMPOST*)malloc(sizeof(COMPOST*)); |
kwengryn3 | 4:8e15742ebcc6 | 38 | compost_record[i]->x = x; |
kwengryn3 | 4:8e15742ebcc6 | 39 | compost_record[i]->y = 127; |
kwengryn3 | 4:8e15742ebcc6 | 40 | compost_record[i]->width = COMPOST_WIDTH; |
kwengryn3 | 4:8e15742ebcc6 | 41 | compost_record[i]->height = 1; |
kwengryn3 | 4:8e15742ebcc6 | 42 | x += 11; |
kwengryn3 | 4:8e15742ebcc6 | 43 | } |
kwengryn3 | 4:8e15742ebcc6 | 44 | |
kwengryn3 | 4:8e15742ebcc6 | 45 | draw_compost(); |
kwengryn3 | 0:bff8b9020128 | 46 | |
kwengryn3 | 0:bff8b9020128 | 47 | } |
kwengryn3 | 0:bff8b9020128 | 48 | |
kwengryn3 | 4:8e15742ebcc6 | 49 | COMPOST* compost_get_info(int index){ |
kwengryn3 | 4:8e15742ebcc6 | 50 | return compost_record[index]; |
kwengryn3 | 0:bff8b9020128 | 51 | } |
kwengryn3 | 0:bff8b9020128 | 52 | |
kwengryn3 | 0:bff8b9020128 | 53 | void compost_add(int index) { |
kwengryn3 | 0:bff8b9020128 | 54 | |
kwengryn3 | 0:bff8b9020128 | 55 | } |
kwengryn3 | 0:bff8b9020128 | 56 | |
kwengryn3 | 0:bff8b9020128 | 57 | void draw_compost(void){ |
kwengryn3 | 4:8e15742ebcc6 | 58 | |
kwengryn3 | 4:8e15742ebcc6 | 59 | for (int i = 0; i < NUM_PILE; i++) { |
kwengryn3 | 4:8e15742ebcc6 | 60 | int tly = 127 - COMPOST_WIDTH; |
kwengryn3 | 4:8e15742ebcc6 | 61 | for (int j = 1; j <= compost_record[i]->height; j++) { |
kwengryn3 | 4:8e15742ebcc6 | 62 | uLCD.BLIT(compost_record[i]->x,tly, COMPOST_WIDTH, COMPOST_WIDTH, compost_sprite); |
kwengryn3 | 4:8e15742ebcc6 | 63 | tly -= COMPOST_WIDTH; |
kwengryn3 | 4:8e15742ebcc6 | 64 | } |
kwengryn3 | 4:8e15742ebcc6 | 65 | } |
kwengryn3 | 0:bff8b9020128 | 66 | |
kwengryn3 | 0:bff8b9020128 | 67 | } |
kwengryn3 | 0:bff8b9020128 | 68 | |
kwengryn3 | 0:bff8b9020128 | 69 | int get_compost_tallest_height() { |
kwengryn3 | 4:8e15742ebcc6 | 70 | return 1; |
kwengryn3 | 0:bff8b9020128 | 71 | |
kwengryn3 | 0:bff8b9020128 | 72 | } |
kwengryn3 | 0:bff8b9020128 | 73 | |
kwengryn3 | 0:bff8b9020128 | 74 | int get_compost_height(int index) { |
kwengryn3 | 4:8e15742ebcc6 | 75 | return compost_record[index]->height; |
kwengryn3 | 4:8e15742ebcc6 | 76 | } |
kwengryn3 | 0:bff8b9020128 | 77 |