nuclear@67: #ifndef PSTRACK_H_ nuclear@67: #define PSTRACK_H_ nuclear@67: nuclear@67: #include nuclear@67: #include nuclear@67: nuclear@67: struct psys_track { nuclear@67: struct anm_track trk; nuclear@67: nuclear@67: anm_time_t cache_tm; nuclear@67: float cache_val; nuclear@67: }; nuclear@67: nuclear@67: struct psys_track3 { nuclear@67: struct anm_track x, y, z; nuclear@67: nuclear@67: anm_time_t cache_tm; nuclear@67: vec3_t cache_vec; nuclear@67: }; nuclear@67: nuclear@67: int psys_init_track(struct psys_track *track); nuclear@67: void psys_destroy_track(struct psys_track *track); nuclear@67: nuclear@67: int psys_init_track3(struct psys_track3 *track); nuclear@67: void psys_destroy_track3(struct psys_track3 *track); nuclear@67: nuclear@67: void psys_eval_track(struct psys_track *track, anm_time_t tm); nuclear@67: void psys_set_value(struct psys_track *track, anm_time_t tm, float v); nuclear@67: float psys_get_value(struct psys_track *track, anm_time_t tm); nuclear@67: float psys_get_cur_value(struct psys_track *track); nuclear@67: nuclear@67: void psys_eval_track3(struct psys_track3 *track, anm_time_t tm); nuclear@67: void psys_set_value3(struct psys_track3 *track, anm_time_t tm, vec3_t v); nuclear@67: vec3_t psys_get_value3(struct psys_track3 *track, anm_time_t tm); nuclear@67: vec3_t psys_get_cur_value3(struct psys_track3 *track); nuclear@67: nuclear@67: #endif /* PSTRACK_H_ */