+ irr::video::E_TRANSFORMATION_STATE
+ scm_to_transformation_state (SCM transformation_state)
+ {
+ char* state = scm_to_utf8_stringn (scm_symbol_to_string (transformation_state), NULL);
+ if (!strcmp (state, "view"))
+ {
+ return irr::video::ETS_VIEW;
+ }
+ else if (!strcmp (state, "world"))
+ {
+ return irr::video::ETS_WORLD;
+ }
+ else if (!strcmp (state, "projection"))
+ {
+ return irr::video::ETS_PROJECTION;
+ }
+ else if (!strcmp (state, "texture0"))
+ {
+ return irr::video::ETS_TEXTURE_0;
+ }
+ else if (!strcmp (state, "texture1"))
+ {
+ return irr::video::ETS_TEXTURE_1;
+ }
+ else if (!strcmp (state, "texture2"))
+ {
+ return irr::video::ETS_TEXTURE_2;
+ }
+ else if (!strcmp (state, "texture3"))
+ {
+ return irr::video::ETS_TEXTURE_3;
+ }
+ else
+ {
+ scm_error (scm_arg_type_key, NULL, "Wrong transformation state: ~S",
+ scm_list_1 (transformation_state), scm_list_1 (transformation_state));
+ }
+ }
+