- 691 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 20:15:55 ]
- >>676
たぶんこんな感じかな。テストしてないので動作するか分からないけど static SQInteger bitmap_getgraphics(HSQUIRRELVM v){ Bitmap *b; //Bitmapのポインタを得る //Bitmap_tagはBitmapクラスを登録したときのタイプタグ if(SQ_FAILED(sq_getinstanceup(v,1,(SQUserPointer*)&b,(SQUserPointer)Bitmap_typetag))) return 0; //Bクラスのインスタンスの作成 //B_handleはBクラスを登録したときのハンドル sq_pushobject(v,B_handle); sq_createinstance(v,sq_gettop(v)); sq_remove(v,-2); sq_setinstanceup(v,-1,&b->getGraphics()); return 1; } BitmapとBのクラスはすでに登録されているものとしします。 ちなみにクラス登録時はこんな感じ //クラス登録 //class_nameにクラス名 sq_pushstring(v, class_name, -1); sq_newclass(v, SQFalse); //クラスハンドルの獲得 //class_handleに用意したクラスハンドルへのポインタ sq_getstackobj(v,-1,class_handle); //クラスハンドルタグの設定 //class_tagにクラスのタイプタグ sq_settypetag(v,-1,class_tag);
|

|