예제 #1
0
        /// <summary>
        /// Sends a binary channel join command.
        /// </summary>
        /// <param name="channelName">The name of the channel to join.</param>
        /// <param name="method">The specific way by which to join.  This should typically be
        /// set to <see cref="JoinMethod">JoinMethod.NoCreate</see>.</param>
        public virtual void JoinChannel(string channelName, JoinMethod method)
        {
            if (string.IsNullOrEmpty(channelName))
            {
                throw new ArgumentNullException(Strings.param_channelName);
            }

            BncsPacket pck = new BncsPacket((byte)BncsPacketId.JoinChannel);

            pck.InsertInt32((int)method);
            pck.InsertCString(channelName);

            Send(pck);
        }
예제 #2
0
        public void Stop(JoinMethod join)
        {
            bool doJoin = false;

            lock (_lock)
            {
                if (_running)
                {
                    _running = false;
#if WINRT
                    if (_task != null)
#elif COMPACT
                    if (_thread != null)
#else
                    if (_thread != null && _thread.IsAlive)
#endif
                    {
                        doJoin = true;
                    }
                }
            }

#if WINRT
            if (doJoin && join == JoinMethod.Join)
            {
                _task.Wait();
                _task = null;
            }
#else
            if (doJoin && join == JoinMethod.Join && _thread != null)
            {
                _thread.Join();
                _thread = null;
            }
#endif
        }
 public override void JoinChannel(string channelName, JoinMethod method)
 {
     EnqueueNewChannelEvents(channelName);
 }
예제 #4
0
        /// <summary>
        /// Sends a binary channel join command.
        /// </summary>
        /// <param name="channelName">The name of the channel to join.</param>
        /// <param name="method">The specific way by which to join.  This should typically be 
        /// set to <see cref="JoinMethod">JoinMethod.NoCreate</see>.</param>
        public virtual void JoinChannel(string channelName, JoinMethod method)
        {
            if (string.IsNullOrEmpty(channelName))
                throw new ArgumentNullException(Strings.param_channelName);

            BncsPacket pck = new BncsPacket((byte)BncsPacketId.JoinChannel);
            pck.InsertInt32((int)method);
            pck.InsertCString(channelName);

            Send(pck);
        }
