| | 1 | #ifndef _bh_fan_h_ |
| | 2 | #define _bh_fan_h_ 1 |
| | 3 | |
| | 4 | void FanBehaveInit(void* bhdata, STRATEGYBLOCK* sbptr); |
| | 5 | void FanBehaveFun(STRATEGYBLOCK* sbptr); |
| | 6 | |
| | 7 | typedef struct fan_behav_block |
| | 8 | { |
| | 9 | AVP_BEHAVIOUR_TYPE bhvr_type; |
| | 10 | |
| | 11 | unsigned int spinning:1; |
| | 12 | |
| | 13 | TRACK_CONTROLLER* track; |
| | 14 | |
| | 15 | int speed_up_mult; //one over time take to get to full speed |
| | 16 | int slow_down_mult; //one over time take to stop |
| | 17 | int speed_mult; //0 to one_fixed : current speed relative to full speed |
| | 18 | |
| | 19 | VECTORCH fan_wind_direction; //normalised vector |
| | 20 | int fan_wind_strength; //fixed point multiplier for fan at full speed |
| | 21 | |
| | 22 | int wind_speed;//fixed point multiplier , taking the fan's current speed into account |
| | 23 | |
| | 24 | } FAN_BEHAV_BLOCK; |
| | 25 | |
| | 26 | typedef struct fan_tools_template |
| | 27 | { |
| | 28 | char nameID[SB_NAME_LENGTH]; |
| | 29 | VECTORCH position; |
| | 30 | EULER orientation; |
| | 31 | int speed_up_mult; //one over time take to get to full speed |
| | 32 | int slow_down_mult; //one over time take to stop |
| | 33 | TRACK_CONTROLLER* track; |
| | 34 | VECTORCH fan_wind_direction; //normalised vector |
| | 35 | int fan_wind_strength; //fixed point multiplier |
| | 36 | |
| | 37 | } FAN_TOOLS_TEMPLATE; |
| | 38 | |
| | 39 | #endif |