Module: RbSDL2::Filesystem
- Defined in:
- lib/rb_sdl2/filesystem.rb
Class Method Summary collapse
-
.base_path ⇒ Object
RbSDL2 にロードされた SDL2 の配置パスを戻す。 パスの末尾にはパスの区切り文字がかならずある。 パスの区切り記号は環境依存である。Windows であれば “" が使われる。 Ruby は環境依存のパスの区切り文字を正しく取り扱うことができる。.
-
.pref_path(org_name, app_name) ⇒ Object
アプリケーションが書き込むことのできるパスを戻す。 このパスはユーザ毎に存在し、かつアプリケーション固有のものであり OS によって保証されている。 org_name, app_name 引数はパスの生成に利用される。引数にパスの区切り記号がある場合はそれを取り除く。 ここに SDL2 が提示した守るべきルールの要約を記す。 - アプリケーション内でこのメソッドw呼び出す際は org_name は常に同じ文字列を使うこと。 - アプリケーションごとに違う app_name を使うこと.
Class Method Details
.base_path ⇒ Object
RbSDL2 にロードされた SDL2 の配置パスを戻す。 パスの末尾にはパスの区切り文字がかならずある。 パスの区切り記号は環境依存である。Windows であれば “" が使われる。 Ruby は環境依存のパスの区切り文字を正しく取り扱うことができる。
10 11 12 13 14 15 |
# File 'lib/rb_sdl2/filesystem.rb', line 10 def base_path # 戻り値のポインターはアプリケーション側で開放する。 ptr = SDLPointer.new(::SDL.GetBasePath) raise RbSDL2Error if ptr.null? ptr.to_s end |
.pref_path(org_name, app_name) ⇒ Object
アプリケーションが書き込むことのできるパスを戻す。 このパスはユーザ毎に存在し、かつアプリケーション固有のものであり OS によって保証されている。 org_name, app_name 引数はパスの生成に利用される。引数にパスの区切り記号がある場合はそれを取り除く。 ここに SDL2 が提示した守るべきルールの要約を記す。
-
アプリケーション内でこのメソッドw呼び出す際は org_name は常に同じ文字列を使うこと。
-
アプリケーションごとに違う app_name を使うこと.
-
アプリケーションに一度割り当てた app_name は変更しないこと。
-
使用する文字はアルファベット, 数字, 空白のみにすること.
注意: このメソッドを呼ぶと SDL はこのメソッドが戻すパスを実際に作成する。 書き込みを行わなかった場合、空のフォルダーが残る。 引数に空文字を渡しすことも、また既存のフォルダーになるように引数を与えることもできる。 SDL が知りたいことはアプリケーションがアクセス可能かどうかだけだ。 エラーが出るかどうかはユーザが設定するパスのアクセス制限による。
31 32 33 34 35 36 |
# File 'lib/rb_sdl2/filesystem.rb', line 31 def pref_path(org_name, app_name) # 戻り値のポインターはアプリケーション側で開放する。 ptr = SDLPointer.new(::SDL.GetPrefPath(SDL.str_to_sdl(org_name), SDL.str_to_sdl(app_name))) raise RbSDL2Error if ptr.null? ptr.to_s end |