예제 #5
0
        static FunctionMethodCreator()
        {
            methodList = new Dictionary <string, FunctionMethod>();
            //キャラクタデータ系
            methodList["GETCHARA"]      = new GetcharaMethod();
            methodList["GETSPCHARA"]    = new GetspcharaMethod();
            methodList["CSVNAME"]       = new CsvStrDataMethod(CharacterStrData.NAME);
            methodList["CSVCALLNAME"]   = new CsvStrDataMethod(CharacterStrData.CALLNAME);
            methodList["CSVNICKNAME"]   = new CsvStrDataMethod(CharacterStrData.NICKNAME);
            methodList["CSVMASTERNAME"] = new CsvStrDataMethod(CharacterStrData.MASTERNAME);
            methodList["CSVCSTR"]       = new CsvcstrMethod();
            methodList["CSVBASE"]       = new CsvDataMethod(CharacterIntData.BASE);
            methodList["CSVABL"]        = new CsvDataMethod(CharacterIntData.ABL);
            methodList["CSVMARK"]       = new CsvDataMethod(CharacterIntData.MARK);
            methodList["CSVEXP"]        = new CsvDataMethod(CharacterIntData.EXP);
            methodList["CSVRELATION"]   = new CsvDataMethod(CharacterIntData.RELATION);
            methodList["CSVTALENT"]     = new CsvDataMethod(CharacterIntData.TALENT);
            methodList["CSVCFLAG"]      = new CsvDataMethod(CharacterIntData.CFLAG);
            methodList["CSVEQUIP"]      = new CsvDataMethod(CharacterIntData.EQUIP);
            methodList["CSVJUEL"]       = new CsvDataMethod(CharacterIntData.JUEL);
            methodList["FINDCHARA"]     = new FindcharaMethod(false);
            methodList["FINDLASTCHARA"] = new FindcharaMethod(true);
            methodList["EXISTCSV"]      = new ExistCsvMethod();

            //汎用処理系
            methodList["VARSIZE"]        = new VarsizeMethod();
            methodList["CHKFONT"]        = new CheckfontMethod();
            methodList["CHKDATA"]        = new CheckdataMethod("CHKDATA", EraSaveFileType.Normal);
            methodList["ISSKIP"]         = new IsSkipMethod();
            methodList["MOUSESKIP"]      = new MesSkipMethod(true);
            methodList["MESSKIP"]        = new MesSkipMethod(false);
            methodList["GETCOLOR"]       = new GetColorMethod(false);
            methodList["GETDEFCOLOR"]    = new GetColorMethod(true);
            methodList["GETFOCUSCOLOR"]  = new GetFocusColorMethod();
            methodList["GETBGCOLOR"]     = new GetBGColorMethod(false);
            methodList["GETDEFBGCOLOR"]  = new GetBGColorMethod(true);
            methodList["GETSTYLE"]       = new GetStyleMethod();
            methodList["GETFONT"]        = new GetFontMethod();
            methodList["BARSTR"]         = new BarStringMethod();
            methodList["CURRENTALIGN"]   = new CurrentAlignMethod();
            methodList["CURRENTREDRAW"]  = new CurrentRedrawMethod();
            methodList["COLOR_FROMNAME"] = new ColorFromNameMethod();
            methodList["COLOR_FROMRGB"]  = new ColorFromRGBMethod();

            //TODO:1810
            //methodList["CHKVARDATA"] = new CheckdataStrMethod("CHKVARDATA", EraSaveFileType.Var);
            methodList["CHKCHARADATA"] = new CheckdataStrMethod("CHKCHARADATA", EraSaveFileType.CharVar);
            //methodList["CHKGLOBALDATA"] = new CheckdataMethod("CHKGLOBALDATA", EraSaveFileType.Global);
            //methodList["FIND_VARDATA"] = new FindFilesMethod("FIND_VARDATA", EraSaveFileType.Var);
            methodList["FIND_CHARADATA"] = new FindFilesMethod("FIND_CHARADATA", EraSaveFileType.CharVar);

            //定数取得
            methodList["MONEYSTR"]       = new MoneyStrMethod();
            methodList["PRINTCPERLINE"]  = new GetPrintCPerLineMethod();
            methodList["PRINTCLENGTH"]   = new PrintCLengthMethod();
            methodList["SAVENOS"]        = new GetSaveNosMethod();
            methodList["GETTIME"]        = new GettimeMethod();
            methodList["GETTIMES"]       = new GettimesMethod();
            methodList["GETMILLISECOND"] = new GetmsMethod();
            methodList["GETSECOND"]      = new GetSecondMethod();

            //数学関数
            methodList["RAND"]     = new RandMethod();
            methodList["MIN"]      = new MaxMethod(false);
            methodList["MAX"]      = new MaxMethod(true);
            methodList["ABS"]      = new AbsMethod();
            methodList["POWER"]    = new PowerMethod();
            methodList["SQRT"]     = new SqrtMethod();
            methodList["CBRT"]     = new CbrtMethod();
            methodList["LOG"]      = new LogMethod();
            methodList["LOG10"]    = new LogMethod(10.0d);
            methodList["EXPONENT"] = new ExpMethod();
            methodList["SIGN"]     = new SignMethod();
            methodList["LIMIT"]    = new GetLimitMethod();

            //変数操作系
            methodList["SUMARRAY"]        = new SumArrayMethod();
            methodList["SUMCARRAY"]       = new SumArrayMethod(true);
            methodList["MATCH"]           = new MatchMethod();
            methodList["CMATCH"]          = new MatchMethod(true);
            methodList["GROUPMATCH"]      = new GroupMatchMethod();
            methodList["NOSAMES"]         = new NosamesMethod();
            methodList["ALLSAMES"]        = new AllsamesMethod();
            methodList["MAXARRAY"]        = new MaxArrayMethod();
            methodList["MAXCARRAY"]       = new MaxArrayMethod(true);
            methodList["MINARRAY"]        = new MaxArrayMethod(false, false);
            methodList["MINCARRAY"]       = new MaxArrayMethod(true, false);
            methodList["GETBIT"]          = new GetbitMethod();
            methodList["GETNUM"]          = new GetnumMethod();
            methodList["GETPALAMLV"]      = new GetPalamLVMethod();
            methodList["GETEXPLV"]        = new GetExpLVMethod();
            methodList["FINDELEMENT"]     = new FindElementMethod(false);
            methodList["FINDLASTELEMENT"] = new FindElementMethod(true);
            methodList["INRANGE"]         = new InRangeMethod();
            methodList["INRANGEARRAY"]    = new InRangeArrayMethod();
            methodList["INRANGECARRAY"]   = new InRangeArrayMethod(true);
            methodList["GETNUMB"]         = new GetnumMethod();

            methodList["ARRAYMSORT"] = new ArrayMultiSortMethod();

            //文字列操作系
            methodList["STRLENS"]     = new StrlenMethod();
            methodList["STRLENSU"]    = new StrlenuMethod();
            methodList["SUBSTRING"]   = new SubstringMethod();
            methodList["SUBSTRINGU"]  = new SubstringuMethod();
            methodList["STRFIND"]     = new StrfindMethod(false);
            methodList["STRFINDU"]    = new StrfindMethod(true);
            methodList["STRCOUNT"]    = new StrCountMethod();
            methodList["TOSTR"]       = new ToStrMethod();
            methodList["TOINT"]       = new ToIntMethod();
            methodList["TOUPPER"]     = new StrChangeStyleMethod(StrFormType.Upper);
            methodList["TOLOWER"]     = new StrChangeStyleMethod(StrFormType.Lower);
            methodList["TOHALF"]      = new StrChangeStyleMethod(StrFormType.Half);
            methodList["TOFULL"]      = new StrChangeStyleMethod(StrFormType.Full);
            methodList["LINEISEMPTY"] = new LineIsEmptyMethod();
            methodList["REPLACE"]     = new ReplaceMethod();
            methodList["UNICODE"]     = new UnicodeMethod();
            methodList["UNICODEBYTE"] = new UnicodeByteMethod();
            methodList["CONVERT"]     = new ConvertIntMethod();
            methodList["ISNUMERIC"]   = new IsNumericMethod();
            methodList["ESCAPE"]      = new EscapeMethod();
            methodList["ENCODETOUNI"] = new EncodeToUniMethod();
            methodList["CHARATU"]     = new CharAtMethod();
            methodList["GETLINESTR"]  = new GetLineStrMethod();
            methodList["STRFORM"]     = new StrFormMethod();
            methodList["STRJOIN"]     = new JoinMethod();

            methodList["GETCONFIG"]  = new GetConfigMethod(true);
            methodList["GETCONFIGS"] = new GetConfigMethod(false);

            //html系
            methodList["HTML_GETPRINTEDSTR"]  = new HtmlGetPrintedStrMethod();
            methodList["HTML_POPPRINTINGSTR"] = new HtmlPopPrintingStrMethod();
            methodList["HTML_TOPLAINTEXT"]    = new HtmlToPlainTextMethod();
            methodList["HTML_ESCAPE"]         = new HtmlEscapeMethod();


            //画像処理系
            methodList["SPRITECREATED"] = new SpriteStateMethod();
            methodList["SPRITEWIDTH"]   = new SpriteStateMethod();
            methodList["SPRITEHEIGHT"]  = new SpriteStateMethod();
            methodList["SPRITEMOVE"]    = new SpriteSetPosMethod();
            methodList["SPRITESETPOS"]  = new SpriteSetPosMethod();
            methodList["SPRITEPOSX"]    = new SpriteStateMethod();
            methodList["SPRITEPOSY"]    = new SpriteStateMethod();

            methodList["CLIENTWIDTH"]  = new ClientSizeMethod();
            methodList["CLIENTHEIGHT"] = new ClientSizeMethod();

            methodList["GETKEY"]          = new GetKeyStateMethod();
            methodList["GETKEYTRIGGERED"] = new GetKeyStateMethod();
            methodList["MOUSEX"]          = new MousePosMethod();
            methodList["MOUSEY"]          = new MousePosMethod();
            methodList["ISACTIVE"]        = new IsActiveMethod();
            methodList["SAVETEXT"]        = new SaveTextMethod();
            methodList["LOADTEXT"]        = new LoadTextMethod();


            /*1824まで封印
             * //methodList["GCREATED"] = new GraphicsStateMethod();// ("GCREATED");
             * //methodList["GWIDTH"] = new GraphicsStateMethod();//("GWIDTH");
             * //methodList["GHEIGHT"] = new GraphicsStateMethod();//("GHEIGHT");
             * //methodList["GGETCOLOR"] = new GraphicsGetColorMethod();
             * //methodList["SPRITEGETCOLOR"] = new SpriteGetColorMethod();
             *
             * //methodList["GCREATE"] = new GraphicsCreateMethod();
             * //methodList["GCREATEFROMFILE"] = new GraphicsCreateFromFileMethod();
             * //methodList["GDISPOSE"] = new GraphicsDisposeMethod();
             * //methodList["GCLEAR"] = new GraphicsClearMethod();
             * //methodList["GFILLRECTANGLE"] = new GraphicsFillRectangleMethod();
             * //methodList["GDRAWSPRITE"] = new GraphicsDrawSpriteMethod();
             * //methodList["GSETCOLOR"] = new GraphicsSetColorMethod();
             * //methodList["GDRAWG"] = new GraphicsDrawGMethod();
             * //methodList["GDRAWGWITHMASK"] = new GraphicsDrawGWithMaskMethod();
             *
             * //methodList["GSETBRUSH"] = new GraphicsSetBrushMethod();
             * //methodList["GSETFONT"] = new GraphicsSetFontMethod();
             * //methodList["GSETPEN"] = new GraphicsSetPenMethod();
             *
             * //methodList["SPRITECREATE"] = new SpriteCreateMethod();
             * //methodList["SPRITEDISPOSE"] = new SpriteDisposeMethod();
             *
             * //methodList["CBGSETG"] = new CBGSetGraphicsMethod();
             * //methodList["CBGSETSPRITE"] = new CBGSetCIMGMethod();
             * //methodList["CBGCLEAR"] = new CBGClearMethod();
             *
             * //methodList["CBGCLEARBUTTON"] = new CBGClearButtonMethod();
             * //methodList["CBGREMOVERANGE"] = new CBGRemoveRangeMethod();
             * //methodList["CBGREMOVEBMAP"] = new CBGRemoveBMapMethod();
             * //methodList["CBGSETBMAPG"] = new CBGSetBMapGMethod();
             * //methodList["CBGSETBUTTONSPRITE"] = new CBGSETButtonSpriteMethod();
             *
             * //methodList["GSAVE"] = new GraphicsSaveMethod();
             * //methodList["GLOAD"] = new GraphicsLoadMethod();
             */



            //1823 自分の関数名を知っていた方が何かと便利なので覚えさせることにした
            foreach (var pair in methodList)
            {
                pair.Value.SetMethodName(pair.Key);
            }
        }
