/**
         * この関数は、インスタンスを初期化します。
         * 継承先のクラスから呼び出してください。
         * @param i_param
         * カメラパラメータオブジェクト。このサイズは、{@link #detectMarker}に入力する画像と同じサイズである必要があります。
         * @
         */
        protected void initInstance(NyARParam i_param)
        {
            //初期化済?
              Debug.Assert(this._initialized == false);

              NyARIntSize scr_size = i_param.getScreenSize();
              // 解析オブジェクトを作る
              this._transmat = new NyARTransMat(i_param);
              this._thdetect = new NyARHistogramAnalyzer_SlidePTile(15);

              // 2値画像バッファを作る
              this._gs_raster = new NyARGrayscaleRaster(scr_size.w, scr_size.h);
              this._initialized = true;
              //コールバックハンドラ
              this._detectmarker = new DetectSquare(i_param);
              this._offset = new NyARRectOffset();
              return;
        }
        /**
         * この関数は、インスタンスを初期化します。
         * 継承先のクラスから呼び出してください。
         * @param i_param
         * カメラパラメータオブジェクト。このサイズは、{@link #detectMarker}に入力する画像と同じサイズである必要があります。
         * @param i_encoder
         * IDマーカの値エンコーダを指定します。
         * @param i_marker_width
         * マーカの物理縦横サイズをmm単位で指定します。
         * @
         */
        protected void InitInstance(NyARParam i_param, INyIdMarkerDataEncoder i_encoder, double i_marker_width)
        {
            //初期化済?
              Debug.Assert(this._initialized == false);

              NyARIntSize scr_size = i_param.getScreenSize();
              // 解析オブジェクトを作る
              this._square_detect = new RleDetector(
              i_param,
              i_encoder,
              new NyIdMarkerPickup());
              this._transmat = new NyARTransMat(i_param);

              // 2値画像バッファを作る
              this._gs_raster = new NyARGrayscaleRaster(scr_size.w, scr_size.h);
              this._histmaker = (INyARHistogramFromRaster)this._gs_raster.createInterface(typeof(INyARHistogramFromRaster));
              //ワーク用のデータオブジェクトを2個作る
              this._data_current = i_encoder.CreateDataInstance();
              this._threshold_detect = new NyARHistogramAnalyzer_SlidePTile(15);
              this._initialized = true;
              this._is_active = false;
              this._offset = new NyARRectOffset();
              this._offset.setSquare(i_marker_width);
              return;
        }