예제 #6
0
        /// <summary>
        /// Joining the meshes according to their shared position
        /// </summary>
        /// <param name="meshes"></param>
        /// <returns></returns>
        public static DataTable JoinMeshesToDataTable(List <Mesh> meshes, JoinMethod joinMethod = JoinMethod.Exact, double threshold = 0.01)
        {
            DataTable dat = new DataTable();

            dat.TableName = "MultivariateDataTable";

            if (meshes == null || meshes.Count() == 0)
            {
                throw new ArgumentNullException("Meshes");
            }

            try
            {
                for (int i = 0; i < meshes.Count(); i++)
                {
                    dat.Columns.Add(new DataColumn(meshes[i].Name, typeof(double)));
                }

                //Iterate through all points in mesh 0
                for (int i = 0; i < meshes[0].Vertices.Count(); i++)
                {
                    DataRow dr = dat.NewRow();

                    dr[0] = meshes[0].Vertices[i].Value[0];

                    if (meshes.Count() > 1)
                    {
                        for (int j = 1; j < meshes.Count(); j++)
                        {
                            double value = 0;

                            //Searches the point, which either exactly fits to the point of mesh 0 or is the closest
                            if (joinMethod == JoinMethod.Exact)
                            {
                                value = meshes[j].Vertices.FirstOrDefault(x => meshes[0].Vertices[i].X == x.X && meshes[0].Vertices[i].Y == x.Y && meshes[0].Vertices[i].Z == meshes[0].Vertices[i].Z).Value[0];
                            }
                            else
                            {
                                LocationTimeValue loc = meshes[j].Vertices.OrderBy(x => meshes[0].Vertices[i].GetEuclideanDistance(x)).FirstOrDefault();
                                if (loc.GetEuclideanDistance(meshes[0].Vertices[i]) <= threshold)
                                {
                                    value = loc.Value[0];
                                }
                                else
                                {
                                    throw new Exception("All points exceed the threshold value.");
                                }
                            }

                            dr[j] = value;
                        }
                    }

                    //Adding the row to the data table
                    dat.Rows.Add(dr);
                }
            }
            catch
            {
                throw new Exception("Cannot join the tables");
            }

            return(dat);
        }
예제 #7
0
        /// <summary>
        /// Joining the meshes according to their shared position
        /// </summary>
        /// <param name="meshes"></param>
        /// <returns></returns>
        public static Mesh JoinMeshes(List <Mesh> meshes, JoinMethod joinMethod = JoinMethod.Exact, double threshold = 0.01)
        {
            if (meshes == null || meshes.Count() == 0)
            {
                throw new ArgumentNullException("Meshes");
            }

            Mesh ret = new Mesh(meshes[0]);

            try
            {
                //Iterate through all points in mesh 0
                for (int i = 0; i < ret.Vertices.Count(); i++)
                {
                    if (meshes.Count() > 1)
                    {
                        for (int j = 1; j < meshes.Count(); j++)
                        {
                            double value = 0;

                            //Searches the point, which either exactly fits to the point of mesh 0 or is the closest
                            if (joinMethod == JoinMethod.Exact)
                            {
                                value = meshes[j].Vertices.FirstOrDefault(x => ret.Vertices[i].X == x.X && ret.Vertices[i].Y == x.Y && ret.Vertices[i].Z == x.Z).Value[0];
                            }
                            else if (joinMethod == JoinMethod.Threshold)
                            {
                                LocationTimeValue loc = meshes[j].Vertices.OrderBy(x => meshes[0].Vertices[i].GetEuclideanDistance(x)).FirstOrDefault();
                                if (loc.GetEuclideanDistance(meshes[0].Vertices[i]) <= threshold)
                                {
                                    value = loc.Value[0];
                                }
                                else
                                {
                                    throw new Exception("All points exceed the threshold value.");
                                }
                            }
                            else if (joinMethod == JoinMethod.Name)
                            {
                                value = meshes[j].Vertices.FirstOrDefault(x => ret.Vertices[i].Name == x.Name).Value[0];
                            }

                            if (value == 0)
                            {
                                ret.Vertices.RemoveAt(i);
                                i -= 1;
                                break;
                            }

                            ret.Vertices[i].Value.Add(value);
                        }
                    }
                }

                for (int i = 0; i < meshes.Count(); i++)
                {
                    ret.Properties.Add(new KeyValuePair <int, string>(i, meshes[i].Name));
                }
            }
            catch
            {
                throw new Exception("Cannot join the meshes");
            }

            return(ret);
        }
예제 #8
0
        public void Stop(JoinMethod join)
        {
            bool doJoin = false;
            lock (_lock)
            {
                if (_running)
                {
                    _running = false;
            #if WINRT
                    if (_task != null)
            #elif COMPACT
                    if( _thread != null )
            #else
                    if( _thread != null && _thread.IsAlive )
            #endif
                    {
                        doJoin = true;
                    }
                }
            }

            #if WINRT
            if (doJoin && join == JoinMethod.Join)
            {
                _task.Wait();
                _task = null;
            }
            #else
            if (doJoin && join == JoinMethod.Join && _thread != null )
            {
                _thread.Join();
                _thread = null;
            }
            #endif
        }
예제 #9
0
        static FunctionMethodCreator()
        {
            methodList = new Dictionary <string, FunctionMethod>();
            //キャラクタデータ系
            methodList["GETCHARA"]      = new GetcharaMethod();
            methodList["GETSPCHARA"]    = new GetspcharaMethod();
            methodList["CSVNAME"]       = new CsvStrDataMethod(CharacterStrData.NAME);
            methodList["CSVCALLNAME"]   = new CsvStrDataMethod(CharacterStrData.CALLNAME);
            methodList["CSVNICKNAME"]   = new CsvStrDataMethod(CharacterStrData.NICKNAME);
            methodList["CSVMASTERNAME"] = new CsvStrDataMethod(CharacterStrData.MASTERNAME);
            methodList["CSVCSTR"]       = new CsvcstrMethod();
            methodList["CSVBASE"]       = new CsvDataMethod(CharacterIntData.BASE);
            methodList["CSVABL"]        = new CsvDataMethod(CharacterIntData.ABL);
            methodList["CSVMARK"]       = new CsvDataMethod(CharacterIntData.MARK);
            methodList["CSVEXP"]        = new CsvDataMethod(CharacterIntData.EXP);
            methodList["CSVRELATION"]   = new CsvDataMethod(CharacterIntData.RELATION);
            methodList["CSVTALENT"]     = new CsvDataMethod(CharacterIntData.TALENT);
            methodList["CSVCFLAG"]      = new CsvDataMethod(CharacterIntData.CFLAG);
            methodList["CSVEQUIP"]      = new CsvDataMethod(CharacterIntData.EQUIP);
            methodList["CSVJUEL"]       = new CsvDataMethod(CharacterIntData.JUEL);
            methodList["FINDCHARA"]     = new FindcharaMethod(false);
            methodList["FINDLASTCHARA"] = new FindcharaMethod(true);
            methodList["EXISTCSV"]      = new ExistCsvMethod();

            //汎用処理系
            methodList["VARSIZE"]        = new VarsizeMethod();
            methodList["CHKFONT"]        = new CheckfontMethod();
            methodList["CHKDATA"]        = new CheckdataMethod("CHKDATA", EraSaveFileType.Normal);
            methodList["ISSKIP"]         = new IsSkipMethod();
            methodList["MOUSESKIP"]      = new MesSkipMethod(true);
            methodList["MESSKIP"]        = new MesSkipMethod(false);
            methodList["GETCOLOR"]       = new GetColorMethod(false);
            methodList["GETDEFCOLOR"]    = new GetColorMethod(true);
            methodList["GETFOCUSCOLOR"]  = new GetFocusColorMethod();
            methodList["GETBGCOLOR"]     = new GetBGColorMethod(false);
            methodList["GETDEFBGCOLOR"]  = new GetBGColorMethod(true);
            methodList["GETSTYLE"]       = new GetStyleMethod();
            methodList["GETFONT"]        = new GetFontMethod();
            methodList["BARSTR"]         = new BarStringMethod();
            methodList["CURRENTALIGN"]   = new CurrentAlignMethod();
            methodList["CURRENTREDRAW"]  = new CurrentRedrawMethod();
            methodList["COLOR_FROMNAME"] = new ColorFromNameMethod();
            methodList["COLOR_FROMRGB"]  = new ColorFromRGBMethod();

            //TODO:1810
            //methodList["CHKVARDATA"] = new CheckdataStrMethod("CHKVARDATA", EraSaveFileType.Var);
            methodList["CHKCHARADATA"] = new CheckdataStrMethod("CHKCHARADATA", EraSaveFileType.CharVar);
            //methodList["CHKGLOBALDATA"] = new CheckdataMethod("CHKGLOBALDATA", EraSaveFileType.Global);
            //methodList["FIND_VARDATA"] = new FindFilesMethod("FIND_VARDATA", EraSaveFileType.Var);
            methodList["FIND_CHARADATA"] = new FindFilesMethod("FIND_CHARADATA", EraSaveFileType.CharVar);

            //定数取得
            methodList["MONEYSTR"]       = new MoneyStrMethod();
            methodList["PRINTCPERLINE"]  = new GetPrintCPerLineMethod();
            methodList["PRINTCLENGTH"]   = new PrintCLengthMethod();
            methodList["SAVENOS"]        = new GetSaveNosMethod();
            methodList["GETTIME"]        = new GettimeMethod();
            methodList["GETTIMES"]       = new GettimesMethod();
            methodList["GETMILLISECOND"] = new GetmsMethod();
            methodList["GETSECOND"]      = new GetSecondMethod();

            //数学関数
            methodList["RAND"]     = new RandMethod();
            methodList["MIN"]      = new MaxMethod(false);
            methodList["MAX"]      = new MaxMethod(true);
            methodList["ABS"]      = new AbsMethod();
            methodList["POWER"]    = new PowerMethod();
            methodList["SQRT"]     = new SqrtMethod();
            methodList["CBRT"]     = new CbrtMethod();
            methodList["LOG"]      = new LogMethod();
            methodList["LOG10"]    = new LogMethod(10.0d);
            methodList["EXPONENT"] = new ExpMethod();
            methodList["SIGN"]     = new SignMethod();
            methodList["LIMIT"]    = new GetLimitMethod();

            //変数操作系
            methodList["SUMARRAY"]        = new SumArrayMethod();
            methodList["SUMCARRAY"]       = new SumArrayMethod(true);
            methodList["MATCH"]           = new MatchMethod();
            methodList["CMATCH"]          = new MatchMethod(true);
            methodList["GROUPMATCH"]      = new GroupMatchMethod();
            methodList["NOSAMES"]         = new NosamesMethod();
            methodList["ALLSAMES"]        = new AllsamesMethod();
            methodList["MAXARRAY"]        = new MaxArrayMethod();
            methodList["MAXCARRAY"]       = new MaxArrayMethod(true);
            methodList["MINARRAY"]        = new MaxArrayMethod(false, false);
            methodList["MINCARRAY"]       = new MaxArrayMethod(true, false);
            methodList["GETBIT"]          = new GetbitMethod();
            methodList["GETNUM"]          = new GetnumMethod();
            methodList["GETPALAMLV"]      = new GetPalamLVMethod();
            methodList["GETEXPLV"]        = new GetExpLVMethod();
            methodList["FINDELEMENT"]     = new FindElementMethod(false);
            methodList["FINDLASTELEMENT"] = new FindElementMethod(true);
            methodList["INRANGE"]         = new InRangeMethod();
            methodList["INRANGEARRAY"]    = new InRangeArrayMethod();
            methodList["INRANGECARRAY"]   = new InRangeArrayMethod(true);
            methodList["GETNUMB"]         = new GetnumMethod();


            //文字列操作系
            methodList["STRLENS"]     = new StrlenMethod();
            methodList["STRLENSU"]    = new StrlenuMethod();
            methodList["SUBSTRING"]   = new SubstringMethod();
            methodList["SUBSTRINGU"]  = new SubstringuMethod();
            methodList["STRFIND"]     = new StrfindMethod(false);
            methodList["STRFINDU"]    = new StrfindMethod(true);
            methodList["STRCOUNT"]    = new StrCountMethod();
            methodList["TOSTR"]       = new ToStrMethod();
            methodList["TOINT"]       = new ToIntMethod();
            methodList["TOUPPER"]     = new StrChangeStyleMethod(StrFormType.Upper);
            methodList["TOLOWER"]     = new StrChangeStyleMethod(StrFormType.Lower);
            methodList["TOHALF"]      = new StrChangeStyleMethod(StrFormType.Half);
            methodList["TOFULL"]      = new StrChangeStyleMethod(StrFormType.Full);
            methodList["LINEISEMPTY"] = new LineIsEmptyMethod();
            methodList["REPLACE"]     = new ReplaceMethod();
            methodList["UNICODE"]     = new UnicodeMethod();
            methodList["UNICODEBYTE"] = new UnicodeByteMethod();
            methodList["CONVERT"]     = new ConvertIntMethod();
            methodList["ISNUMERIC"]   = new IsNumericMethod();
            methodList["ESCAPE"]      = new EscapeMethod();
            methodList["ENCODETOUNI"] = new EncodeToUniMethod();
            methodList["CHARATU"]     = new CharAtMethod();
            methodList["GETLINESTR"]  = new GetLineStrMethod();
            methodList["STRFORM"]     = new StrFormMethod();
            methodList["STRJOIN"]     = new JoinMethod();

            methodList["GETCONFIG"]  = new GetConfigMethod(true);
            methodList["GETCONFIGS"] = new GetConfigMethod(false);

            //html系
            methodList["HTML_GETPRINTEDSTR"]  = new HtmlGetPrintedStrMethod();
            methodList["HTML_POPPRINTINGSTR"] = new HtmlPopPrintingStrMethod();
            methodList["HTML_TOPLAINTEXT"]    = new HtmlToPlainTextMethod();
            methodList["HTML_ESCAPE"]         = new HtmlEscapeMethod();
        }