GSG.NET.XML 216 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308
  1. <?xml version="1.0"?>
  2. <doc>
  3. <assembly>
  4. <name>GSG.NET</name>
  5. </assembly>
  6. <members>
  7. <member name="T:GSG.NET.Concurrent.DistributedThread">
  8. <summary>
  9. Muti Core Thread
  10. </summary>
  11. </member>
  12. <member name="T:GSG.NET.Concurrent.LockUtils">
  13. <summary>
  14. <para>Lock 처리 Utility</para>
  15. </summary>
  16. </member>
  17. <member name="M:GSG.NET.Concurrent.LockUtils.TryLock(System.Object)">
  18. <summary>
  19. <para>arg object try lock</para>
  20. </summary>
  21. </member>
  22. <member name="M:GSG.NET.Concurrent.LockUtils.Lock(System.Object)">
  23. <summary>
  24. <para>arg object lock을 얻을때까지 blocking</para>
  25. <para>동일 Thread의 경우 Lock은 Unlock 하지 않고 2번 이상 호출이 가능하다.</para>
  26. <para>Unlock을 pair하지 않을 경우 Notify가 동작하지 않으며 arg object에 대해
  27. Unlock을 하는 순간 Notify를 이용한 다음 동작이 수행된다.</para>
  28. </summary>
  29. </member>
  30. <member name="M:GSG.NET.Concurrent.LockUtils.Unlock(System.Object)">
  31. <summary>
  32. <para>arg object unlock</para>
  33. </summary>
  34. </member>
  35. <member name="M:GSG.NET.Concurrent.LockUtils.Wait">
  36. <summary>
  37. <para>무한대기</para>
  38. <para>0을 입력할 경우에만 false반환되며, 나머지는 true</para>
  39. </summary>
  40. </member>
  41. <member name="M:GSG.NET.Concurrent.LockUtils.Wait(System.Int32)">
  42. <summary>
  43. <para>Notify를 하지 않고 Wait만 하는 경우 사용.</para>
  44. <para>Threadsafe한 object을 생성하여 단순 대기.</para>
  45. <para>Notify를 이용하여 깨어나지 않으므로 항상 False 반환.</para>
  46. <para>-</para>
  47. <para>-1 or Timeout.Infinite를 넣을 경우 무한대기</para>
  48. <para>0일 경우 바로 return 됨</para>
  49. </summary>
  50. <param name="ms">milli-second</param>
  51. </member>
  52. <member name="M:GSG.NET.Concurrent.LockUtils.WaitK(System.Int32,System.Object)">
  53. <summary>
  54. 초단위 지연, K: 1000
  55. <para>0보다 작으면 무한대기</para>
  56. </summary>
  57. </member>
  58. <member name="M:GSG.NET.Concurrent.LockUtils.WaitK(System.Int32)">
  59. <summary>
  60. 초단위 지연, 기본 1초, K: 1000
  61. <para>0보다 작으면 무한대기</para>
  62. </summary>
  63. </member>
  64. <member name="M:GSG.NET.Concurrent.LockUtils.Wait100(System.Int32)">
  65. <summary>
  66. 100ms 단위 지연, 기본 100ms
  67. <para>0보다 작으면 무한대기</para>
  68. </summary>
  69. </member>
  70. <member name="M:GSG.NET.Concurrent.LockUtils.Wait(System.Object)">
  71. <summary>
  72. <para>Wait를 호출하는 순간 모든 Thread의 Lock이 해제된다. => Wait와 Lock을 같은 객체로 사용하지 않는것이 좋다.</para>
  73. <para>Wait를 했다 하더라도 Lock, Unlock의 회수는 pair가 되어야 한다.</para>
  74. <para>-</para>
  75. <para>0을 입력할 경우에만 false반환되며, 나머지는 true</para>
  76. <para>Notify로 깨어날 경우 true 반환.</para>
  77. <para>-</para>
  78. <para>lock 구문과 사용할 수 없다.</para>
  79. <para>Wait를 호출하는 순간 arg에 Lock이 모두 해제된다.</para>
  80. </summary>
  81. </member>
  82. <member name="M:GSG.NET.Concurrent.LockUtils.Wait(System.Int32,System.Object)">
  83. <summary>
  84. <para>Wait를 호출하는 순간 모든 Thread의 Lock이 해제된다. => Wait와 Lock을 같은 객체로 사용하지 않는것이 좋다.</para>
  85. <para>Wait를 했다 하더라도 Lock, Unlock의 회수는 pair가 되어야 한다.</para>
  86. <para>-</para>
  87. <para>Timeout발생 false</para>
  88. <para>Notify로 깨어날 경우 true 반환.</para>
  89. <para>-</para>
  90. <para>lock 구문과 사용할 수 없다.</para>
  91. <para>Wait를 호출하는 순간 arg에 Lock이 모두 해제된다.</para>
  92. <para>-</para>
  93. <para>-1 or Timeout.Infinite를 넣을 경우 무한대기</para>
  94. <para>0일 경우 바로 return 됨</para>
  95. </summary>
  96. <param name="ms">milli-second</param>
  97. <param name="obj"></param>
  98. </member>
  99. <member name="M:GSG.NET.Concurrent.LockUtils.NotifyAll(System.Object)">
  100. <summary>
  101. <para>arg에 대한 전체 Thread 깨움</para>
  102. </summary>
  103. </member>
  104. <member name="M:GSG.NET.Concurrent.SyncObject.Lock">
  105. <summary>
  106. 빠른 socket response 를 보정하기 위해서 Lock을 잡아둘경우
  107. LockUtils.Await의 Monitor.Wait에서 같이 깨워준다
  108. 이로서 Tcp Response를 보정할 수 있다.
  109. </summary>
  110. </member>
  111. <member name="M:GSG.NET.Concurrent.SyncObject.Await(System.Int32)">
  112. <summary>
  113. <para>Notify: true</para>
  114. <para>Timeout: false</para>
  115. </summary>
  116. </member>
  117. <member name="T:GSG.NET.Concurrent.Task4">
  118. <summary>
  119. Task, Parallel
  120. <para>Task 는 ThreadPool에서 동작하므로 PoolSize를 적절히 적용해야 빠르게 Task 를 생성한다</para>
  121. <para>-</para>
  122. <para>Go</para>
  123. <para>WaitClone, Clone</para>
  124. <para>WaitAny, WaitAll</para>
  125. </summary>
  126. </member>
  127. <member name="M:GSG.NET.Concurrent.Task4.Idle(System.Int32)">
  128. <summary>
  129. cpu 과도 사용 금지
  130. <para>매번 tick 회수(기본:100) 호출시 1ms 유휴시간</para>
  131. <para>static 이므로 application 기준 단위</para>
  132. <para>tick 0일 경우 no sleep</para>
  133. </summary>
  134. </member>
  135. <member name="P:GSG.NET.Concurrent.Task4.ThreadId">
  136. <summary>Windows Thread Id</summary>
  137. </member>
  138. <member name="M:GSG.NET.Concurrent.Task4.PoolSize(System.Int32,System.Int32)">
  139. <summary>
  140. min 최초 실행시 확보 및 유지, max 는 임계치
  141. <para>max 에 도달후 wait 되어 기존 thread 가 종료되면 다시 pool 에서 수행한다.</para>
  142. </summary>
  143. </member>
  144. <member name="M:GSG.NET.Concurrent.Task4.WaitEx(System.Threading.Tasks.Task)">
  145. <summary>
  146. Wait 에서 발생하는 에러처리+logging 확장함수
  147. <para>Waits for the System.Threading.Tasks.Task to complete execution.</para>
  148. <para>-</para>
  149. <para>Go 에서 구동된 Task 의 종료 및 에러처리 관리</para>
  150. <para>외부에서 exception 사용이 필요한 경우 Wait 사용</para>
  151. </summary>
  152. </member>
  153. <member name="M:GSG.NET.Concurrent.Task4.newActionEx(System.Action)">
  154. <summary>
  155. Exception 처리된 새로운 Action copy
  156. <para>Go 와 사용하는 경우에는 필요없으나 Parallel 과 사용할 경우 필요</para>
  157. </summary>
  158. </member>
  159. <member name="M:GSG.NET.Concurrent.Task4.callEx(System.Action)">
  160. <summary>실제 호출</summary>
  161. </member>
  162. <member name="M:GSG.NET.Concurrent.Task4.call(System.Action)">
  163. <summary>실제 호출</summary>
  164. </member>
  165. <member name="M:GSG.NET.Concurrent.Task4.Go(System.Action)">
  166. <summary>
  167. <para>Task 시작</para>
  168. <para>-</para>
  169. <para>Exception 처리</para>
  170. <para>exception 자체 logging</para>
  171. <para>-</para>
  172. <para>1. Wait 미사용</para>
  173. <para>미 처리시에도 crash 발생하지 않음</para>
  174. <para>-</para>
  175. <para>2. Wait 사용</para>
  176. <para>Method 내부에서 처리하지 않을 경우 Wait 에서는 반드시 에러처리 해야함</para>
  177. <para>-</para>
  178. <para>3. WaitEx 사용</para>
  179. <para>에러에 대한 자체 logging 지원, 별도 처리필요 없음</para>
  180. </summary>
  181. </member>
  182. <member name="M:GSG.NET.Concurrent.Task4.Go``1(System.Action{``0},``0)">
  183. <summary>
  184. <para>Task 시작</para>
  185. <para>Go 참조</para>
  186. </summary>
  187. </member>
  188. <member name="M:GSG.NET.Concurrent.Task4.Go``2(System.Action{``0,``1},``0,``1)">
  189. <summary>
  190. <para>Task 시작</para>
  191. <para>Go 참조</para>
  192. </summary>
  193. </member>
  194. <member name="M:GSG.NET.Concurrent.Task4.Go``3(System.Action{``0,``1,``2},``0,``1,``2)">
  195. <summary>
  196. <para>Task 시작</para>
  197. <para>Go 참조</para>
  198. </summary>
  199. </member>
  200. <member name="M:GSG.NET.Concurrent.Task4.WaitClone(System.Int32,System.Action)">
  201. <summary>
  202. Parallel
  203. <para>action 을 poolsize 만큼 복제 및 수행</para>
  204. <para>-</para>
  205. <para>Error 처리 필요없음</para>
  206. </summary>
  207. </member>
  208. <member name="M:GSG.NET.Concurrent.Task4.Clone(System.Int32,System.Action)">
  209. <summary>
  210. WaitClone 기능 동일, no wait
  211. <para>action 을 poolsize 만큼 복제 및 수행</para>
  212. <para>-</para>
  213. <para>Error 처리 필요없음</para>
  214. </summary>
  215. </member>
  216. <member name="M:GSG.NET.Concurrent.Task4.WaitAll(System.Action[])">
  217. <summary>
  218. Actions 수만큼 task 수행, 모두 완료될때 까지 method blocking
  219. <para>Error 처리 필요없음</para>
  220. </summary>
  221. </member>
  222. <member name="M:GSG.NET.Concurrent.Task4.WaitAll``1(System.Action{``0},``0[])">
  223. <summary>
  224. Arguments 수만큼 task 수행, 모두 완료될때 까지 method blocking
  225. <para>Error 처리 필요없음</para>
  226. </summary>
  227. </member>
  228. <member name="M:GSG.NET.Concurrent.Task4.WaitAll(System.Single,GSG.NET.Concurrent.TaskCancel,System.Action[])">
  229. <summary>
  230. Actions 수만큼 task 수행, 모두 완료될때 까지 method blocking
  231. <para>무한 timeout(-1)</para>
  232. <para>-</para>
  233. <para>timeout: false, 완료: true</para>
  234. <para>-</para>
  235. <para>Error 처리 필요없음</para>
  236. </summary>
  237. </member>
  238. <member name="M:GSG.NET.Concurrent.Task4.WaitAll``1(System.Single,GSG.NET.Concurrent.TaskCancel,System.Action{``0},``0[])">
  239. <summary>
  240. Action arguments 수만큼 task 수행, 모두 완료될때 까지 method blocking
  241. <para>무한 timeout(-1)</para>
  242. <para>-</para>
  243. <para>timeout: false, 완료: true</para>
  244. <para>-</para>
  245. <para>Error 처리 필요없음</para>
  246. </summary>
  247. </member>
  248. <member name="M:GSG.NET.Concurrent.Task4.WaitAny(System.Single,System.Action[])">
  249. <summary>
  250. Actions 수만큼 task 수행, 가장 빨리 끝나는 task 있을때까지 blocking
  251. <para>가장 빨리 끝난 method 의 index return, timeout 경우 -1</para>
  252. <para>무한 timeout(-1)</para>
  253. <para>-</para>
  254. <para>Error 처리 필요없음</para>
  255. </summary>
  256. </member>
  257. <member name="M:GSG.NET.Concurrent.Task4.WaitAny(System.Single,GSG.NET.Concurrent.TaskCancel,System.Action[])">
  258. <summary>
  259. Actions 수만큼 task 수행, 가장 빨리 끝나는 task 있을때까지 blocking
  260. <para>가장 빨리 끝난 method 의 index return, timeout 경우 -1</para>
  261. <para>무한 timeout(-1)</para>
  262. <para>-</para>
  263. <para>Error 처리 필요없음</para>
  264. <para>-</para>
  265. <para>TaskCancel.CancelWait 와 병행사용</para>
  266. <para>FastTask or timeout 이 발생하면 사용 필요</para>
  267. </summary>
  268. </member>
  269. <member name="M:GSG.NET.Concurrent.Task4.WaitAny``1(System.Single,System.Action{``0},``0[])">
  270. <summary>
  271. Action arguments 수만큼 task 수행, 가장 빨리 끝나는 task 있을때까지 method blocking
  272. <para>가장 빨리 끝난 arg 값을 return</para>
  273. <para>무한 timeout(-1)</para>
  274. <para>timeout 발생한 경우 default value 반환</para>
  275. <para>-</para>
  276. <para>Error 처리 필요없음</para>
  277. </summary>
  278. </member>
  279. <member name="M:GSG.NET.Concurrent.Task4.WaitAny``1(System.Single,GSG.NET.Concurrent.TaskCancel,System.Action{``0},``0[])">
  280. <summary>
  281. Action arguments 수만큼 task 수행, 가장 빨리 끝나는 task 있을때까지 method blocking
  282. <para>가장 빨리 끝난 arg 값을 return</para>
  283. <para>무한 timeout(-1)</para>
  284. <para>timeout 발생한 경우 default value 반환</para>
  285. <para>-</para>
  286. <para>Error 처리 필요없음</para>
  287. <para>-</para>
  288. <para>TaskCancel.CancelWait 와 병행사용</para>
  289. <para>FastTask or timeout 이 발생하면 사용 필요</para>
  290. </summary>
  291. </member>
  292. <member name="T:GSG.NET.Concurrent.TaskCancel">
  293. <summary>
  294. Task4's WaitAll, WaitAny 사용
  295. <para>Timeout 또는 잔여 Task 정리 작업</para>
  296. <para>-</para>
  297. <para>Task loop CancelReqd 코드 반영으로 Task 종료 체크</para>
  298. </summary>
  299. </member>
  300. <member name="M:GSG.NET.Concurrent.TaskCancel.Add(System.Threading.Tasks.Task)">
  301. <summary>Task 직접 add 하여 cancel 관리시 사용</summary>
  302. </member>
  303. <member name="M:GSG.NET.Concurrent.TaskCancel.Callback(System.Action)">
  304. <summary>Cancel method 호출시 callback 되는 Action 정의</summary>
  305. </member>
  306. <member name="P:GSG.NET.Concurrent.TaskCancel.Canceled">
  307. <summary>
  308. Task 종료 체크
  309. <para>Cancel requested</para>
  310. </summary>
  311. </member>
  312. <member name="M:GSG.NET.Concurrent.TaskCancel.WaitAll">
  313. <summary>
  314. Add 된 Tasks 종료 대기 + 객체 재사용 가능
  315. <para>모두 종료시 새로운 객체로 변경됨: 기존 객체 재사용 가능</para>
  316. </summary>
  317. </member>
  318. <member name="M:GSG.NET.Concurrent.TaskCancel.Cancel">
  319. <summary>Cancel trigger</summary>
  320. </member>
  321. <member name="T:GSG.NET.Concurrent.Thread4">
  322. <summary>
  323. .net4 convert version for ThreadUtils
  324. <para>Thread.Name은 1회만 세팅 가능</para>
  325. </summary>
  326. </member>
  327. <member name="M:GSG.NET.Concurrent.Thread4.Go(System.Action,System.Boolean)">
  328. <summary>Start</summary>
  329. </member>
  330. <member name="M:GSG.NET.Concurrent.Thread4.GoEx(System.Action,System.Boolean)">
  331. <summary>
  332. Start (내부 에러처리 포함)
  333. <para>Exception 처리 불필요</para>
  334. </summary>
  335. </member>
  336. <member name="M:GSG.NET.Concurrent.Thread4.Pooled(System.Threading.Thread)">
  337. <summary>source's thread pooled or not</summary>
  338. </member>
  339. <member name="M:GSG.NET.Concurrent.Thread4.Stop(System.Threading.Thread)">
  340. <summary>
  341. Interrupt
  342. <para>Wait,Sleep,Join 상태만 유효함</para>
  343. </summary>
  344. </member>
  345. <member name="T:GSG.NET.Concurrent.Threadable">
  346. <summary>
  347. <para>상속해서 사용하는 Thread Class</para>
  348. <para>1. Native Thread ID</para>
  349. </summary>
  350. </member>
  351. <member name="M:GSG.NET.Concurrent.Threadable.Run(System.Object)">
  352. <summary/>
  353. </member>
  354. <member name="M:GSG.NET.Concurrent.Threadable.#ctor">
  355. <summary/>
  356. </member>
  357. <member name="P:GSG.NET.Concurrent.Threadable.IsAlive">
  358. <summary>
  359. Thread alive or not
  360. </summary>
  361. </member>
  362. <member name="P:GSG.NET.Concurrent.Threadable.ThreadID">
  363. <summary>
  364. Native Thread ID
  365. </summary>
  366. </member>
  367. <member name="M:GSG.NET.Concurrent.Threadable.Start">
  368. <summary>
  369. Background thread로 시작한다.
  370. </summary>
  371. </member>
  372. <member name="M:GSG.NET.Concurrent.Threadable.Stop">
  373. <summary/>
  374. </member>
  375. <member name="M:GSG.NET.Concurrent.Threadable.Wait">
  376. <summary>
  377. <para>무한 대기, Awake를 하면 바로 실행된다.</para>
  378. </summary>
  379. </member>
  380. <member name="M:GSG.NET.Concurrent.Threadable.Wait(System.Int32)">
  381. <summary>
  382. <para>milli-second만큼 대기, Awake를 하면 바로 실행된다.</para>
  383. </summary>
  384. </member>
  385. <member name="M:GSG.NET.Concurrent.Threadable.Awake">
  386. <summary>
  387. Wait object을 깨워서 다음 동작 수행하게 함.
  388. </summary>
  389. </member>
  390. <member name="M:GSG.NET.Concurrent.Threadable.ElapsedTime(System.Int64)">
  391. <summary/>
  392. </member>
  393. <member name="P:GSG.NET.Concurrent.ThreadCancel.Canceled">
  394. <summary>
  395. Thread 종료 여부 체크
  396. <para>Cancel requested</para>
  397. </summary>
  398. </member>
  399. <member name="M:GSG.NET.Concurrent.ThreadCancel.Callback(System.Action)">
  400. <summary>Cancel method 호출시 callback 되는 Action 정의</summary>
  401. </member>
  402. <member name="M:GSG.NET.Concurrent.ThreadCancel.AddGo(System.Action)">
  403. <summary>Thread 생성 후 등록</summary>
  404. </member>
  405. <member name="M:GSG.NET.Concurrent.ThreadCancel.AddGoEx(System.Action)">
  406. <summary>Thread 생성 후 등록</summary>
  407. </member>
  408. <member name="M:GSG.NET.Concurrent.ThreadCancel.Cancel">
  409. <summary>
  410. Cancel trigger
  411. <para>Canceled flag 변경</para>
  412. </summary>
  413. </member>
  414. <member name="M:GSG.NET.Concurrent.ThreadCancel.StopWaitAll">
  415. <summary>
  416. <para>모든 thread stop(interrupt)</para>
  417. <para>Wait all thread end</para>
  418. <para>-</para>
  419. <para>새로운 CancellationTokenSource 등록!!</para>
  420. </summary>
  421. </member>
  422. <member name="T:GSG.NET.Concurrent.ThreadUtils">
  423. <summary>
  424. <para>Method 기반의 Thread 사용 class.</para>
  425. <para>-</para>
  426. <para>ThreadPool을 이용한 Thread 생성 및 PoolSize 지정</para>
  427. <para>InitPoolSize</para>
  428. <para>InvokePool</para>
  429. <para>-</para>
  430. <para>일반 backgroud Thread 실행</para>
  431. <para>Invoke</para>
  432. <para>-</para>
  433. </summary>
  434. </member>
  435. <member name="P:GSG.NET.Concurrent.ThreadUtils.ThBgMode">
  436. <summary/>
  437. </member>
  438. <member name="M:GSG.NET.Concurrent.ThreadUtils.GetCurrThreadID">
  439. <summary>
  440. <para>Win32 Thread 가져오기.</para>
  441. </summary>
  442. </member>
  443. <member name="M:GSG.NET.Concurrent.ThreadUtils.InitPoolSize(System.Int32)">
  444. <summary>
  445. <para>ThreadPool의 초기 사이즈를 잡는다.</para>
  446. <para>-</para>
  447. <para>사용중에 Thread는 InitSize 밑으로 내려갈 수 있지만</para>
  448. <para>생성이 다시 필요할 경우 InitSize만큼은 빠른 속도로 수행된다.</para>
  449. <para>-</para>
  450. <para>초기 생성가 아니며 최소 유지 시키는 사이즈</para>
  451. <para>-</para>
  452. </summary>
  453. <param name="min">Pool Size</param>
  454. </member>
  455. <member name="M:GSG.NET.Concurrent.ThreadUtils.InitPoolSize(System.Int32,System.Int32)">
  456. <summary>
  457. min은 항상 유지, max는 임계치
  458. <para>max에 도달후 wait되어 기존 thread가 종료되면 다시 pool에서 수행한다.</para>
  459. </summary>
  460. </member>
  461. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePoolEx(System.Action)">
  462. <summary>
  463. Logging exception without throw
  464. </summary>
  465. </member>
  466. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePoolEx``1(System.Action{``0},``0)">
  467. <summary>
  468. Logging exception without throw
  469. </summary>
  470. </member>
  471. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePoolEx``2(System.Action{``0,``1},``0,``1)">
  472. <summary>
  473. Logging exception without throw
  474. </summary>
  475. </member>
  476. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePoolEx``3(System.Action{``0,``1,``2},``0,``1,``2)">
  477. <summary>
  478. Logging exception without throw
  479. </summary>
  480. </member>
  481. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePoolEx``4(System.Action{``0,``1,``2,``3},``0,``1,``2,``3)">
  482. <summary>
  483. Logging exception without throw
  484. </summary>
  485. </member>
  486. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePool(System.Action)">
  487. <summary>
  488. <para>ThreadPool을 이용한 Invoke</para>
  489. <para>호출 method는 Poolxxxx 형태의 method naming을 권장함.</para>
  490. <para>void argument 0 method</para>
  491. </summary>
  492. </member>
  493. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePool``1(System.Action{``0},``0)">
  494. <summary>
  495. <para>ThreadPool을 이용한 Invoke</para>
  496. <para>호출 method는 Poolxxxx 형태의 method naming을 권장함.</para>
  497. <para>void argument 1 method</para>
  498. </summary>
  499. </member>
  500. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePool``2(System.Action{``0,``1},``0,``1)">
  501. <summary>
  502. <para>ThreadPool을 이용한 Invoke</para>
  503. <para>호출 method는 Poolxxxx 형태의 method naming을 권장함.</para>
  504. <para>void argument 2 method</para>
  505. </summary>
  506. </member>
  507. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePool``3(System.Action{``0,``1,``2},``0,``1,``2)">
  508. <summary>
  509. <para>ThreadPool을 이용한 Invoke</para>
  510. <para>호출 method는 Poolxxxx 형태의 method naming을 권장함.</para>
  511. <para>void argument 3 method</para>
  512. </summary>
  513. </member>
  514. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokePool``4(System.Action{``0,``1,``2,``3},``0,``1,``2,``3)">
  515. <summary>
  516. <para>ThreadPool을 이용한 Invoke</para>
  517. <para>호출 method는 Poolxxxx 형태의 method naming을 권장함.</para>
  518. <para>void argument 4 method</para>
  519. </summary>
  520. </member>
  521. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokeEx(System.Action)">
  522. <summary/>
  523. </member>
  524. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokeEx``1(System.Action{``0},``0)">
  525. <summary>
  526. Logging exception without throw
  527. </summary>
  528. </member>
  529. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokeEx``2(System.Action{``0,``1},``0,``1)">
  530. <summary>
  531. Logging exception without throw
  532. </summary>
  533. </member>
  534. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokeEx``3(System.Action{``0,``1,``2},``0,``1,``2)">
  535. <summary>
  536. Logging exception without throw
  537. </summary>
  538. </member>
  539. <member name="M:GSG.NET.Concurrent.ThreadUtils.InvokeEx``4(System.Action{``0,``1,``2,``3},``0,``1,``2,``3)">
  540. <summary>
  541. Logging exception without throw
  542. </summary>
  543. </member>
  544. <member name="M:GSG.NET.Concurrent.ThreadUtils.Invoke(System.Action)">
  545. <summary>
  546. <para>Backgroud thread를 생성하여 invoke</para>
  547. <para>void argument 0</para>
  548. </summary>
  549. </member>
  550. <member name="M:GSG.NET.Concurrent.ThreadUtils.Invoke``1(System.Action{``0},``0)">
  551. <summary>
  552. <para>Backgroud thread를 생성하여 invoke</para>
  553. <para>void argument 1</para>
  554. </summary>
  555. </member>
  556. <member name="M:GSG.NET.Concurrent.ThreadUtils.Invoke``2(System.Action{``0,``1},``0,``1)">
  557. <summary>
  558. <para>Backgroud thread를 생성하여 invoke</para>
  559. <para>void argument 2</para>
  560. </summary>
  561. </member>
  562. <member name="M:GSG.NET.Concurrent.ThreadUtils.Invoke``3(System.Action{``0,``1,``2},``0,``1,``2)">
  563. <summary>
  564. <para>Backgroud thread를 생성하여 invoke</para>
  565. <para>void argument 3</para>
  566. </summary>
  567. </member>
  568. <member name="M:GSG.NET.Concurrent.ThreadUtils.Invoke``4(System.Action{``0,``1,``2,``3},``0,``1,``2,``3)">
  569. <summary>
  570. <para>Backgroud thread를 생성하여 invoke</para>
  571. <para>void argument 4</para>
  572. </summary>
  573. </member>
  574. <member name="M:GSG.NET.Concurrent.ThreadUtils.Kill(System.Threading.Thread)">
  575. <summary>
  576. <para>Thread 강제 kill</para>
  577. <para></para>
  578. <para>한번 종료한 Thread는 다시 사용할 수 없다. new 를 이용하여 생성해야 함.</para>
  579. <para>Socket read 동작은 중단되지 않는다.</para>
  580. <para>Socket 연결 중 동작은 중단된다.</para>
  581. <para>Socket 중단 처리를 위해서는 Kill후 Socket을 중단하는 방법 권장.ThreadAbortException 처리 가능.</para>
  582. </summary>
  583. </member>
  584. <member name="M:GSG.NET.Concurrent.ThreadUtils.Stop(System.Threading.Thread)">
  585. <summary>
  586. <para>1. Interrupt</para>
  587. <para>2. Join 100ms</para>
  588. <para>-</para>
  589. <para>Queue를 사용할 경우 ThreadInterruptedException시 break 구문을 수행하여야 한다.</para>
  590. </summary>
  591. <returns>stopped or not</returns>
  592. </member>
  593. <member name="M:GSG.NET.Concurrent.ThreadUtils.Interrupt(System.Threading.Thread)">
  594. <summary>
  595. 단순 Interrupt, th thread wait state -> interrupt,
  596. 종료 위해서는 break구문 처리 필요.
  597. </summary>
  598. </member>
  599. <member name="M:GSG.NET.Concurrent.ThreadUtils.IsAlive(System.Threading.Thread)">
  600. <summary>
  601. Thread alive or not
  602. </summary>
  603. </member>
  604. <member name="M:GSG.NET.Concurrent.ThreadUtils.StartSTATask(System.Action)">
  605. <summary>
  606. Main Thread 생성
  607. Chart 와 같은 많은 Data 를 표현 하는 Form 에서 사용
  608. </summary>
  609. <param name="action"></param>
  610. <returns></returns>
  611. </member>
  612. <member name="T:GSG.NET.Concurrent.TsMap`2">
  613. <summary>
  614. Thread-safe Dictionary
  615. <para>key-value pairs 데이터 thread-safe</para>
  616. <para>capacity: 32</para>
  617. <para>concurrency: cpu core *2</para>
  618. <para>max lock count: 1024</para>
  619. <para>-</para>
  620. <para>setter를 사용할 경우 AddOrUpdate가 수행됨</para>
  621. <para>아래의 코드로 바로 Add 가능함</para>
  622. <para>dd[key] = value;</para>
  623. </summary>
  624. </member>
  625. <member name="M:GSG.NET.Concurrent.TsMap`2.Add(`0,`1)">
  626. <summary>
  627. key 존재시 ArgumentException
  628. </summary>
  629. </member>
  630. <member name="M:GSG.NET.Concurrent.TsMap`2.AddOrUpdate(`0,`1)">
  631. <summary>
  632. 최신 Add값 반영
  633. </summary>
  634. </member>
  635. <member name="M:GSG.NET.Concurrent.TsMap`2.AddOrKeep(`0,`1)">
  636. <summary>
  637. 최초 Add값 유지
  638. </summary>
  639. </member>
  640. <member name="M:GSG.NET.Concurrent.TsMap`2.ContainsKey(`0)">
  641. <summary/>
  642. </member>
  643. <member name="M:GSG.NET.Concurrent.TsMap`2.Clear">
  644. <summary/>
  645. </member>
  646. <member name="P:GSG.NET.Concurrent.TsMap`2.Item(`0)">
  647. <summary>
  648. setter를 사용할 경우 AddOrUpdate가 수행됨
  649. <para>아래의 코드로 바로 Add 가능함</para>
  650. <para>dd[key] = value;</para>
  651. </summary>
  652. </member>
  653. <member name="M:GSG.NET.Concurrent.TsMap`2.Remove(`0)">
  654. <summary/>
  655. </member>
  656. <member name="M:GSG.NET.Concurrent.TsMap`2.GetEnumerator">
  657. <summary/>
  658. </member>
  659. <member name="P:GSG.NET.Concurrent.TsMap`2.Count">
  660. <summary/>
  661. </member>
  662. <member name="T:GSG.NET.Concurrent.TsQueue`1">
  663. <summary>
  664. Thread safe Queue
  665. </summary>
  666. </member>
  667. <member name="M:GSG.NET.Concurrent.TsQueue`1.#ctor">
  668. <summary>
  669. <para>init size 1024</para>
  670. </summary>
  671. </member>
  672. <member name="M:GSG.NET.Concurrent.TsQueue`1.#ctor(System.Int32)">
  673. <summary>
  674. <para>init size를 정할 수 있다.</para>
  675. </summary>
  676. </member>
  677. <member name="M:GSG.NET.Concurrent.TsQueue`1.Enqueue(`0)">
  678. <summary/>
  679. </member>
  680. <member name="M:GSG.NET.Concurrent.TsQueue`1.Dequeue">
  681. <summary>
  682. <para>ThreadUtils.Interrupt으로 종료 가능함.</para>
  683. <para>종료가 안될 경우 ThreadUtils.Stop으로 해도 되나 Interrupt 권장함.</para>
  684. </summary>
  685. </member>
  686. <member name="M:GSG.NET.Concurrent.TsQueue`1.Dequeue(System.Single)">
  687. <summary>
  688. dequeue with second
  689. </summary>
  690. </member>
  691. <member name="M:GSG.NET.Concurrent.TsQueue`1.Dequeue(System.Int32)">
  692. <summary>
  693. dequeue sometime wait
  694. <para>timeout: default(T)</para>
  695. </summary>
  696. </member>
  697. <member name="M:GSG.NET.Concurrent.TsQueue`1.Pull">
  698. <summary>
  699. 안전한 데이터 추출
  700. </summary>
  701. </member>
  702. <member name="M:GSG.NET.Concurrent.TsQueue`1.Clear">
  703. <summary/>
  704. </member>
  705. <member name="P:GSG.NET.Concurrent.TsQueue`1.Size">
  706. <summary/>
  707. </member>
  708. <member name="M:GSG.NET.Concurrent.TsQueue`1.GetEnumerator">
  709. <summary/>
  710. </member>
  711. <member name="T:GSG.NET.Extensions.EnumExtensions">
  712. <summary>
  713. Enum Extensions 추가
  714. </summary>
  715. </member>
  716. <member name="M:GSG.NET.Extensions.EnumExtensions.GetValues``1">
  717. <summary>
  718. Enumerates all enum values
  719. </summary>
  720. <typeparam name="T">Enum type</typeparam>
  721. <returns>IEnumerable containing all enum values</returns>
  722. </member>
  723. <member name="M:GSG.NET.Extensions.CastTo`1.From``1(``0)">
  724. <summary>
  725. This does not cause boxing for value types.
  726. Useful in generic methods.
  727. </summary>
  728. <typeparam name="S">Source type to cast from. Usually a generic type.</typeparam>
  729. </member>
  730. <member name="T:GSG.NET.FileSystem.FileUtils">
  731. <summary>
  732. <para>File, Path Utils</para>
  733. <para>-</para>
  734. <para>2012.08 닷넷 Path관련 함수 설명 필요해서 내장 시킴</para>
  735. <para>-</para>
  736. </summary>
  737. </member>
  738. <member name="M:GSG.NET.FileSystem.FileUtils.GetFiles(System.String,System.String,System.Boolean)">
  739. <summary>
  740. <para>Directory.GetFiles는 folder가 없을 경우에 에러가 발생하므로 이를 보정함.</para>
  741. <para>endwith 체크는 array를 다시 한번 체크해야 함, 현재 arrary는 contains임</para>
  742. </summary>
  743. </member>
  744. <member name="M:GSG.NET.FileSystem.FileUtils.GetFileInfos(System.String,System.String,System.Boolean)">
  745. <summary>
  746. FileInfos
  747. <para>endwith 체크는 array를 다시 한번 체크해야 함, 현재 arrary는 contains임</para>
  748. </summary>
  749. </member>
  750. <member name="M:GSG.NET.FileSystem.FileUtils.DeleteFileIfExist(System.String)">
  751. <summary>
  752. <para>File.Delete는 directory가 없을 경우에 에러가 발생하므로 이를 보정함.</para>
  753. </summary>
  754. </member>
  755. <member name="M:GSG.NET.FileSystem.FileUtils.ChgExtension(System.String,System.String)">
  756. <summary>
  757. <para>실제 파일의 확장자를 바꾸지 않고 return 되는 경로 확장자만 바꾸어 진다.</para>
  758. <para>-</para>
  759. </summary>
  760. </member>
  761. <member name="M:GSG.NET.FileSystem.FileUtils.GetFolderName(System.String)">
  762. <summary>
  763. <para>path의 폴더 경로를 가져오며 마지막에 PathSeparator \가 없다.</para>
  764. <para>e.g.</para>
  765. <para>C:\\Users\\Administrator\\AppData\\Local\\Temp</para>
  766. </summary>
  767. </member>
  768. <member name="M:GSG.NET.FileSystem.FileUtils.GetFolders(System.String,System.Boolean)">
  769. <summary>
  770. <para>Folder가 없을 경우에 에러가 발생하므로 이를 보정함.</para>
  771. </summary>
  772. </member>
  773. <member name="M:GSG.NET.FileSystem.FileUtils.CreateFolder(System.String,System.Boolean)">
  774. <summary>
  775. <para>Folder생성.</para>
  776. <para>File or Folder를 지원한다.</para>
  777. <para>-</para>
  778. <para>File을 이용해 폴더 만들때 file = true</para>
  779. </summary>
  780. </member>
  781. <member name="M:GSG.NET.FileSystem.FileUtils.GetExtension(System.String)">
  782. <summary>
  783. <para>확장자 만을 가져옴 .이 포함된다.</para>
  784. <para>e.g.</para>
  785. <para>(.zip)</para>
  786. </summary>
  787. </member>
  788. <member name="M:GSG.NET.FileSystem.FileUtils.GetFileName(System.String)">
  789. <summary>
  790. <para>파일 이름(확장자 포함)만 추출하고 싶을 경우</para>
  791. </summary>
  792. </member>
  793. <member name="M:GSG.NET.FileSystem.FileUtils.GetFileNameWithoutExtension(System.String)">
  794. <summary>
  795. <para>파일 이름(확장자 없음)만 추출하고 싶을 경우</para>
  796. </summary>
  797. </member>
  798. <member name="M:GSG.NET.FileSystem.FileUtils.GetFullPath(System.String)">
  799. <summary>
  800. <para>전체 경로 추출</para>
  801. </summary>
  802. </member>
  803. <member name="M:GSG.NET.FileSystem.FileUtils.GetPathRoot(System.String)">
  804. <summary>
  805. <para>루트 경로 추출</para>
  806. <para>e.g.</para>
  807. <para>C:\\ or D:\\</para>
  808. </summary>
  809. </member>
  810. <member name="M:GSG.NET.FileSystem.FileUtils.GetRandomFileName">
  811. <summary>
  812. <para>Random파일을 생성하여 FileName만 추출한다.</para>
  813. <para>실제 파일은 만들어 지지 않는다.</para>
  814. <para>전체 경로를 추출하려면 GetFullPath 활용</para>
  815. </summary>
  816. </member>
  817. <member name="M:GSG.NET.FileSystem.FileUtils.GetTempFileName">
  818. <summary>
  819. <para>Temp파일의 전체 경로를 추출한다.</para>
  820. <para>실제 0바이트의 temp 파일이 생성된다.</para>
  821. <para>e.g.</para>
  822. <para>C:\\Users\\Administrator\\AppData\\Local\\Temp\\tmpEC58.tmp</para>
  823. </summary>
  824. </member>
  825. <member name="M:GSG.NET.FileSystem.FileUtils.IsFolder(System.String)">
  826. <summary>
  827. <para>Folder or not</para>
  828. </summary>
  829. </member>
  830. <member name="M:GSG.NET.FileSystem.FileUtils.IsFileLocked(System.IO.FileInfo)">
  831. <summary>
  832. <para>File이 다른 process가 열고 있는지 체크하는 함수</para>
  833. </summary>
  834. </member>
  835. <member name="M:GSG.NET.FileSystem.FileUtils.OpenRead(System.String,System.Int32)">
  836. <summary>
  837. <para>다른 Process가 파일을 수정여부와 상관없이 파일을 열수있다.</para>
  838. </summary>
  839. </member>
  840. <member name="T:GSG.NET.FileSystem.FileWatcher">
  841. <summary>
  842. FileWatcher
  843. </summary>
  844. </member>
  845. <member name="E:GSG.NET.FileSystem.FileWatcher.OnFileChanged">
  846. <summary>
  847. <para>arg: FileSystemEventArgs</para>
  848. <para>File 변경시 이벤트 발생.</para>
  849. </summary>
  850. </member>
  851. <member name="M:GSG.NET.FileSystem.FileWatcher.#ctor">
  852. <summary/>
  853. </member>
  854. <member name="P:GSG.NET.FileSystem.FileWatcher.Path">
  855. <summary>
  856. Fullpath or 상대경로
  857. </summary>
  858. </member>
  859. <member name="P:GSG.NET.FileSystem.FileWatcher.Filter">
  860. <summary>
  861. <para>default: *.*</para>
  862. <para>example: *.csv</para>
  863. </summary>
  864. </member>
  865. <member name="M:GSG.NET.FileSystem.FileWatcher.Watch">
  866. <summary>
  867. Watch start
  868. </summary>
  869. </member>
  870. <member name="T:GSG.NET.FTP.FTPClient">
  871. <summary>
  872. <para>WebClient에 CWD를 하는 함수는 없다</para>
  873. <para>-</para>
  874. <para>(주의) FTP Remote 경로는 모두 FTP 접속시 접근되는 폴더 기준으로 해야한다.</para>
  875. <para>-</para>
  876. <para>2012.07</para>
  877. <para>UploadFile함수 기능 보강.</para>
  878. <para>-</para>
  879. </summary>
  880. </member>
  881. <member name="F:GSG.NET.FTP.FTPClient.lock1">
  882. <summary>
  883. Webclient Support Only One IO
  884. </summary>
  885. </member>
  886. <member name="F:GSG.NET.FTP.FTPClient.ANONYMOUS">
  887. <summary>Anonymous User ID</summary>
  888. </member>
  889. <member name="P:GSG.NET.FTP.FTPClient.User">
  890. <summary>FTP Client User</summary>
  891. </member>
  892. <member name="P:GSG.NET.FTP.FTPClient.IpAddress">
  893. <summary>FTP IpAddress</summary>
  894. </member>
  895. <member name="P:GSG.NET.FTP.FTPClient.Port">
  896. <summary>FTP Port, Default 21</summary>
  897. </member>
  898. <member name="P:GSG.NET.FTP.FTPClient.Password">
  899. <summary>FTP Password</summary>
  900. </member>
  901. <member name="M:GSG.NET.FTP.FTPClient.#ctor">
  902. <summary/>
  903. </member>
  904. <member name="P:GSG.NET.FTP.FTPClient.Proxy">
  905. <summary>
  906. <para>Proxy</para>
  907. <para>-</para>
  908. <para>Default null</para>
  909. </summary>
  910. </member>
  911. <member name="M:GSG.NET.FTP.FTPClient.CheckCredential">
  912. <summary>
  913. <para>필수 체크 항목</para>
  914. <para>-</para>
  915. <para>1. 계정 세팅 connect 호출 여부 체크.</para>
  916. </summary>
  917. </member>
  918. <member name="M:GSG.NET.FTP.FTPClient.Connect">
  919. <summary>
  920. <para>User, Password 접속 정보만 세팅하며</para>
  921. <para>바로 접속은 하지 않고 필요시 연결은 자동으로 처리한다.</para>
  922. <para>User를 세팅하지 않으면 기본 Anonymous User로 접속된다.</para>
  923. </summary>
  924. </member>
  925. <member name="M:GSG.NET.FTP.FTPClient.ListDirectory(System.String)">
  926. <summary>
  927. <para>FTP server 원격 ListDirectory 목록 조회.</para>
  928. <para>-</para>
  929. <para>현재 경로 List가져오기</para>
  930. <para>ListDirectory("/")</para>
  931. </summary>
  932. </member>
  933. <member name="M:GSG.NET.FTP.FTPClient.GetInitDirectory">
  934. <summary>
  935. <para>초기 접속 경로</para>
  936. <para>에러가 발생할 경우 ??를 return한다</para>
  937. </summary>
  938. </member>
  939. <member name="M:GSG.NET.FTP.FTPClient.ChangeFileName(System.String,System.String)">
  940. <summary>
  941. <para>예제.</para>
  942. <para>ChangeFileName("/aaa.bbb", "aaa.ccc")</para>
  943. </summary>
  944. </member>
  945. <member name="M:GSG.NET.FTP.FTPClient.MakeDirectory(System.String)">
  946. <summary>
  947. <para>Directory 생성이 필요할 경우마다 호출함, Exception이 발생하지 않으며 Debug로그만 Write한다.</para>
  948. <para>-</para>
  949. <para>모든 경로는 접속시 기본 경로에서 시작한다.</para>
  950. <para>-</para>
  951. <para>접속시 기본 경로: /home/fms</para>
  952. <para>//home/fms/FTP 만들기 예제</para>
  953. <para>-</para>
  954. <para>상대 경로로 만들 경우</para>
  955. <para>/FTP 앞에 /를 붙여 줘야 한다.</para>
  956. <para>-</para>
  957. <para>절대 경로로 만들 경우</para>
  958. <para>//home/fms/FTP</para>
  959. <param name="dir"></param>
  960. </summary>
  961. </member>
  962. <member name="M:GSG.NET.FTP.FTPClient.DeleteFile(System.String)">
  963. <summary>
  964. <para>Delete Remote File or Directory</para>
  965. </summary>
  966. <param name="remote">File or Directory</param>
  967. </member>
  968. <member name="M:GSG.NET.FTP.FTPClient.DownloadFile(System.String)">
  969. <summary>
  970. <para>Use DownloadFile(remotePath, localPath)</para>
  971. </summary>
  972. </member>
  973. <member name="M:GSG.NET.FTP.FTPClient.DownloadFile(System.String,System.String)">
  974. <summary>
  975. <para>Sync 방식 File Download</para>
  976. <para>-</para>
  977. <para>모든 경로는 접속시 기본 경로에서 시작한다.</para>
  978. <para>-</para>
  979. <para>접속시 기본 경로: /home/fms</para>
  980. <para>//home/fms/FTP/aaa.txt Download 예제</para>
  981. <para>-</para>
  982. <para>상대 경로 Download</para>
  983. <para>DownloadFile(/FTP/aaa.txt, c:\aaa.txt)</para>
  984. <para>-</para>
  985. <para>절대 경로 Download</para>
  986. <para>DownloadFile("//home/fms/FTP/aaa.txt", "c:\aaa.txt")</para>
  987. <para>-</para>/// </summary>
  988. <param name="remotePath"></param>
  989. <param name="localPath"></param>
  990. </member>
  991. <member name="M:GSG.NET.FTP.FTPClient.UploadFile(System.String,System.String)">
  992. <summary>
  993. <para>Sync방식 Upload FTP</para>
  994. <para>-</para>
  995. <para>모든 경로는 접속시 기본 경로에서 시작한다.</para>
  996. <para>-</para>
  997. <para>remoteFileName에는 파일 이름을 써줘야 한다.</para>
  998. <para>-</para>
  999. <para>접속시 기본 경로: /home/fms</para>
  1000. <para>//home/fms/FTP/aaa.txt파일 올리기 예제</para>
  1001. <para>-</para>
  1002. <para>상대 경로 Upload</para>
  1003. <para>UploadFile(/FTP/aaa.txt, c:\aaa.txt)</para>
  1004. <para>-</para>
  1005. <para>절대 경로 Upload</para>
  1006. <para>UploadFile(//home/fms/FTP/aaa.txt, c:\aaa.txt)</para>
  1007. <para>-</para>
  1008. <para>주의: Server에 해당 파일이 있을 경우는 Option에 따라 다르게 동작함</para>
  1009. <para>Delete 권한 있을 경우: Overwrite</para>
  1010. <para>Delete 권한 없을 경우: 에러 발생함</para>
  1011. <para>-</para>
  1012. </summary>
  1013. </member>
  1014. <member name="M:GSG.NET.FTP.FTPClient.UploadFileAsync(System.String,System.String)">
  1015. <summary>
  1016. <para>비동기 FTP File Upload Request</para>
  1017. <para>-</para>
  1018. <para>경로는 UploadFile을 참고한다.</para>
  1019. </summary>
  1020. </member>
  1021. <member name="M:GSG.NET.FTP.FTPClient.ToString">
  1022. <summary>
  1023. ("FTPClient '{0}/{1}' '{2}:{3}'", IpAddress, Port, User, Password);
  1024. </summary>
  1025. </member>
  1026. <member name="T:GSG.NET.IO.ConsoleOutputter">
  1027. <summary>
  1028. console data를 richtext box로 redirect하는 class
  1029. </summary>
  1030. </member>
  1031. <member name="M:GSG.NET.IO.ConsoleOutputter.ChangeFontColor(System.Drawing.Color)">
  1032. <summary>
  1033. <para>ChangeFontColor를 호출한 다음부터 logger의 Font Color가 변경된다.</para>
  1034. <para>화면 Thread에서 호출해야 함.</para>
  1035. </summary>
  1036. <param name="color"></param>
  1037. </member>
  1038. <member name="M:GSG.NET.IO.ConsoleOutputter.Output">
  1039. <summary>
  1040. <para>redirect 시작.</para>
  1041. </summary>
  1042. </member>
  1043. <member name="P:GSG.NET.IO.ConsoleOutputter.LinesWaterMark">
  1044. <summary>
  1045. <para>richtext clear할 라인수</para>
  1046. </summary>
  1047. </member>
  1048. <member name="P:GSG.NET.IO.ConsoleOutputter.TextBox">
  1049. <summary>
  1050. <para>console data redirect 되는 richtext</para>
  1051. </summary>
  1052. </member>
  1053. <member name="T:GSG.NET.IO.MbCommUtils">
  1054. <summary>
  1055. Modbus Serial Comm Utils
  1056. </summary>
  1057. </member>
  1058. <member name="M:GSG.NET.IO.MbCommUtils.ReadReqCrcRTU(System.Int32,System.Byte,System.Int32,System.Int32)">
  1059. <summary/>
  1060. </member>
  1061. <member name="M:GSG.NET.IO.MbCommUtils.WriteSingleWordCrcRTU(System.Int32,System.Byte,System.Int32,System.Int32)">
  1062. <summary/>
  1063. </member>
  1064. <member name="M:GSG.NET.IO.MbCommUtils.WriteWordCrcRTU(System.Int32,System.Byte,System.Int32,System.Byte[])">
  1065. <summary/>
  1066. </member>
  1067. <member name="M:GSG.NET.IO.MbCommUtils.ReadRspCrcRTU(GSG.NET.IO.SerialComm)">
  1068. <summary/>
  1069. </member>
  1070. <member name="M:GSG.NET.IO.MbCommUtils.CrcCheck(GSG.NET.Utils.MemoryBuffer)">
  1071. <summary/>
  1072. </member>
  1073. <member name="T:GSG.NET.IO.SerialComm">
  1074. <summary>
  1075. <para>SerialComm</para>
  1076. <para>ThreadUtils.Interrupt를 사용하면 안됨. 프로그램 죽음</para>
  1077. <para>Close와 IOException을 처리해야 함.</para>
  1078. </summary>
  1079. </member>
  1080. <member name="P:GSG.NET.IO.SerialComm.RetryCount">
  1081. <summary/>
  1082. </member>
  1083. <member name="P:GSG.NET.IO.SerialComm.H">
  1084. <summary/>
  1085. </member>
  1086. <member name="M:GSG.NET.IO.SerialComm.#ctor">
  1087. <summary>
  1088. <para>readtimeout=1000;</para>
  1089. </summary>
  1090. </member>
  1091. <member name="P:GSG.NET.IO.SerialComm.IsOpen">
  1092. <summary>
  1093. SerialPort is open or not
  1094. </summary>
  1095. </member>
  1096. <member name="P:GSG.NET.IO.SerialComm.ReadTimeout">
  1097. <summary>
  1098. <para>Blocking ReadTimeout milli-second</para>
  1099. <para>-</para>
  1100. <para>1000ms (Default)</para>
  1101. <para>Infinite: -1</para>
  1102. <para>0: Exception</para>
  1103. </summary>
  1104. </member>
  1105. <member name="P:GSG.NET.IO.SerialComm.NewLine">
  1106. <summary>
  1107. <para>ReadLine, WriteLine함수를 이용할 경우 NewLine 구분자</para>
  1108. <para>Default: Environment.NewLine</para>
  1109. <para>"\r"; 0xD</para>
  1110. <para>"\n"; 0xA(Default)</para>
  1111. </summary>
  1112. </member>
  1113. <member name="P:GSG.NET.IO.SerialComm.PortName">
  1114. <summary>
  1115. COM1(Default), COM2, ...
  1116. </summary>
  1117. </member>
  1118. <member name="P:GSG.NET.IO.SerialComm.DiscardNull">
  1119. <summary>
  1120. <para>Normally False</para>
  1121. <para>null bytes are ignored</para>
  1122. </summary>
  1123. </member>
  1124. <member name="P:GSG.NET.IO.SerialComm.BaudRate">
  1125. <summary>
  1126. <para>2400</para>
  1127. <para>4800</para>
  1128. <para>7200</para>
  1129. <para>9600(Default)</para>
  1130. <para>14400</para>
  1131. <para>19200</para>
  1132. <para>38400</para>
  1133. <para>57600</para>
  1134. <para>115200</para>
  1135. </summary>
  1136. </member>
  1137. <member name="P:GSG.NET.IO.SerialComm.Parity">
  1138. <summary>
  1139. <para>Parity.None(Default)</para>
  1140. <para>Parity.Odd</para>
  1141. <para>Parity.Even</para>
  1142. <para>Parity.Mark</para>
  1143. <para>Parity.Space</para>
  1144. </summary>
  1145. </member>
  1146. <member name="P:GSG.NET.IO.SerialComm.DataBits">
  1147. <summary>
  1148. <para>7</para>
  1149. <para>8(Default)</para>
  1150. </summary>
  1151. </member>
  1152. <member name="P:GSG.NET.IO.SerialComm.StopBits">
  1153. <summary>
  1154. <para>StopBits.None</para>
  1155. <para>StopBits.One(Default)</para>
  1156. <para>StopBits.Two</para>
  1157. </summary>
  1158. </member>
  1159. <member name="P:GSG.NET.IO.SerialComm.Handshake">
  1160. <summary>
  1161. <para>Handshake.None(Default)</para>
  1162. <para>Handshake.XOnXOff</para>
  1163. <para>Handshake.RequestToSend</para>
  1164. <para>Handshake.RequestToSendXOnXOff</para>
  1165. </summary>
  1166. </member>
  1167. <member name="P:GSG.NET.IO.SerialComm.Encoding">
  1168. <summary>
  1169. <para>Encoding.UTF7</para>
  1170. <para>Encoding.BigEndianUnicode</para>
  1171. <para>Encoding.Unicode</para>
  1172. <para>Encoding.Default</para>
  1173. <para>Encoding.ASCII</para>
  1174. <para>Encoding.UTF8</para>
  1175. <para>Encoding.UTF32</para>
  1176. </summary>
  1177. </member>
  1178. <member name="M:GSG.NET.IO.SerialComm.Open">
  1179. <summary>
  1180. open serial port
  1181. </summary>
  1182. </member>
  1183. <member name="M:GSG.NET.IO.SerialComm.Close">
  1184. <summary>
  1185. close SerailPort
  1186. </summary>
  1187. </member>
  1188. <member name="M:GSG.NET.IO.SerialComm.QuietClose">
  1189. <summary>
  1190. Ignore close error
  1191. </summary>
  1192. </member>
  1193. <member name="P:GSG.NET.IO.SerialComm.IsReadDataExist">
  1194. <summary>
  1195. BytesToRead > 0
  1196. </summary>
  1197. </member>
  1198. <member name="M:GSG.NET.IO.SerialComm.Dispose">
  1199. <summary>
  1200. </summary>
  1201. </member>
  1202. <member name="M:GSG.NET.IO.SerialComm.Clean">
  1203. <summary>
  1204. DiscardInBuffer();
  1205. DiscardOutBuffer();
  1206. </summary>
  1207. </member>
  1208. <member name="M:GSG.NET.IO.SerialComm.CleanIn">
  1209. <summary>
  1210. Clean read buffer
  1211. </summary>
  1212. </member>
  1213. <member name="M:GSG.NET.IO.SerialComm.CleanOut">
  1214. <summary>
  1215. Clean write buffer
  1216. </summary>
  1217. </member>
  1218. <member name="M:GSG.NET.IO.SerialComm.WriteLeInt(System.Int32)">
  1219. <summary>
  1220. Write little endian int
  1221. </summary>
  1222. </member>
  1223. <member name="M:GSG.NET.IO.SerialComm.WriteLeShort(System.Int32)">
  1224. <summary>
  1225. <para>Write little endian short</para>
  1226. <para>-32768 ~ 32767</para>
  1227. </summary>
  1228. </member>
  1229. <member name="M:GSG.NET.IO.SerialComm.WriteBeInt(System.Int32)">
  1230. <summary>
  1231. Write big endian int
  1232. </summary>
  1233. </member>
  1234. <member name="M:GSG.NET.IO.SerialComm.WriteBeShort(System.Int32)">
  1235. <summary>
  1236. <para>Write big endian short</para>
  1237. <para>-32768 ~ 32767</para>
  1238. </summary>
  1239. </member>
  1240. <member name="M:GSG.NET.IO.SerialComm.ReadBeShort">
  1241. <summary>
  1242. Read big endian short
  1243. </summary>
  1244. </member>
  1245. <member name="M:GSG.NET.IO.SerialComm.ReadBeUshort">
  1246. <summary>
  1247. Read big endian ushort
  1248. </summary>
  1249. </member>
  1250. <member name="M:GSG.NET.IO.SerialComm.ReadBeInt">
  1251. <summary>
  1252. Read big endian int
  1253. </summary>
  1254. </member>
  1255. <member name="M:GSG.NET.IO.SerialComm.ReadLeShort">
  1256. <summary>
  1257. Read little endian short
  1258. </summary>
  1259. </member>
  1260. <member name="M:GSG.NET.IO.SerialComm.ReadLeInt">
  1261. <summary>
  1262. Read little endian int
  1263. </summary>
  1264. </member>
  1265. <member name="M:GSG.NET.IO.SerialComm.ReadAscii(System.Int32)">
  1266. <summary>
  1267. <para>Read string</para>
  1268. <para>Encoding.ASCII</para>
  1269. </summary>
  1270. </member>
  1271. <member name="M:GSG.NET.IO.SerialComm.ReadAscii(System.Int32,System.Text.Encoding)">
  1272. <summary>
  1273. <para>Read string</para>
  1274. </summary>
  1275. </member>
  1276. <member name="M:GSG.NET.IO.SerialComm.ReadBytes(System.Int32)">
  1277. <summary>
  1278. <para>blocing read</para>
  1279. </summary>
  1280. </member>
  1281. <member name="M:GSG.NET.IO.SerialComm.ReadUntil(System.Byte)">
  1282. <summary>
  1283. <para>NewLine, ETX까지 읽는 경우.</para>
  1284. <para>b는 포함되지 않음</para>
  1285. <para>in stream에서 b 까지 읽음</para>
  1286. </summary>
  1287. </member>
  1288. <member name="M:GSG.NET.IO.SerialComm.Write(System.String)">
  1289. <summary>
  1290. </summary>
  1291. </member>
  1292. <member name="M:GSG.NET.IO.SerialComm.Write(System.Int32)">
  1293. <summary>
  1294. <para>int -> byte로 변경해서 Write(byte[] bs)호출.</para>
  1295. <para>0~255 argument</para>
  1296. </summary>
  1297. </member>
  1298. <member name="M:GSG.NET.IO.SerialComm.Write(System.Byte[])">
  1299. <summary>
  1300. </summary>
  1301. </member>
  1302. <member name="M:GSG.NET.IO.SerialComm.WriteLine(System.String)">
  1303. <summary>
  1304. </summary>
  1305. </member>
  1306. <member name="M:GSG.NET.IO.SerialComm.ReadLine">
  1307. <summary>
  1308. </summary>
  1309. </member>
  1310. <member name="M:GSG.NET.IO.SerialComm.Read1Byte">
  1311. <summary>
  1312. <para>Block until read 1 byte</para>
  1313. </summary>
  1314. </member>
  1315. <member name="T:GSG.NET.IO.SpDetail">
  1316. <summary>
  1317. <para>SerialPort Detail Config</para>
  1318. </summary>
  1319. </member>
  1320. <member name="M:GSG.NET.IO.SpDetail.#ctor">
  1321. <summary/>
  1322. </member>
  1323. <member name="P:GSG.NET.IO.SpDetail.BaudRate">
  1324. <summary>
  1325. <para>2400</para>
  1326. <para>4800</para>
  1327. <para>7200</para>
  1328. <para>9600(Default)</para>
  1329. <para>14400</para>
  1330. <para>19200</para>
  1331. <para>38400</para>
  1332. <para>57600</para>
  1333. <para>115200</para>
  1334. </summary>
  1335. </member>
  1336. <member name="P:GSG.NET.IO.SpDetail.Parity">
  1337. <summary>
  1338. <para>Parity.None(Default)</para>
  1339. <para>Parity.Odd</para>
  1340. <para>Parity.Even</para>
  1341. <para>Parity.Mark</para>
  1342. <para>Parity.Space</para>
  1343. </summary>
  1344. </member>
  1345. <member name="P:GSG.NET.IO.SpDetail.StopBits">
  1346. <summary>
  1347. <para>StopBits.None</para>
  1348. <para>StopBits.One(Default)</para>
  1349. <para>StopBits.Two</para>
  1350. </summary>
  1351. </member>
  1352. <member name="P:GSG.NET.IO.SpDetail.DataBits">
  1353. <summary>
  1354. <para>7</para>
  1355. <para>8(Default)</para>
  1356. </summary>
  1357. </member>
  1358. <member name="P:GSG.NET.IO.SpDetail.Handshake">
  1359. <summary>
  1360. <para>None(Default)</para>
  1361. </summary>
  1362. </member>
  1363. <member name="T:GSG.NET.LINQ.FwCompress">
  1364. <summary>
  1365. Linq archive
  1366. </summary>
  1367. </member>
  1368. <member name="M:GSG.NET.LINQ.FwCompress.FwZip(System.Byte[],System.Int32)">
  1369. <summary>
  1370. byte array 압축
  1371. <para>객체 압축용</para>
  1372. </summary>
  1373. </member>
  1374. <member name="M:GSG.NET.LINQ.FwCompress.FwZip(System.String,System.Int32)">
  1375. <summary>
  1376. string 압축
  1377. <para>Unzip이 zip의 4배 성능 빠름</para>
  1378. <para>buffer size는 kb 단위로 입력하며 평균 압축 사이즈 기준 설정</para>
  1379. </summary>
  1380. </member>
  1381. <member name="M:GSG.NET.LINQ.FwCompress.FwUnzip(System.String)">
  1382. <summary>
  1383. string 압축 해제
  1384. <para>Unzip이 zip의 4배 성능 빠름</para>
  1385. <para>Zip string이 아닐 경우 string.Empty: No exception</para>
  1386. </summary>
  1387. </member>
  1388. <member name="M:GSG.NET.LINQ.FwCompress.FwUnzip(System.Byte[],System.Int32)">
  1389. <summary>
  1390. byte array 압축 해제
  1391. <para>객체 압축 해제용</para>
  1392. </summary>
  1393. </member>
  1394. <member name="M:GSG.NET.LINQ.FwCompress.FwSz(System.Object)">
  1395. <summary>
  1396. serialize
  1397. </summary>
  1398. </member>
  1399. <member name="M:GSG.NET.LINQ.FwCompress.FwDsz(System.Byte[])">
  1400. <summary>
  1401. deserialize
  1402. </summary>
  1403. </member>
  1404. <member name="T:GSG.NET.LINQ.FwEnum">
  1405. <summary>
  1406. Enum 확장함수
  1407. </summary>
  1408. </member>
  1409. <member name="M:GSG.NET.LINQ.FwEnum.FwIntOf(System.Enum)">
  1410. <summary>
  1411. enum to int value
  1412. </summary>
  1413. </member>
  1414. <member name="M:GSG.NET.LINQ.FwEnum.FwEnumOf``1(``0,System.String)">
  1415. <summary>
  1416. string to enum
  1417. <para>enum e = 0;</para>
  1418. <para>e.FwEnumOf("VVV");</para>
  1419. </summary>
  1420. </member>
  1421. <member name="M:GSG.NET.LINQ.FwEnum.FwEnumOf``1(``0,System.Int32)">
  1422. <summary>
  1423. int to enum
  1424. </summary>
  1425. </member>
  1426. <member name="T:GSG.NET.LINQ.FwLambda">
  1427. <summary>
  1428. <para>TopN:Linq 기본함수. Skip, Take 사용.</para>
  1429. <para>Any</para>
  1430. </summary>
  1431. </member>
  1432. <member name="M:GSG.NET.LINQ.FwLambda.FwNth``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)">
  1433. <summary>
  1434. <para>index 기준 가져오기</para>
  1435. <para>-</para>
  1436. <para>짝수: FwNth(2,0);</para>
  1437. <para>홀수: FwNth(2,1);</para>
  1438. </summary>
  1439. </member>
  1440. <member name="M:GSG.NET.LINQ.FwLambda.FwEmpty``1(System.Collections.Generic.IEnumerable{``0})">
  1441. <summary>
  1442. Count, Length ==0
  1443. <para>source == null: true</para>
  1444. <para>string의 Length체크 기능도 됨: FwNull은 NSS_NULL value이므로 이함수 사용도 가능함.</para>
  1445. </summary>
  1446. </member>
  1447. <member name="M:GSG.NET.LINQ.FwLambda.FwEmpty(System.String,System.Boolean)">
  1448. <summary>
  1449. Kang Make.
  1450. </summary>
  1451. <param name="source"></param>
  1452. <param name="trim"></param>
  1453. <returns></returns>
  1454. </member>
  1455. <member name="M:GSG.NET.LINQ.FwLambda.FwOrdAsc``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
  1456. <summary>
  1457. OrderBy(selector).ToList() 코드 축소형
  1458. <para>기본형은 Labmda 사용 권장</para>
  1459. <para>IOrderedEnumerable을 List로 변경됨 유의!!</para>
  1460. </summary>
  1461. </member>
  1462. <member name="M:GSG.NET.LINQ.FwLambda.FwOrdDesc``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
  1463. <summary>
  1464. OrderByDescending(selector).ToList() 코드 축소형
  1465. <para>기본형은 Labmda 사용 권장</para>
  1466. <para>IOrderedEnumerable을 List로 변경됨 유의!!</para>
  1467. </summary>
  1468. </member>
  1469. <member name="M:GSG.NET.LINQ.FwLambda.FwGroupKey``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
  1470. <summary>
  1471. GroupBy Key를 List로 반환함.
  1472. </summary>
  1473. </member>
  1474. <member name="M:GSG.NET.LINQ.FwLambda.FwGroupList``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
  1475. <summary>
  1476. GroupBy (Key+List) Dictionary
  1477. </summary>
  1478. </member>
  1479. <member name="M:GSG.NET.LINQ.FwLambda.FwEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})">
  1480. <summary>
  1481. <para>List에서만 수행되는 ForEach를 IEnumerable 에서도 수행가능.</para>
  1482. <para>-</para>
  1483. <para>!! FwEach 2개 이상 사용시 반드시 ToList로 변경 후 호출.</para>
  1484. <para>Select로 가져온 IEnumerable은 Cursor가 마지막 위치 이므로 Loop를 수행하지 않음.</para>
  1485. </summary>
  1486. </member>
  1487. <member name="M:GSG.NET.LINQ.FwLambda.FwEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Int32})">
  1488. <summary>
  1489. foreach에서 index를 활용하고 싶을 경우 사용
  1490. <para>List.FwEach((x,idx)=> ...)</para>
  1491. </summary>
  1492. </member>
  1493. <member name="M:GSG.NET.LINQ.FwLambda.FwContains``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEnumerable{``1})">
  1494. <summary>
  1495. <para>source 객체의 특정 Property항목중 comp를 포함하는 List 추출.</para>
  1496. <para>!! comp의 입력 순서를 보장한다, 20151204</para>
  1497. <para>e.g.)var v = ll.FwContains(x => x.IntX, new int[] { 2, 3 });</para>
  1498. <para>e.g.)var v = ll.FwContains(x => x.IntX, lly.Select(y => y.IntY));</para>
  1499. </summary>
  1500. </member>
  1501. <member name="M:GSG.NET.LINQ.FwLambda.FwSort``1(System.Collections.Generic.IEnumerable{``0})">
  1502. <summary>
  1503. <para>기본 Sort, Argument 없는 OrderBy와 동일함.</para>
  1504. <para>string, int, DateTime등 기본 compare가 있는 타입에 사용가능함.</para>
  1505. </summary>
  1506. </member>
  1507. <member name="M:GSG.NET.LINQ.FwLambda.FwSort``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEnumerable{``1})">
  1508. <summary>
  1509. <para>comp의 기준으로 sort한다.</para>
  1510. <para>comp 포함되지 않는 항목은 뒤로 보내서 위치시킨다.</para>
  1511. <para>-</para>
  1512. <para>var a = ll.FwSort(x => x.IntX);</para>
  1513. <para>var b = ll.FwSort(x => x.StrX, llb.Select(y=> y.xxx));</para>
  1514. </summary>
  1515. </member>
  1516. <member name="M:GSG.NET.LINQ.FwLambda.FwSort``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},``1[])">
  1517. <summary>
  1518. <para>comp의 기준으로 sort한다.</para>
  1519. <para>comp 포함되지 않는 항목은 뒤로 보내서 위치시킨다.</para>
  1520. <para>-</para>
  1521. <para>var a = ll.FwSort(x => x.IntX);</para>
  1522. <para>var b = ll.FwSort(x => x.StrX, new string[] { "0004", "0002", });</para>
  1523. </summary>
  1524. </member>
  1525. <member name="M:GSG.NET.LINQ.FwLambda.FwTake``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},``1,``1)">
  1526. <summary>
  1527. from~to 부분을 Take함.
  1528. <para>to 는 from 이후의 최초 발견되는 to까지 찾는다.</para>
  1529. <para>from이 없거나 to가 없는 경우 exception</para>
  1530. <para>from 이후 to가 없을 경우 exception</para>
  1531. <para>-</para>
  1532. <para>var a = ll.FwTake(x => x.IntX, 2, 6);</para>
  1533. </summary>
  1534. </member>
  1535. <member name="M:GSG.NET.LINQ.FwLambda.FwNothing``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})">
  1536. <summary>
  1537. 조건을 만족하는 element가 하나도 없으면.. true
  1538. </summary>
  1539. </member>
  1540. <member name="M:GSG.NET.LINQ.FwLambda.FwDistinct``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
  1541. <summary>
  1542. Selector 기준 중복 제거
  1543. </summary>
  1544. </member>
  1545. <member name="T:GSG.NET.LINQ.FwNumber">
  1546. <summary>
  1547. Number 관련 함수
  1548. </summary>
  1549. </member>
  1550. <member name="M:GSG.NET.LINQ.FwNumber.FwBlur(System.Int32,System.Int32)">
  1551. <summary>
  1552. 숫자 흐리게 하기
  1553. </summary>
  1554. </member>
  1555. <member name="M:GSG.NET.LINQ.FwNumber.FwBtw``1(``0,``0,``0)">
  1556. <summary>
  1557. Between
  1558. <para>Linq, NssModel 사용가능</para>
  1559. <para>MongoModel 사용불가</para>
  1560. </summary>
  1561. </member>
  1562. <member name="M:GSG.NET.LINQ.FwNumber.FwBtw(System.Int32,System.Double,System.Double)">
  1563. <summary>
  1564. Between
  1565. <para>Linq, NssModel 사용가능</para>
  1566. <para>MongoModel 사용불가</para>
  1567. <para>-</para>
  1568. </summary>
  1569. </member>
  1570. <member name="M:GSG.NET.LINQ.FwNumber.FwBtw``1(System.String,``0,``0)">
  1571. <summary>
  1572. Between
  1573. <para>Linq, NssModel 사용가능</para>
  1574. <para>MongoModel 사용불가</para>
  1575. <para>-</para>
  1576. <para>TryParse 에러 return false</para>
  1577. <para>int,long,float,double,datetime 지원</para>
  1578. </summary>
  1579. </member>
  1580. <member name="M:GSG.NET.LINQ.FwNumber.FwMin``1(``0,``0)">
  1581. <summary/>
  1582. </member>
  1583. <member name="M:GSG.NET.LINQ.FwNumber.FwMax``1(``0,``0)">
  1584. <summary/>
  1585. </member>
  1586. <member name="M:GSG.NET.LINQ.FwNumber.FwDivEq0(System.Int32,System.Int32)">
  1587. <summary>
  1588. 배수체크
  1589. </summary>
  1590. </member>
  1591. <member name="M:GSG.NET.LINQ.FwNumber.FwIntOf(System.String,System.Int32)">
  1592. <summary>
  1593. <para>Exception이 발생하지 않으며 parse fail 경우 기본값: def 반환</para>
  1594. </summary>
  1595. </member>
  1596. <member name="M:GSG.NET.LINQ.FwNumber.FwIntOf(System.Double)">
  1597. <summary>
  1598. double to int32
  1599. </summary>
  1600. </member>
  1601. <member name="M:GSG.NET.LINQ.FwNumber.FwIntOf(System.Single)">
  1602. <summary>
  1603. float to int32
  1604. </summary>
  1605. </member>
  1606. <member name="M:GSG.NET.LINQ.FwNumber.FwIntOf(System.Decimal)">
  1607. <summary>
  1608. decimal to int32
  1609. </summary>
  1610. </member>
  1611. <member name="M:GSG.NET.LINQ.FwNumber.FwIntOf(System.String,System.Boolean)">
  1612. <summary>
  1613. <para>Hexa format string parsing</para>
  1614. <para>Exception이 발생하지 않으며 기본값 반환</para>
  1615. </summary>
  1616. </member>
  1617. <member name="M:GSG.NET.LINQ.FwNumber.FwFloatOf(System.Decimal)">
  1618. <summary>
  1619. decimal to float
  1620. </summary>
  1621. </member>
  1622. <member name="M:GSG.NET.LINQ.FwNumber.FwFloatOf(System.String)">
  1623. <summary>
  1624. <para>Exception이 발생하지 않으며 기본값 반환</para>
  1625. </summary>
  1626. </member>
  1627. <member name="M:GSG.NET.LINQ.FwNumber.FwDoubleOf(System.String)">
  1628. <summary>
  1629. <para>Exception이 발생하지 않으며 기본값 반환</para>
  1630. </summary>
  1631. </member>
  1632. <member name="T:GSG.NET.LINQ.FwStats">
  1633. <summary>
  1634. Number 관련 함수
  1635. </summary>
  1636. </member>
  1637. <member name="M:GSG.NET.LINQ.FwStats.FwAvg``1(System.Collections.Generic.IEnumerable{``0})">
  1638. <summary>
  1639. source count 0 일 경우 exception 방지
  1640. </summary>
  1641. </member>
  1642. <member name="M:GSG.NET.LINQ.FwStats.FwVariance``1(System.Collections.Generic.IEnumerable{``0})">
  1643. <summary>
  1644. <para>분포도(분산)</para>
  1645. </summary>
  1646. </member>
  1647. <member name="M:GSG.NET.LINQ.FwStats.FwStdDev``1(System.Collections.Generic.IEnumerable{``0})">
  1648. <summary>
  1649. <para>표준편차</para>
  1650. </summary>
  1651. </member>
  1652. <member name="M:GSG.NET.LINQ.FwStats.FwMedian``1(System.Collections.Generic.IEnumerable{``0})">
  1653. <summary>
  1654. Median 구하기
  1655. <para>홀수 샘플: 중간값</para>
  1656. <para>짝수 샘플: 중간값 2개 / 2</para>
  1657. </summary>
  1658. </member>
  1659. <member name="T:GSG.NET.LINQ.FwString">
  1660. <summary/>
  1661. </member>
  1662. <member name="M:GSG.NET.LINQ.FwString.FwFormat(System.DateTime,System.String)">
  1663. <summary>
  1664. '/'를 넣을수 있는 InvariantInfo
  1665. <para>ToString(format, System.Globalization.DateTimeFormatInfo.InvariantInfo)</para>
  1666. </summary>
  1667. </member>
  1668. <member name="M:GSG.NET.LINQ.FwString.FwFormat(System.String,System.Object[])">
  1669. <summary>
  1670. string.Format 대체
  1671. </summary>
  1672. </member>
  1673. <member name="M:GSG.NET.LINQ.FwString.FwLog``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Object},System.String)">
  1674. <summary>
  1675. List의 Property를 ,기준으로 string화 처리
  1676. </summary>
  1677. </member>
  1678. <member name="M:GSG.NET.LINQ.FwString.FwNull(System.String)">
  1679. <summary>
  1680. Nss null string check 함수
  1681. <para>string.IsNullOrEmpty이거나 Foco.NSS_NULL_STRING 입력값과 동일하면 true</para>
  1682. <para>-</para>
  1683. <para>일반 string 비교일 경우 FwEmpty를 사용해야 함</para>
  1684. </summary>
  1685. </member>
  1686. <member name="M:GSG.NET.LINQ.FwString.FwSplit(System.String,System.String[])">
  1687. <summary>
  1688. RemoveEmptyEntries option split
  1689. </summary>
  1690. </member>
  1691. <member name="M:GSG.NET.LINQ.FwString.FwSplit(System.String,System.Char[])">
  1692. <summary>
  1693. RemoveEmptyEntries option split
  1694. </summary>
  1695. </member>
  1696. <member name="M:GSG.NET.LINQ.FwString.FwEmpty(System.String,System.Boolean)">
  1697. <summary>
  1698. string.IsNullOrEmpty
  1699. <para>string이 null 일 경우에도 사용가능</para>
  1700. <para>Trim은 옵션으로 체크</para>
  1701. </summary>
  1702. </member>
  1703. <member name="M:GSG.NET.Logging.AppenderUtils.RemoveAppender(log4net.Repository.Hierarchy.Logger,System.String)">
  1704. <summary>
  1705. <para>1. Logger에서 Appender 제거함.</para>
  1706. <para>2. Close Appender</para>
  1707. </summary>
  1708. <param name="logger"></param>
  1709. <param name="name"></param>
  1710. </member>
  1711. <member name="T:GSG.NET.Logging.CsvAppender">
  1712. <summary>
  1713. Csv Header를 추가한 appender
  1714. <para>def values</para>
  1715. <para>File: CSV</para>
  1716. <para>Name: CsvAppender</para>
  1717. <para>DatePattern: -yyyyMMdd.'csv'</para>
  1718. <para>BackupDays: 30</para>
  1719. </summary>
  1720. </member>
  1721. <member name="P:GSG.NET.Logging.CsvAppender.Header">
  1722. <summary>
  1723. Csv Header
  1724. </summary>
  1725. </member>
  1726. <member name="P:GSG.NET.Logging.CsvAppender.LogPattern">
  1727. <summary>
  1728. <para>Log content pattern</para>
  1729. <para>%m%n</para>
  1730. </summary>
  1731. </member>
  1732. <member name="M:GSG.NET.Logging.CsvAppender.#ctor">
  1733. <summary/>
  1734. </member>
  1735. <member name="M:GSG.NET.Logging.CsvAppender.ActivateOptions">
  1736. <summary/>
  1737. </member>
  1738. <member name="M:GSG.NET.Logging.CsvAppender.WriteHeader">
  1739. <summary/>
  1740. </member>
  1741. <member name="T:GSG.NET.Logging.FileAppender">
  1742. <summary>
  1743. <para>Floware FileAppender</para>
  1744. <para>-</para>
  1745. <para>default value</para>
  1746. <para>BackupDays: 10</para>
  1747. <para>DatePattern: -MMdd'.log'</para>
  1748. <para>Layout: %d{MM-dd HH:mm:ss.fff} %-2.2t %-5p %m%n</para>
  1749. <para>-</para>
  1750. <para>StaticLogFileName: 최초 파일 생성시 datepattern이 적용된 파일로 생성여부.</para>
  1751. <para>default: true, xxx.log</para>
  1752. <para>false: xxx-130405.log</para>
  1753. <para>폴더 생성 모드를 사용할 경우 자동으로 false로 세팅된다.</para>
  1754. <para>-</para>
  1755. <para>PreserveLogFileNameExtension: log4net 1.2.11 이상</para>
  1756. <para>-</para>
  1757. <para>폴더 만들기 예제 File</para>
  1758. <para>"C:/LOG/SECS-I/%d/SECS1"</para>
  1759. <para>-</para>
  1760. </summary>
  1761. </member>
  1762. <member name="M:GSG.NET.Logging.FileAppender.#ctor">
  1763. <summary>
  1764. FileAppender constructor
  1765. </summary>
  1766. </member>
  1767. <member name="M:GSG.NET.Logging.FileAppender.#ctor(log4net.Core.Level)">
  1768. <summary>
  1769. FileAppender constructor
  1770. </summary>
  1771. </member>
  1772. <member name="P:GSG.NET.Logging.FileAppender.BackupDays">
  1773. <summary/>
  1774. </member>
  1775. <member name="M:GSG.NET.Logging.FileAppender.ActivateOptions">
  1776. <summary/>
  1777. </member>
  1778. <member name="M:GSG.NET.Logging.FileAppender.OpenFile(System.String,System.Boolean)">
  1779. <summary/>
  1780. </member>
  1781. <member name="M:GSG.NET.Logging.FileAppender.AdjustFileBeforeAppend">
  1782. <summary>
  1783. Logging을 할때마다 아래 함수가 호출되며
  1784. 먼저 파일을 닫고, OpenFile이 호출된다.
  1785. </summary>
  1786. </member>
  1787. <member name="M:GSG.NET.Logging.FileAppender.OnClose">
  1788. <summary>
  1789. appender close
  1790. </summary>
  1791. </member>
  1792. <member name="T:GSG.NET.Logging.Logger">
  1793. <summary>
  1794. Logger wrapping class
  1795. </summary>
  1796. </member>
  1797. <member name="M:GSG.NET.Logging.Logger.GetLogger">
  1798. <summary>
  1799. Logger를 생성한 Class의 Type을 찾아서 Logger를 만든다.
  1800. </summary>
  1801. </member>
  1802. <member name="M:GSG.NET.Logging.Logger.GetLogger(System.Type)">
  1803. <summary>
  1804. Logger factory
  1805. </summary>
  1806. </member>
  1807. <member name="M:GSG.NET.Logging.Logger.GetLogger(System.String)">
  1808. <summary>
  1809. Logger factory
  1810. </summary>
  1811. </member>
  1812. <member name="M:GSG.NET.Logging.Logger.D(System.Object)">
  1813. <summary>
  1814. Debug
  1815. </summary>
  1816. </member>
  1817. <member name="M:GSG.NET.Logging.Logger.D(System.String,System.Object[])">
  1818. <summary>
  1819. DebugFormat
  1820. </summary>
  1821. </member>
  1822. <member name="P:GSG.NET.Logging.Logger.IsDE">
  1823. <summary>
  1824. DebugEnabled
  1825. </summary>
  1826. </member>
  1827. <member name="M:GSG.NET.Logging.Logger.I(System.Object)">
  1828. <summary>
  1829. Info
  1830. </summary>
  1831. </member>
  1832. <member name="M:GSG.NET.Logging.Logger.I(System.String,System.Object[])">
  1833. <summary>
  1834. InfoFormat
  1835. </summary>
  1836. </member>
  1837. <member name="M:GSG.NET.Logging.Logger.W(System.Object)">
  1838. <summary>
  1839. Warn
  1840. </summary>
  1841. </member>
  1842. <member name="M:GSG.NET.Logging.Logger.W(System.String,System.Object[])">
  1843. <summary>
  1844. WarnFormat
  1845. </summary>
  1846. </member>
  1847. <member name="M:GSG.NET.Logging.Logger.E(System.Object)">
  1848. <summary>
  1849. Error
  1850. </summary>
  1851. </member>
  1852. <member name="M:GSG.NET.Logging.Logger.E(System.String,System.Object[])">
  1853. <summary>
  1854. ErrorFormat
  1855. </summary>
  1856. </member>
  1857. <member name="M:GSG.NET.Logging.Logger.F(System.Object)">
  1858. <summary>
  1859. Fatal
  1860. </summary>
  1861. </member>
  1862. <member name="M:GSG.NET.Logging.Logger.F(System.String,System.Object[])">
  1863. <summary>
  1864. FatalFormat
  1865. </summary>
  1866. </member>
  1867. <member name="M:GSG.NET.Logging.LoggerUtils.HasLogger(System.String)">
  1868. <summary>
  1869. Has Logger or not
  1870. </summary>
  1871. <param name="loggerName">LoggerName</param>
  1872. </member>
  1873. <member name="M:GSG.NET.Logging.LoggerUtils.GetLogger(System.String)">
  1874. <summary>
  1875. <para>Logger가 없을 경우 만들어준다.</para>
  1876. <para>AddLogger 기능과 같다.</para>
  1877. </summary>
  1878. </member>
  1879. <member name="T:GSG.NET.Logging.LogUtils">
  1880. <summary>
  1881. <para>Log4Net Utils</para>
  1882. </summary>
  1883. </member>
  1884. <member name="M:GSG.NET.Logging.LogUtils.Configure">
  1885. <summary>
  1886. <para>empty log4net config</para>
  1887. <para>log repository...</para>
  1888. <para>Level: INFO</para>
  1889. </summary>
  1890. </member>
  1891. <member name="M:GSG.NET.Logging.LogUtils.Configure(System.String)">
  1892. <summary>
  1893. <para>Log4net config file loading</para>
  1894. </summary>
  1895. <param name="cfgPath"></param>
  1896. </member>
  1897. <member name="M:GSG.NET.Logging.LogUtils.Configure(System.String,System.Boolean)">
  1898. <summary/>
  1899. </member>
  1900. <member name="P:GSG.NET.Logging.LogUtils.RootLogger">
  1901. <summary>
  1902. <para>Get RootLogger</para>
  1903. </summary>
  1904. </member>
  1905. <member name="M:GSG.NET.Logging.LogUtils.ChangeAdditivity(System.String,System.Boolean)">
  1906. <summary>
  1907. <para>Change additivity option</para>
  1908. </summary>
  1909. </member>
  1910. <member name="M:GSG.NET.Logging.LogUtils.CreateConsoleAppender">
  1911. <summary>
  1912. <para>Create Console Appender</para>
  1913. </summary>
  1914. </member>
  1915. <member name="M:GSG.NET.Logging.LogUtils.CreateConsoleAppender(System.String)">
  1916. <summary/>
  1917. <param name="name">Appender Name</param>
  1918. </member>
  1919. <member name="M:GSG.NET.Logging.LogUtils.CreateConsoleAppender(System.String,log4net.Layout.ILayout)">
  1920. <summary/>
  1921. <param name="name">Appender Name</param>
  1922. <param name="layout"></param>
  1923. </member>
  1924. <member name="M:GSG.NET.Logging.LogUtils.CommonLogging">
  1925. <summary/>
  1926. </member>
  1927. <member name="M:GSG.NET.Logging.LogUtils.ChangeLevel(log4net.Core.Level)">
  1928. <summary>
  1929. <para>RootLogger Change Level</para>
  1930. </summary>
  1931. </member>
  1932. <member name="M:GSG.NET.Logging.LogUtils.ChangeLevel(System.String,log4net.Core.Level)">
  1933. <summary>
  1934. <para>Non-RootLogger Change Level</para>
  1935. </summary>
  1936. </member>
  1937. <member name="M:GSG.NET.Logging.LogUtils.ChangeThreshold(System.String,log4net.Core.Level)">
  1938. <summary>
  1939. <para>Change RootLogger Appender's Level</para>
  1940. </summary>
  1941. </member>
  1942. <member name="M:GSG.NET.Logging.LogUtils.ChangeThreshold(System.String,System.String,log4net.Core.Level)">
  1943. <summary>
  1944. <para>Change Specific Logger Appender's Level</para>
  1945. </summary>
  1946. </member>
  1947. <member name="P:GSG.NET.Logging.LogUtils.DefaultLayout">
  1948. <summary>
  1949. <para>%d{MM-dd HH:mm:ss.fff} %-2.2t %-5p %m%n</para>
  1950. <para>-</para>
  1951. <para>LoggerName: %-10.10c</para>
  1952. <para>-</para>
  1953. <para>%-a.b -:left justify, a:minimum width, b:maximum width</para>
  1954. <para>-</para>
  1955. </summary>
  1956. </member>
  1957. <member name="M:GSG.NET.Logging.LogUtils.CreateLayout(System.String)">
  1958. <summary>
  1959. <para>Pattern layout 생성</para>
  1960. <para>-</para>
  1961. <para>Class: %c</para>
  1962. </summary>
  1963. </member>
  1964. <member name="M:GSG.NET.Logging.LogUtils.AddAppender(log4net.Appender.IAppender)">
  1965. <summary>
  1966. <para>RootLogger AddAppender</para>
  1967. </summary>
  1968. </member>
  1969. <member name="M:GSG.NET.Logging.LogUtils.AddAppender(System.String,log4net.Appender.IAppender)">
  1970. <summary>
  1971. <para>Non-RootLogger AddAppender</para>
  1972. <para>Logger가 없을 경우 생성한다.</para>
  1973. <para>-</para>
  1974. <para>AppenderName이 없을 경우 loggerName을 AppenderName으로 세팅한다.</para>
  1975. <para>-</para>
  1976. </summary>
  1977. </member>
  1978. <member name="M:GSG.NET.Logging.LogUtils.AddAppender(System.String,log4net.Appender.IAppender,System.Boolean)">
  1979. <summary>
  1980. <para>Non-RootLogger AddAppender</para>
  1981. <para>Logger가 없을 경우 생성한다.</para>
  1982. <para>-</para>
  1983. <para>AppenderName이 없을 경우 loggerName을 AppenderName으로 세팅한다.</para>
  1984. <para>-</para>
  1985. <para>Additivity option</para>
  1986. <para>-</para>
  1987. </summary>
  1988. </member>
  1989. <member name="M:GSG.NET.Logging.LogUtils.RemoveAppender(System.String)">
  1990. <summary>
  1991. <para>RootLogger</para>
  1992. <para>-</para>
  1993. <para>1. RootLogger에서 Appender 제거함.</para>
  1994. <para>2. Close Appender</para>
  1995. </summary>
  1996. </member>
  1997. <member name="M:GSG.NET.Logging.LogUtils.RemoveAppender(System.String,System.String)">
  1998. <summary>
  1999. <para>Non-RootLogger</para>
  2000. <para>-</para>
  2001. <para>1. Logger에서 Appender 제거함.</para>
  2002. <para>2. Close Appender</para>
  2003. </summary>
  2004. </member>
  2005. <member name="T:GSG.NET.ObjectBase.SingletonBase`1">
  2006. <summary>
  2007. A base class for the singleton design pattern.
  2008. </summary>
  2009. <typeparam name="T">Class type of the singleton</typeparam>
  2010. </member>
  2011. <member name="F:GSG.NET.ObjectBase.SingletonBase`1.sInstance">
  2012. <summary>
  2013. Static instance. Needs to use lambda expression
  2014. to construct an instance (since constructor is private).
  2015. </summary>
  2016. </member>
  2017. <member name="P:GSG.NET.ObjectBase.SingletonBase`1.Instance">
  2018. <summary>
  2019. Gets the instance of this singleton.
  2020. </summary>
  2021. </member>
  2022. <member name="M:GSG.NET.ObjectBase.SingletonBase`1.CreateInstanceOfT">
  2023. <summary>
  2024. Creates an instance of T via reflection since T's constructor is expected to be private.
  2025. </summary>
  2026. <returns></returns>
  2027. </member>
  2028. <member name="T:GSG.NET.OSView.EventLogSpy">
  2029. <summary>
  2030. <para>Event 로그를 읽는것이 느려서</para>
  2031. <para>EntryWritten을 활용하는 방법으로 구현한다.</para>
  2032. </summary>
  2033. </member>
  2034. <member name="E:GSG.NET.OSView.EventLogSpy.OnEntryWritten">
  2035. <summary/>
  2036. </member>
  2037. <member name="T:GSG.NET.OSView.EventLogSpy.LogType">
  2038. <summary/>
  2039. </member>
  2040. <member name="F:GSG.NET.OSView.EventLogSpy.LogType.Application">
  2041. <summary/>
  2042. </member>
  2043. <member name="F:GSG.NET.OSView.EventLogSpy.LogType.System">
  2044. <summary/>
  2045. </member>
  2046. <member name="F:GSG.NET.OSView.EventLogSpy.LogType.Security">
  2047. <summary/>
  2048. </member>
  2049. <member name="F:GSG.NET.OSView.EventLogSpy.LogType.Setup">
  2050. <summary/>
  2051. </member>
  2052. <member name="M:GSG.NET.OSView.EventLogSpy.Watch(GSG.NET.OSView.EventLogSpy.LogType)">
  2053. <summary/>
  2054. </member>
  2055. <member name="M:GSG.NET.OSView.EventLogSpy.Close">
  2056. <summary/>
  2057. </member>
  2058. <member name="M:GSG.NET.OSView.EventLogSpy.WarnOrError(System.Diagnostics.EventLogEntry)">
  2059. <summary>
  2060. <para>Waring 또는 에러인지 검사.</para>
  2061. </summary>
  2062. </member>
  2063. <member name="T:GSG.NET.OSView.Mgnt">
  2064. <summary>
  2065. Management
  2066. </summary>
  2067. </member>
  2068. <member name="M:GSG.NET.OSView.Mgnt.PrinterNames">
  2069. <summary/>
  2070. </member>
  2071. <member name="M:GSG.NET.OSView.Mgnt.CpuUseRate">
  2072. <summary>
  2073. <para>CPU 사용률 % / 100%기준.</para>
  2074. </summary>
  2075. </member>
  2076. <member name="M:GSG.NET.OSView.Mgnt.ProcCpu1UseRate(System.String)">
  2077. <summary>
  2078. <para>Process 의 CPU 사용률</para>
  2079. <para>1 cpu 기준이므로 multi cpu 일 경우 processor count 로 나눠야 한다.</para>
  2080. </summary>
  2081. </member>
  2082. <member name="M:GSG.NET.OSView.Mgnt.ProcCpuUseRate(System.String)">
  2083. <summary>
  2084. <para>Logical CPU 기준으로 나눈값</para>
  2085. </summary>
  2086. </member>
  2087. <member name="M:GSG.NET.OSView.Mgnt.ProcMemUseKB(System.String)">
  2088. <summary>
  2089. <para>메모리 사용량 KB</para>
  2090. <para>PrivateMemorySize</para>
  2091. </summary>
  2092. </member>
  2093. <member name="M:GSG.NET.OSView.Mgnt.ProcMemPeakUseKB(System.String)">
  2094. <summary>
  2095. <para>Peak 메모리 사용량 KB</para>
  2096. <para>PrivateMemorySize</para>
  2097. </summary>
  2098. </member>
  2099. <member name="M:GSG.NET.OSView.Mgnt.MemPhysicalKB">
  2100. <summary>
  2101. <para>Physical Memory Size KB 단위 추출</para>
  2102. </summary>
  2103. </member>
  2104. <member name="M:GSG.NET.OSView.Mgnt.MemVirtualKB">
  2105. <summary>
  2106. <para>Virtual Memory Size KB 단위 추출</para>
  2107. </summary>
  2108. </member>
  2109. <member name="M:GSG.NET.OSView.Mgnt.MemVirtualFreeKB">
  2110. <summary>
  2111. Virtual 기준 Free Kb size
  2112. </summary>
  2113. </member>
  2114. <member name="M:GSG.NET.OSView.Mgnt.MemVirtualUseKB">
  2115. <summary>
  2116. Virtual 기준 Use KB
  2117. </summary>
  2118. </member>
  2119. <member name="M:GSG.NET.OSView.Mgnt.MemPhysicalFreeKB">
  2120. <summary>
  2121. Physical 기준 Free size
  2122. </summary>
  2123. </member>
  2124. <member name="M:GSG.NET.OSView.Mgnt.MemPhysicalUseKB">
  2125. <summary>
  2126. Physical 기준 사용량 KB
  2127. </summary>
  2128. </member>
  2129. <member name="M:GSG.NET.OSView.Mgnt.MemPhysicalUseRate">
  2130. <summary>
  2131. Physical 기준 100분율
  2132. </summary>
  2133. </member>
  2134. <member name="M:GSG.NET.OSView.Mgnt.OsName">
  2135. <summary>
  2136. <para>OS Name 가져오기.</para>
  2137. </summary>
  2138. </member>
  2139. <member name="M:GSG.NET.OSView.Mgnt.CpuCountLogical">
  2140. <summary>
  2141. <para>Retrieve Total Logical Cpu Count</para>
  2142. </summary>
  2143. </member>
  2144. <member name="M:GSG.NET.OSView.Mgnt.MemVirtualUseRate">
  2145. <summary>
  2146. <para>메모리 사용률 %</para>
  2147. </summary>
  2148. </member>
  2149. <member name="M:GSG.NET.OSView.Mgnt.HddList">
  2150. <summary>
  2151. <para>Ready 상태이고, HDD 드라이브만 추출</para>
  2152. </summary>
  2153. </member>
  2154. <member name="M:GSG.NET.OSView.Mgnt.LocalIpList">
  2155. <summary>
  2156. <para>Local IP Address 가져오기.</para>
  2157. </summary>
  2158. </member>
  2159. <member name="M:GSG.NET.OSView.Mgnt.MacAddressList">
  2160. <summary>
  2161. <para>Local Mac Address 가져오기.</para>
  2162. </summary>
  2163. </member>
  2164. <member name="M:GSG.NET.OSView.Mgnt.Wql(System.String)">
  2165. <summary>
  2166. wql: SQL for WMI
  2167. </summary>
  2168. </member>
  2169. <member name="P:GSG.NET.OSView.Mgnt.Is64BitOperatingSystem">
  2170. <summary>
  2171. 32, 64 bit check
  2172. </summary>
  2173. </member>
  2174. <member name="M:GSG.NET.OSView.Mgnt.GetDotnetVersion">
  2175. <summary>
  2176. CLR version retrieve
  2177. </summary>
  2178. </member>
  2179. <member name="M:GSG.NET.OSView.Mgnt.AddFirewall(System.String,System.Int32)">
  2180. <summary>
  2181. Tcp 방화벽 등록.
  2182. </summary>
  2183. </member>
  2184. <member name="M:GSG.NET.OSView.Mgnt.ServiceStart(System.String)">
  2185. <summary/>
  2186. </member>
  2187. <member name="M:GSG.NET.OSView.Mgnt.ServiceStop(System.String)">
  2188. <summary/>
  2189. </member>
  2190. <member name="T:GSG.NET.Poco">
  2191. <summary>
  2192. POCO(Plain Old CLR Object)
  2193. </summary>
  2194. </member>
  2195. <member name="F:GSG.NET.Poco.T_INT">
  2196. <summary>
  2197. Int32 타입과 동일
  2198. </summary>
  2199. </member>
  2200. <member name="F:GSG.NET.Poco.T_LONG">
  2201. <summary>
  2202. Int64 타입과 동일
  2203. </summary>
  2204. </member>
  2205. <member name="F:GSG.NET.Poco.T_FLOAT">
  2206. <summary>
  2207. Single 타입과 동일
  2208. </summary>
  2209. </member>
  2210. <member name="F:GSG.NET.Poco.T_DOUBLE">
  2211. <summary>
  2212. Double 타입과 동일
  2213. </summary>
  2214. </member>
  2215. <member name="M:GSG.NET.Poco.ToString">
  2216. <summary>
  2217. ToString 재정의
  2218. </summary>
  2219. </member>
  2220. <member name="M:GSG.NET.Poco.ChgNullValue(System.String)">
  2221. <summary>
  2222. string Property값이 null일 경우 v로 변경.
  2223. </summary>
  2224. </member>
  2225. <member name="M:GSG.NET.Poco.ChgNullValue">
  2226. <summary>
  2227. string Property값이 null일 경우 string.Empty로 변경.
  2228. </summary>
  2229. </member>
  2230. <member name="F:GSG.NET.Poco.NSS_NULL_STRING">
  2231. <summary>
  2232. Nss Null string setting
  2233. <para>def: string.Empty</para>
  2234. </summary>
  2235. </member>
  2236. <member name="M:GSG.NET.Poco.IntV(System.String)">
  2237. <summary/>
  2238. </member>
  2239. <member name="M:GSG.NET.Poco.DoubleV(System.String)">
  2240. <summary/>
  2241. </member>
  2242. <member name="T:GSG.NET.Interop32">
  2243. <summary>
  2244. <para>const uint FILE_SHARE_READ = 1;</para>
  2245. <para></para>
  2246. <para>const uint FILE_ATTRIBUTE_NORMAL = 0x80;</para>
  2247. <para></para>
  2248. <para>const uint GENERIC_READ = 0x80000000;</para>
  2249. <para>const uint OPEN_EXISTING = 3;</para>
  2250. <para></para>
  2251. <para></para>
  2252. <para></para>
  2253. </summary>
  2254. </member>
  2255. <member name="T:GSG.NET.LinqEx">
  2256. <summary>
  2257. 내부적으로 사용하는 Linq 확장함수
  2258. <para>내부적으로 사용한다는 의미에서 소문자로 시작하는 method 화</para>
  2259. </summary>
  2260. </member>
  2261. <member name="M:GSG.NET.LinqEx.avg``1(System.Collections.Generic.IEnumerable{``0})">
  2262. <summary>
  2263. source count 0 일 경우 exception 방지
  2264. </summary>
  2265. </member>
  2266. <member name="M:GSG.NET.LinqEx.format(System.Text.StringBuilder,System.String,System.Object[])">
  2267. <summary>
  2268. append format
  2269. </summary>
  2270. </member>
  2271. <member name="M:GSG.NET.LinqEx.empty``1(System.Collections.Generic.IEnumerable{``0})">
  2272. <summary>
  2273. Count, Length == 0
  2274. <para>source == null: true</para>
  2275. </summary>
  2276. </member>
  2277. <member name="M:GSG.NET.LinqEx.empty(System.String,System.Boolean)">
  2278. <summary>
  2279. string.IsNullOrEmpty
  2280. <para>Trim 은 옵션으로 체크</para>
  2281. </summary>
  2282. </member>
  2283. <member name="M:GSG.NET.LinqEx.multi(System.Single,System.Int32)">
  2284. <summary>
  2285. 곱하기
  2286. </summary>
  2287. </member>
  2288. <member name="M:GSG.NET.LinqEx.div(System.Int32,System.Int32)">
  2289. <summary>
  2290. 나누기
  2291. </summary>
  2292. </member>
  2293. <member name="M:GSG.NET.LinqEx.remain(System.Int32,System.Int32)">
  2294. <summary>
  2295. 나머지
  2296. </summary>
  2297. </member>
  2298. <member name="M:GSG.NET.LinqEx.split(System.String,System.String[])">
  2299. <summary>
  2300. remove empty option 적용, empty string을 제거한다
  2301. </summary>
  2302. </member>
  2303. <member name="M:GSG.NET.LinqEx.stringOf(System.Byte[],System.Text.Encoding)">
  2304. <summary>
  2305. <para>byte array -> string</para>
  2306. <para>null byte 0 -> 0x20</para>
  2307. </summary>
  2308. </member>
  2309. <member name="M:GSG.NET.LinqEx.stringOf(System.Char[])">
  2310. <summary>
  2311. char array -> string
  2312. </summary>
  2313. </member>
  2314. <member name="M:GSG.NET.LinqEx.xFF(System.Byte[])">
  2315. <summary>
  2316. byte -&gt; 2byte(0xff) string
  2317. <para>1,2,3 -gt; 010203</para>
  2318. </summary>
  2319. </member>
  2320. <member name="T:GSG.NET.Quartz.CbTimer">
  2321. <summary>
  2322. Method callback timer
  2323. <para>Timer를 재사용하므로 CbTimer는 여러개 객체 최소화</para>
  2324. </summary>
  2325. </member>
  2326. <member name="M:GSG.NET.Quartz.CbTimer.#ctor">
  2327. <summary/>
  2328. </member>
  2329. <member name="M:GSG.NET.Quartz.CbTimer.Once(System.Action,System.Int32)">
  2330. <summary/>
  2331. </member>
  2332. <member name="M:GSG.NET.Quartz.CbTimer.Repeat(System.Action,System.Int32)">
  2333. <summary>
  2334. 이전 Timer가 동작중이면 Stop로직이 이미 포함되어 있음.
  2335. </summary>
  2336. </member>
  2337. <member name="M:GSG.NET.Quartz.CbTimer.Stop">
  2338. <summary/>
  2339. </member>
  2340. <member name="T:GSG.NET.Quartz.QuartzUtils">
  2341. <summary>
  2342. <para>Quartz Lib 구현 class</para>
  2343. <para>CronJob 특성때문에 화면 Thread로 변경하지 않는다.</para>
  2344. <para>호출 메서드에서 에러가 발생하면 내부적으로 로깅하여 Exception이 발생하지 않는다.</para>
  2345. <para>-</para>
  2346. <para>초단위</para>
  2347. <para>매초: * * * * * ?</para>
  2348. <para>5초: 0/5 * * * * ?</para>
  2349. <para>-</para>
  2350. <para>분단위</para>
  2351. <para>매분: 0 * * * * ?</para>
  2352. <para>5분: 0 0/5 * * * ?</para>
  2353. <para>-</para>
  2354. <para>시간단위</para>
  2355. <para>매시간: 0 0 * * * ?</para>
  2356. <para>2시간: 0 0 0/2 * * ?</para>
  2357. <para>-</para>
  2358. <para>일단위</para>
  2359. <para>매일 0시: 0 0 0 * * ?</para>
  2360. <para>-</para>
  2361. </summary>
  2362. </member>
  2363. <member name="M:GSG.NET.Quartz.QuartzUtils.Init(System.Int32)">
  2364. <summary>
  2365. <para>Quartz Factoy 생성</para>
  2366. <para>Argument threadcount는 quartz 수행 개수/2 정도 설정</para>
  2367. </summary>
  2368. </member>
  2369. <member name="M:GSG.NET.Quartz.QuartzUtils.GetExpnSecond(System.Int32)">
  2370. <summary>
  2371. <para>N 초마다 실행되는 expression</para>
  2372. <para>예제: 5초주기 실행 GetExpnSecond(5)</para>
  2373. <para>예제: 10초주기 실행 GetExpnSecond(10)</para>
  2374. </summary>
  2375. </member>
  2376. <member name="M:GSG.NET.Quartz.QuartzUtils.GetExpnMinute(System.Int32)">
  2377. <summary>
  2378. <para>N 분마다 실행되는 expression: GetExpnMinute(10)</para>
  2379. <para>예제: 5분주기 실행 GetExpnMinute(5)</para>
  2380. <para>예제: 10분주기 실행 GetExpnMinute(10)</para>
  2381. </summary>
  2382. </member>
  2383. <member name="M:GSG.NET.Quartz.QuartzUtils.GetExpnHour(System.Int32)">
  2384. <summary>
  2385. <para>N 시간마다 실행되는 expression</para>
  2386. <para>예제: 1시간 실행 GetExpnHour(1)</para>
  2387. <para>예제: 2시간 실행 GetExpnHour(2)</para>
  2388. </summary>
  2389. </member>
  2390. <member name="M:GSG.NET.Quartz.QuartzUtils.GetExpnDay(System.Int32,System.Int32,System.Int32)">
  2391. <summary>
  2392. <para>매일 특정시간</para>
  2393. <para>예제: 매일 1시 2분 3초에 실행 GetExpnDay(1,2,3)</para>
  2394. <para>예제: 매일 밤 12시 실행 GetExpnDay(0,0,0)</para>
  2395. </summary>
  2396. </member>
  2397. <member name="M:GSG.NET.Quartz.QuartzUtils.Invoke(System.String,System.String,System.Action)">
  2398. <summary>
  2399. <para>void 0 argement method를 수행한다.</para>
  2400. <para>CronExpression을 변경하고 싶을 경우 jobName 동일하게 expression만 변경하면 된다.</para>
  2401. </summary>
  2402. </member>
  2403. <member name="M:GSG.NET.Quartz.QuartzUtils.Invoke(System.String,Quartz.Trigger,System.Action)">
  2404. <summary>
  2405. <para>TriggerUtils를 이용하면 Trigger를 쉽게 만들수 있다.</para>
  2406. <para>-</para>
  2407. <para>예제: QuartzUtils.Invoke("2", TriggerUtils.MakeSecondlyTrigger(10), BBB);</para>
  2408. </summary>
  2409. </member>
  2410. <member name="M:GSG.NET.Quartz.QuartzUtils.StopSchedule(System.String)">
  2411. <summary>
  2412. <para>Stop Schedule</para>
  2413. </summary>
  2414. </member>
  2415. <member name="T:GSG.NET.Quartz.TimeInvokeUtils">
  2416. <summary>
  2417. <para>Timer를 함수로 바로 mapping하여 사용할 경우</para>
  2418. </summary>
  2419. </member>
  2420. <member name="M:GSG.NET.Quartz.TimeInvokeUtils.InvokeOnce(System.Int32,System.Action)">
  2421. <summary>
  2422. <para>한번만 호출됨</para>
  2423. <para>두번째 delegate는 argument가 없는 void 함수명 입력</para>
  2424. <para>e.g. TimerUtils.InvokeOnce(3000, InitHsms);</para>
  2425. </summary>
  2426. <param name="ms">milli-second</param>
  2427. <param name="method">void () target</param>
  2428. </member>
  2429. <member name="M:GSG.NET.Quartz.TimeInvokeUtils.InvokeRepeat(System.Int32,System.Action)">
  2430. <summary>
  2431. <para>지속적인 호출, stop기능은 없다</para>
  2432. <para>stop을 사용하려면 SimpleTimerTemplate, TimerTemplate를 사용함</para>
  2433. <para>두번째 delegate는 argument가 없는 void 함수명 입력</para>
  2434. <para>e.g. TimerUtils.InvokeRepeat(3000, InitHsms);</para>
  2435. </summary>
  2436. <param name="ms">milli-second</param>
  2437. <param name="method"></param>
  2438. </member>
  2439. <member name="T:GSG.NET.Quartz.TimerTemplate`2">
  2440. <summary/>
  2441. <typeparam name="TKey">id (string or int..)</typeparam>
  2442. <typeparam name="TAttch">OnTimeout attach object</typeparam>
  2443. </member>
  2444. <member name="T:GSG.NET.Quartz.TimerTemplate`2.TimeoutDelegate">
  2445. <summary/>
  2446. </member>
  2447. <member name="E:GSG.NET.Quartz.TimerTemplate`2.OnTimeout">
  2448. <summary/>
  2449. </member>
  2450. <member name="M:GSG.NET.Quartz.TimerTemplate`2.HasId(`0)">
  2451. <summary>
  2452. Check prev timer has or not
  2453. </summary>
  2454. </member>
  2455. <member name="M:GSG.NET.Quartz.TimerTemplate`2.StartOnce(System.Int32,`0,`1)">
  2456. <summary>
  2457. 1회 timer
  2458. <para>interval: millisecond</para>
  2459. <para>Attach 입력 객체는 OnTimeout invoke시 사용가능</para>
  2460. </summary>
  2461. </member>
  2462. <member name="M:GSG.NET.Quartz.TimerTemplate`2.StartRepeat(System.Int32,`0,`1)">
  2463. <summary>
  2464. 반복 timer
  2465. <para>interval: millisecond</para>
  2466. <para>Attach 입력 객체는 OnTimeout invoke시 사용가능</para>
  2467. </summary>
  2468. </member>
  2469. <member name="M:GSG.NET.Quartz.TimerTemplate`2.GetAttachment(`0)">
  2470. <summary/>
  2471. </member>
  2472. <member name="M:GSG.NET.Quartz.TimerTemplate`2.Stop(`0)">
  2473. <summary>
  2474. Stop timer
  2475. </summary>
  2476. </member>
  2477. <member name="M:GSG.NET.Quartz.TimerTemplate`2.StopAll">
  2478. <summary>
  2479. All timer stop
  2480. </summary>
  2481. </member>
  2482. <member name="T:GSG.NET.Quartz.TimerTemplate`2.Task">
  2483. <summary>
  2484. Timer 정보
  2485. </summary>
  2486. </member>
  2487. <member name="P:GSG.NET.Quartz.TimerTemplate`2.Task.MsTimer">
  2488. <summary>
  2489. Microsoft timer
  2490. </summary>
  2491. </member>
  2492. <member name="P:GSG.NET.Quartz.TimerTemplate`2.Task.Attch">
  2493. <summary>
  2494. attachment object
  2495. </summary>
  2496. </member>
  2497. <member name="T:GSG.NET.Quartz.TimerUtils">
  2498. <summary/>
  2499. </member>
  2500. <member name="M:GSG.NET.Quartz.TimerUtils.Repeat(System.Int32,System.Action)">
  2501. <summary/>
  2502. </member>
  2503. <member name="M:GSG.NET.Quartz.TimerUtils.Once(System.Int32,System.Action)">
  2504. <summary>
  2505. 무조건 새로운 timer 생성
  2506. <para>CbTimer와는 다름</para>
  2507. </summary>
  2508. </member>
  2509. <member name="M:GSG.NET.Quartz.TimerUtils.Once``1(System.Int32,System.Action{``0},``0)">
  2510. <summary/>
  2511. </member>
  2512. <member name="M:GSG.NET.Quartz.TimerUtils.Once``2(System.Int32,System.Action{``0,``1},``0,``1)">
  2513. <summary/>
  2514. </member>
  2515. <member name="T:GSG.NET.TCP.SocketTimeoutException">
  2516. <summary>
  2517. Socket timeout 발생시
  2518. </summary>
  2519. </member>
  2520. <member name="M:GSG.NET.TCP.SocketTimeoutException.#ctor(System.String)">
  2521. <summary/>
  2522. </member>
  2523. <member name="T:GSG.NET.TCP.Tcp4">
  2524. <summary>
  2525. <para>2016.06.15 최초 개발</para>
  2526. <para>default: BigEndian</para>
  2527. <para>MaxBufSize 추가 (2018.03)</para>
  2528. </summary>
  2529. </member>
  2530. <member name="P:GSG.NET.TCP.Tcp4.Comm">
  2531. <summary>
  2532. Tcp 연결정보
  2533. <para>-</para>
  2534. <para>기본값</para>
  2535. <para>T2: 30sec</para>
  2536. <para>T5: 5sec</para>
  2537. <para>T6: 10sec</para>
  2538. <para>Retry: infinite</para>
  2539. <para>Active: true</para>
  2540. </summary>
  2541. </member>
  2542. <member name="P:GSG.NET.TCP.Tcp4.Connected">
  2543. <summary>
  2544. tcp connect or not
  2545. <para>Sck == null이면 false</para>
  2546. </summary>
  2547. </member>
  2548. <member name="P:GSG.NET.TCP.Tcp4.LittleEndian">
  2549. <summary>
  2550. default: false, 즉 BigEndian default
  2551. </summary>
  2552. </member>
  2553. <member name="P:GSG.NET.TCP.Tcp4.MaxBufSize">
  2554. <summary>
  2555. Read 함수 호출시 invalid size 체크
  2556. <para>OutOfMemoryException로 인한 application 다운 방어코드</para>
  2557. <para>-</para>
  2558. <para>단위 byte</para>
  2559. <para>Default: 10485760(10mb)</para>
  2560. <para>해당 값보다 클경우 IOException 발생</para>
  2561. </summary>
  2562. </member>
  2563. <member name="P:GSG.NET.TCP.Tcp4.Sck">
  2564. <summary />
  2565. </member>
  2566. <member name="M:GSG.NET.TCP.Tcp4.#ctor">
  2567. <summary>
  2568. <para>TcpIp 통신 class</para>
  2569. <para>-</para>
  2570. <para>기본세팅값</para>
  2571. <para>BigEndian</para>
  2572. <para>MaxBufSize (10mb)</para>
  2573. </summary>
  2574. </member>
  2575. <member name="M:GSG.NET.TCP.Tcp4.ChgTimeout(System.Boolean)">
  2576. <summary>
  2577. T6 기준 infinite timeout 변경 or 원복
  2578. <para>OS 시간 변경으로 연결 종료 방지</para>
  2579. </summary>
  2580. </member>
  2581. <member name="M:GSG.NET.TCP.Tcp4.Clean">
  2582. <summary>
  2583. In buffer clear
  2584. </summary>
  2585. </member>
  2586. <member name="M:GSG.NET.TCP.Tcp4.Close">
  2587. <summary>
  2588. <para>close socket</para>
  2589. <para>Exception이 없다, 내부적으로 모두 처리함.</para>
  2590. </summary>
  2591. </member>
  2592. <member name="M:GSG.NET.TCP.Tcp4.DefSckOpt(System.Net.Sockets.TcpClient)">
  2593. <summary>
  2594. tcp socket option 설정
  2595. <para>NoDelay, LingerState, ReceiveTimeout</para>
  2596. </summary>
  2597. </member>
  2598. <member name="M:GSG.NET.TCP.Tcp4.Ignore(System.Int32)">
  2599. <summary>
  2600. 읽어서 버림.
  2601. </summary>
  2602. </member>
  2603. <member name="M:GSG.NET.TCP.Tcp4.Init">
  2604. <summary>
  2605. Client의 경우 Comm.Retry 회수 만큼 연결 시도후 함수 return 됨.
  2606. <para>BigEndian default</para>
  2607. </summary>
  2608. </member>
  2609. <member name="M:GSG.NET.TCP.Tcp4.KeepAlive(System.Single,System.Single)">
  2610. <summary>
  2611. KeepAlive 시도, 별도의 heart-beat 메시지 필요없음
  2612. <para>OS parameter 가 아닌 값 세팅 가능</para>
  2613. <para>idle 시간 동안 packet 수신이 없을 경우 자동 송신</para>
  2614. <para>-</para>
  2615. <para>초단위 데이터 대략 30정도 세팅 권장</para>
  2616. <para>interval 만큼 10회정도 시도</para>
  2617. </summary>
  2618. </member>
  2619. <member name="M:GSG.NET.TCP.Tcp4.Read(System.Int32)">
  2620. <summary>
  2621. size만큼 읽어 MemoryBuffer에 담고 Pos를 0으로 이동한다.
  2622. <para>-</para>
  2623. <para>TimeoutException catch 가능함</para>
  2624. <para>MaxBufSize 적용한 IOException 발생</para>
  2625. </summary>
  2626. </member>
  2627. <member name="M:GSG.NET.TCP.Tcp4.ReadInt(System.Int32,System.Boolean)">
  2628. <summary>
  2629. Int 변환
  2630. <para>LittleEndian property 를 이용하여 ByteOrder세팅이 가능함.</para>
  2631. <para>기본 양수만 반환</para>
  2632. <para>양,음수 지원을 위한 signed 설정</para>
  2633. </summary>
  2634. </member>
  2635. <member name="M:GSG.NET.TCP.Tcp4.ReadTo(System.Byte)">
  2636. <summary>
  2637. <para>ETX 까지 읽는 경우.</para>
  2638. <para>etx 는 포함되지 않음</para>
  2639. <para>in stream 에서 etx 까지 읽음</para>
  2640. <para>-</para>
  2641. <para>TimeoutException catch 가능함</para>
  2642. </summary>
  2643. </member>
  2644. <member name="M:GSG.NET.TCP.Tcp4.Send(System.IO.Stream)">
  2645. <summary>
  2646. source 데이터 Tcp 에 write
  2647. <para>Read 사용불가, Stream 의 끝을 잘 모름</para>
  2648. </summary>
  2649. </member>
  2650. <member name="M:GSG.NET.TCP.Tcp4.Send(GSG.NET.Utils.MemoryBuffer)">
  2651. <summary>
  2652. MemoryBuffer Position 관계 없이 모든 데이터 write
  2653. </summary>
  2654. </member>
  2655. <member name="M:GSG.NET.TCP.Tcp4.Send(System.Byte[])">
  2656. <summary />
  2657. </member>
  2658. <member name="M:GSG.NET.TCP.Tcp4.Send(System.Int32)">
  2659. <summary>
  2660. int 4 byte send
  2661. <para>LittleEndian property flag 에 따라 자동 변환</para>
  2662. <para>최대한 MemoryBuffer를 활용한 send 방식으로 구현하며 사용 최소화</para>
  2663. </summary>
  2664. </member>
  2665. <member name="T:GSG.NET.TCP.TcpComm">
  2666. <summary>
  2667. <para>T2: 30</para>
  2668. <para>T6: 10</para>
  2669. </summary>
  2670. </member>
  2671. <member name="P:GSG.NET.TCP.TcpComm.Active">
  2672. <summary>
  2673. def: true, client mode
  2674. </summary>
  2675. </member>
  2676. <member name="P:GSG.NET.TCP.TcpComm.Ip">
  2677. <summary/>
  2678. </member>
  2679. <member name="P:GSG.NET.TCP.TcpComm.PortNo">
  2680. <summary/>
  2681. </member>
  2682. <member name="P:GSG.NET.TCP.TcpComm.RollCnt">
  2683. <summary>
  2684. <para>def: 1, not rolling</para>
  2685. </summary>
  2686. </member>
  2687. <member name="P:GSG.NET.TCP.TcpComm.RetryCnt">
  2688. <summary>
  2689. def: int.MaxValue
  2690. </summary>
  2691. </member>
  2692. <member name="P:GSG.NET.TCP.TcpComm.T2">
  2693. <summary>
  2694. 연결 요청 시간
  2695. <para>second</para>
  2696. <para>def: 30</para>
  2697. <para>-</para>
  2698. <para>Lan2개 무선 AP의 경우 10초 이상 경우를 보정하기위해 30초 기본값</para>
  2699. </summary>
  2700. </member>
  2701. <member name="P:GSG.NET.TCP.TcpComm.T5">
  2702. <summary>
  2703. second
  2704. <para>연결시도 후 다음 연결시 까지 쉬는 시간</para>
  2705. <para>def: 5</para>
  2706. </summary>
  2707. </member>
  2708. <member name="P:GSG.NET.TCP.TcpComm.T6">
  2709. <summary>
  2710. socket timeout
  2711. <para>연결후 socket read timeout 설정 시간</para>
  2712. <para>-</para>
  2713. <para>def: 10 second</para>
  2714. </summary>
  2715. </member>
  2716. <member name="M:GSG.NET.TCP.TcpComm.#ctor">
  2717. <summary/>
  2718. </member>
  2719. <member name="P:GSG.NET.TCP.TcpComm.Ipe">
  2720. <summary>
  2721. ip, port를 기준으로 IPEndPoint 가져옴.
  2722. </summary>
  2723. </member>
  2724. <member name="T:GSG.NET.TCP.TcpConnector">
  2725. <summary>
  2726. <para>Tcp 연결</para>
  2727. <para>Tcp Access</para>
  2728. <para>-</para>
  2729. </summary>
  2730. </member>
  2731. <member name="E:GSG.NET.TCP.TcpConnector.OnTcpStateChanged">
  2732. <summary>
  2733. <para>Tcp 수행 Log</para>
  2734. </summary>
  2735. </member>
  2736. <member name="P:GSG.NET.TCP.TcpConnector.Port">
  2737. <summary>
  2738. tcp port
  2739. </summary>
  2740. </member>
  2741. <member name="P:GSG.NET.TCP.TcpConnector.IpAddress">
  2742. <summary>
  2743. tcp ip
  2744. </summary>
  2745. </member>
  2746. <member name="M:GSG.NET.TCP.TcpConnector.Connect(GSG.NET.TCP.TcpComm)">
  2747. <summary>
  2748. TcpComm 객체를 이용한 연결.
  2749. </summary>
  2750. </member>
  2751. <member name="M:GSG.NET.TCP.TcpConnector.WriteBeInt(System.Int32)">
  2752. <summary>
  2753. <para>Write Big Endian Int32</para>
  2754. </summary>
  2755. </member>
  2756. <member name="M:GSG.NET.TCP.TcpConnector.WriteAscii(System.String)">
  2757. <summary>
  2758. <para>Write string data</para>
  2759. <para>Encoding.ASCII</para>
  2760. </summary>
  2761. </member>
  2762. <member name="M:GSG.NET.TCP.TcpConnector.WriteAscii(System.String,System.Text.Encoding)">
  2763. <summary>
  2764. <para>write string data</para>
  2765. </summary>
  2766. </member>
  2767. <member name="M:GSG.NET.TCP.TcpConnector.WriteFlush(System.Byte[])">
  2768. <summary>
  2769. <para>write and flush one time</para>
  2770. </summary>
  2771. </member>
  2772. <member name="M:GSG.NET.TCP.TcpConnector.WriteFlush(System.Byte[],System.Int32,System.Int32)">
  2773. <summary>
  2774. <para>write and flush one time</para>
  2775. </summary>
  2776. <param name="bs"></param>
  2777. <param name="offset">시작점</param>
  2778. <param name="size"></param>
  2779. </member>
  2780. <member name="M:GSG.NET.TCP.TcpConnector.CleanIn">
  2781. <summary>
  2782. In buffer clear
  2783. </summary>
  2784. </member>
  2785. <member name="M:GSG.NET.TCP.TcpConnector.Read1Byte">
  2786. <summary>
  2787. 1 바이트를 읽는다. int로 받는다.
  2788. </summary>
  2789. </member>
  2790. <member name="M:GSG.NET.TCP.TcpConnector.ReadByte">
  2791. <summary>
  2792. 1 바이트를 읽는다. byte로 받는다.
  2793. </summary>
  2794. </member>
  2795. <member name="M:GSG.NET.TCP.TcpConnector.ReadBytes(System.Int32)">
  2796. <summary>
  2797. blocking read
  2798. </summary>
  2799. <param name="size">byte size</param>
  2800. </member>
  2801. <member name="M:GSG.NET.TCP.TcpConnector.ReadBuf(System.Int32)">
  2802. <summary>
  2803. ReadBytes+MemoryBuffer + PosChange(0)
  2804. </summary>
  2805. </member>
  2806. <member name="M:GSG.NET.TCP.TcpConnector.ReadUntil(System.Byte)">
  2807. <summary>
  2808. <para>NewLine, ETX까지 읽는 경우.</para>
  2809. <para>b는 포함되지 않음</para>
  2810. <para>in stream에서 b 까지 읽음</para>
  2811. <para>-</para>
  2812. <para>ReadLine의 경우 0x0d(\r), 0x0a(\n)</para>
  2813. <para>Encoding.ASCII</para>
  2814. </summary>
  2815. </member>
  2816. <member name="M:GSG.NET.TCP.TcpConnector.ReadUntilAscii(System.Byte)">
  2817. <summary>
  2818. <para>NewLine, ETX까지 읽는 경우.</para>
  2819. <para>b는 포함되지 않음</para>
  2820. <para>1. in stream에서 b 까지 읽음</para>
  2821. <para>2. 0x00 -> 0x20</para>
  2822. <para>3. Encoding.ASCII string으로 추출함</para>
  2823. <para>-</para>
  2824. <para>ReadLine의 경우 0x0d(\r), 0x0a(\n)</para>
  2825. </summary>
  2826. </member>
  2827. <member name="M:GSG.NET.TCP.TcpConnector.ReadAscii(System.Int32)">
  2828. <summary>
  2829. <para>blocking read</para>
  2830. <para>0x00 -> 0x20</para>
  2831. <para>byte array를 Encoding.ASCII을 통해 string 변환</para>
  2832. </summary>
  2833. <param name="size">byte size</param>
  2834. </member>
  2835. <member name="M:GSG.NET.TCP.TcpConnector.ReadAscii(System.Int32,System.Text.Encoding)">
  2836. <summary>
  2837. <para>blocking read</para>
  2838. <para>0x00 -> 0x20</para>
  2839. <para>byte array를 Encoding.GetString을 통해 string 변환</para>
  2840. </summary>
  2841. <param name="size">byte size</param>
  2842. <param name="encoding">ascii encoding</param>
  2843. </member>
  2844. <member name="M:GSG.NET.TCP.TcpConnector.ReadLeUshort">
  2845. <summary>
  2846. <para>little endian read 2 byte ushort</para>
  2847. <para>1 0</para>
  2848. </summary>
  2849. </member>
  2850. <member name="M:GSG.NET.TCP.TcpConnector.ReadLeShort">
  2851. <summary>
  2852. little endian read 2 byte short
  2853. </summary>
  2854. </member>
  2855. <member name="M:GSG.NET.TCP.TcpConnector.ReadLeInt">
  2856. <summary>
  2857. little endian read 4 byte int
  2858. </summary>
  2859. </member>
  2860. <member name="M:GSG.NET.TCP.TcpConnector.ReadBeShort">
  2861. <summary>
  2862. big endian read 2 byte short
  2863. </summary>
  2864. </member>
  2865. <member name="M:GSG.NET.TCP.TcpConnector.ReadBeUshort">
  2866. <summary>
  2867. big endian read 2 byte ushort
  2868. </summary>
  2869. </member>
  2870. <member name="M:GSG.NET.TCP.TcpConnector.ReadBeInt">
  2871. <summary>
  2872. Read 0 0 0 1 Big endian 4 byte integer
  2873. </summary>
  2874. </member>
  2875. <member name="P:GSG.NET.TCP.TcpConnector.IPClient">
  2876. <summary>
  2877. ip, port를 기준으로 IPEndPoint 가져옴.
  2878. </summary>
  2879. </member>
  2880. <member name="P:GSG.NET.TCP.TcpConnector.EpRemote">
  2881. <summary>
  2882. <para>TryListen일 경우 접속정보.</para>
  2883. </summary>
  2884. </member>
  2885. <member name="P:GSG.NET.TCP.TcpConnector.Connected">
  2886. <summary>
  2887. tcp connect or not
  2888. </summary>
  2889. </member>
  2890. <member name="M:GSG.NET.TCP.TcpConnector.StopListen">
  2891. <summary>
  2892. <para>연결이 완료되면 자동 stop listen을 하므로</para>
  2893. <para>이 메소드는 listening중에 listen을 멈추게 하는 동작이다.</para>
  2894. </summary>
  2895. </member>
  2896. <member name="M:GSG.NET.TCP.TcpConnector.TryToListen">
  2897. <summary>
  2898. <para>server socket listen</para>
  2899. <para>OnTcpStateChanged로 state 추적 가능</para>
  2900. <para>TcpConnector는 연결하나에 대해 read, write를 하기 때문에</para>
  2901. <para>연결이 되면 Listen 동작을 stop한다.</para>
  2902. </summary>
  2903. </member>
  2904. <member name="P:GSG.NET.TCP.TcpConnector.Socket">
  2905. <summary>
  2906. Connected Socket object
  2907. </summary>
  2908. </member>
  2909. <member name="P:GSG.NET.TCP.TcpConnector.Available">
  2910. <summary/>
  2911. </member>
  2912. <member name="M:GSG.NET.TCP.TcpConnector.TryToConnect(System.Int32)">
  2913. <summary>
  2914. Tcp connect
  2915. </summary>
  2916. <param name="sleep_ms">connect fail sleep milli-second interval</param>
  2917. </member>
  2918. <member name="M:GSG.NET.TCP.TcpConnector.TryToConnect(System.Int32,System.Int32)">
  2919. <summary>
  2920. sync connect
  2921. </summary>
  2922. <param name="retryCount">connect retry count</param>
  2923. <param name="sleep_ms">connect fail sleep milli-second interval</param>
  2924. </member>
  2925. <member name="M:GSG.NET.TCP.TcpConnector.SetTcpClient(System.Net.Sockets.TcpClient)">
  2926. <summary>
  2927. NoDelayBinaryStream를 호출한 다음에 연결여부 Connected를 체크할수 있다.
  2928. </summary>
  2929. </member>
  2930. <member name="M:GSG.NET.TCP.TcpConnector.TryOneConnect">
  2931. <summary>
  2932. <para>HsmsManager의 T5처리 connection logging처리를 위해 추가됨.</para>
  2933. <para>한번만 Try하며 OnTcpStateChanged를 통해 수행 동작을 Logging이 가능하다.</para>
  2934. </summary>
  2935. </member>
  2936. <member name="M:GSG.NET.TCP.TcpConnector.TryOnceConnectUntilTimeout(System.Int32)">
  2937. <summary>
  2938. <para>Timeout 시간만 연결 한번 시도.</para>
  2939. <para>-</para>
  2940. <para>연결 여부는 Connected로 체크한다.</para>
  2941. <para>-</para>
  2942. <para>연결 성공: 50ms이내로 연결이 완료된다.</para>
  2943. <para>-</para>
  2944. <para>연결실패</para>
  2945. <para>Case1</para>
  2946. <para>IpAddress 찾기 성공했지만 Listen을 하고있지 않는 경우</para>
  2947. <para>1초 정도 시간이 걸리며 conn_timeout을 10초로 세팅한 경우에도 1-2초 후에 연결실패처리를 한다.</para>
  2948. <para>-</para>
  2949. <para>Case2</para>
  2950. <para>IpAddress 찾기 실패</para>
  2951. <para>conn_timeout만큼 시도를 하고 연결실패 처리를 한다.</para>
  2952. </summary>
  2953. <param name="timeout">millisecond</param>
  2954. </member>
  2955. <member name="M:GSG.NET.TCP.TcpConnector.ChangeRecvTimeout(System.Int32)">
  2956. <summary>
  2957. <para>change socket receive timeout</para>
  2958. </summary>
  2959. <param name="ms">milli-second</param>
  2960. </member>
  2961. <member name="M:GSG.NET.TCP.TcpConnector.ChangeTimeout(System.Int32)">
  2962. <summary>
  2963. Change send, recd timeout both
  2964. </summary>
  2965. </member>
  2966. <member name="M:GSG.NET.TCP.TcpConnector.CloseSocket">
  2967. <summary>
  2968. <para>close socket</para>
  2969. <para>Exception이 없다, 내부적으로 모두 처리함.</para>
  2970. </summary>
  2971. </member>
  2972. <member name="T:GSG.NET.TCP.TcpUtils">
  2973. <summary>
  2974. </summary>
  2975. </member>
  2976. <member name="M:GSG.NET.TCP.TcpUtils.GetTcpErrMsg(System.Exception)">
  2977. <summary>
  2978. <para>IOException: Message</para>
  2979. <para>SocketException: WSAE and InnerException Message</para>
  2980. </summary>
  2981. </member>
  2982. <member name="M:GSG.NET.TCP.TcpUtils.GetTcpErrMsg(System.Net.EndPoint,System.Exception)">
  2983. <summary>
  2984. <para>IOException: Message</para>
  2985. <para>SocketException: WSAE and InnerException Message</para>
  2986. </summary>
  2987. </member>
  2988. <member name="M:GSG.NET.TCP.TcpUtils.MakeWsaeMsg(System.String,System.Net.Sockets.SocketException)">
  2989. <summary>
  2990. WSAE: Windows Socket Application Exception
  2991. </summary>
  2992. </member>
  2993. <member name="T:GSG.NET.Utils.AppUtils">
  2994. <summary/>
  2995. </member>
  2996. <member name="P:GSG.NET.Utils.AppUtils.DevSvcMode">
  2997. <summary>
  2998. service develop(debug) mode check
  2999. <para>Environment.UserInteractive</para>
  3000. </summary>
  3001. </member>
  3002. <member name="P:GSG.NET.Utils.AppUtils.DevMode">
  3003. <summary>
  3004. develop(debug) mode check
  3005. <para>Debugger.IsAttached</para>
  3006. </summary>
  3007. </member>
  3008. <member name="M:GSG.NET.Utils.AppUtils.LogGlobalException">
  3009. <summary>
  3010. Logging UI, UnhandledException.
  3011. </summary>
  3012. </member>
  3013. <member name="M:GSG.NET.Utils.AppUtils.IsFindWindow(System.String)">
  3014. <summary/>
  3015. </member>
  3016. <member name="M:GSG.NET.Utils.AppUtils.ShowWindow(System.String)">
  3017. <summary/>
  3018. </member>
  3019. <member name="M:GSG.NET.Utils.AppUtils.HideWindow(System.String)">
  3020. <summary/>
  3021. </member>
  3022. <member name="M:GSG.NET.Utils.AppUtils.SendCloseMessageByTitle(System.String)">
  3023. <summary>
  3024. <para>Title을 이용한 종료.</para>
  3025. </summary>
  3026. </member>
  3027. <member name="M:GSG.NET.Utils.AppUtils.SendCloseMessage(System.IntPtr)">
  3028. <summary>
  3029. <para>Handle을 이용한 종료.</para>
  3030. </summary>
  3031. </member>
  3032. <member name="M:GSG.NET.Utils.AppUtils.SendCloseMessage(System.String)">
  3033. <summary>
  3034. <para>ProcessName을 이용한 종료 .exe는 생략해야함.</para>
  3035. </summary>
  3036. </member>
  3037. <member name="M:GSG.NET.Utils.AppUtils.DisableCloseButton(System.Windows.Forms.Form)">
  3038. <summary/>
  3039. </member>
  3040. <member name="T:GSG.NET.Utils.AssemblyUtils">
  3041. <summary>
  3042. Assembly reflection utils class
  3043. </summary>
  3044. </member>
  3045. <member name="M:GSG.NET.Utils.AssemblyUtils.ReadEmbedded(System.Reflection.Assembly,System.String,System.Text.Encoding)">
  3046. <summary>
  3047. Assembly의 Embedded resource읽어오기
  3048. </summary>
  3049. </member>
  3050. <member name="M:GSG.NET.Utils.AssemblyUtils.EmbedResRead(System.Reflection.Assembly,System.String,System.Text.Encoding)">
  3051. <summary>
  3052. Assembly의 Embedded resource읽어오기
  3053. </summary>
  3054. </member>
  3055. <member name="M:GSG.NET.Utils.AssemblyUtils.EmbedResCopy(System.Reflection.Assembly,System.String,System.String)">
  3056. <summary>
  3057. Embed resource copy to some file
  3058. </summary>
  3059. </member>
  3060. <member name="M:GSG.NET.Utils.AssemblyUtils.BuildDate(System.Reflection.Assembly)">
  3061. <summary/>
  3062. </member>
  3063. <member name="M:GSG.NET.Utils.AssemblyUtils.BuildDate(System.Type)">
  3064. <summary/>
  3065. </member>
  3066. <member name="M:GSG.NET.Utils.AssemblyUtils.IsNullableType(System.Type)">
  3067. <summary>
  3068. Nullable or not
  3069. </summary>
  3070. </member>
  3071. <member name="M:GSG.NET.Utils.AssemblyUtils.IsPublicProperty(System.Type,System.String)">
  3072. <summary>
  3073. public property or not
  3074. </summary>
  3075. </member>
  3076. <member name="M:GSG.NET.Utils.AssemblyUtils.IsPublicMethod(System.Type,System.String)">
  3077. <summary>
  3078. public method or not
  3079. </summary>
  3080. </member>
  3081. <member name="P:GSG.NET.Utils.AssemblyUtils.FlowareVersion">
  3082. <summary>
  3083. get Floware version info.
  3084. </summary>
  3085. </member>
  3086. <member name="M:GSG.NET.Utils.AssemblyUtils.GetVersion">
  3087. <summary>
  3088. <para>호출자의 Version 정보 display</para>
  3089. </summary>
  3090. </member>
  3091. <member name="M:GSG.NET.Utils.AssemblyUtils.GetVersion(System.Object)">
  3092. <summary>
  3093. get version some assembly or class
  3094. </summary>
  3095. </member>
  3096. <member name="M:GSG.NET.Utils.AssemblyUtils.GetDescription(System.Object)">
  3097. <summary>
  3098. get description assembly
  3099. </summary>
  3100. </member>
  3101. <member name="M:GSG.NET.Utils.AssemblyUtils.ToString(System.Object,System.String[])">
  3102. <summary>
  3103. <para>SPACE ToString utils.</para>
  3104. <para>ClassName, Propertys</para>
  3105. </summary>
  3106. <param name="me">this</param>
  3107. <param name="ignores">case sensitive, asterix(*) support</param>
  3108. </member>
  3109. <member name="M:GSG.NET.Utils.AssemblyUtils.ToNewLineString(System.Object,System.String[])">
  3110. <summary>
  3111. <para>NEWLINE ToString utils.</para>
  3112. <para>ClassName, Propertys</para>
  3113. </summary>
  3114. <param name="me">this</param>
  3115. <param name="ignores">case sensitive, asterix(*) support</param>
  3116. </member>
  3117. <member name="M:GSG.NET.Utils.AssemblyUtils.PropValue(System.Object,System.String)">
  3118. <summary>
  3119. </summary>
  3120. </member>
  3121. <member name="M:GSG.NET.Utils.AssemblyUtils.GetPropsPublic(System.Type)">
  3122. <summary>
  3123. <para>public property array</para>
  3124. </summary>
  3125. </member>
  3126. <member name="M:GSG.NET.Utils.AssemblyUtils.GetProps(System.Type)">
  3127. <summary>
  3128. <para>Public, NonPublic property array</para>
  3129. </summary>
  3130. </member>
  3131. <member name="M:GSG.NET.Utils.AssemblyUtils.GetChgdProp(System.Object,System.Object)">
  3132. <summary>
  3133. src, dest의 값이 변한 값들 추출하는 함수.
  3134. </summary>
  3135. <param name="src"></param>
  3136. <param name="dest"></param>
  3137. <returns>PropName, DestValue dictionary</returns>
  3138. </member>
  3139. <member name="M:GSG.NET.Utils.AssemblyUtils.GetClsName(System.Object)">
  3140. <summary/>
  3141. </member>
  3142. <member name="M:GSG.NET.Utils.AssemblyUtils.GetClsFullName(System.Object)">
  3143. <summary/>
  3144. </member>
  3145. <member name="M:GSG.NET.Utils.AssemblyUtils.GetConstName(System.Type,System.Object)">
  3146. <summary>
  3147. <para>const value를 이용하여 const name을 추출함.</para>
  3148. <para>읽기 쉬운 name을 추출함.</para>
  3149. <para>Public const만 추출 가능함.</para>
  3150. </summary>
  3151. </member>
  3152. <member name="M:GSG.NET.Utils.AssemblyUtils.Invoke(System.Object,System.String,System.Object[])">
  3153. <summary>
  3154. <para>public method reflection invoke</para>
  3155. </summary>
  3156. </member>
  3157. <member name="T:GSG.NET.Utils.Assert">
  3158. <summary>
  3159. <para>Assert Class</para>
  3160. </summary>
  3161. </member>
  3162. <member name="M:GSG.NET.Utils.Assert.AreEqual(System.Object,System.Object,System.String,System.Object[])">
  3163. <summary>
  3164. <para>objA와 objB는 Equals로 비교할 경우 True이어야 함.</para>
  3165. </summary>
  3166. </member>
  3167. <member name="M:GSG.NET.Utils.Assert.AreNotEqual(System.Object,System.Object,System.String,System.Object[])">
  3168. <summary>
  3169. <para>objA와 objB는 Equals로 비교할 경우 False이어야 함.</para>
  3170. </summary>
  3171. </member>
  3172. <member name="M:GSG.NET.Utils.Assert.NotNull(System.Object,System.String,System.Object[])">
  3173. <summary>
  3174. <para>null이면 안됨</para>
  3175. </summary>
  3176. </member>
  3177. <member name="M:GSG.NET.Utils.Assert.IsNull(System.Object,System.String,System.Object[])">
  3178. <summary>
  3179. <para>반드시 null 이어야 함.</para>
  3180. </summary>
  3181. </member>
  3182. <member name="M:GSG.NET.Utils.Assert.IsFalse(System.Boolean,System.String,System.Object[])">
  3183. <summary>
  3184. <para>반드시 false이어야 함</para>
  3185. </summary>
  3186. </member>
  3187. <member name="M:GSG.NET.Utils.Assert.IsTrue(System.Boolean,System.String,System.Object[])">
  3188. <summary>
  3189. <para>반드시 true이어야 함.</para>
  3190. </summary>
  3191. </member>
  3192. <member name="M:GSG.NET.Utils.Assert.Fail(System.String,System.Object[])">
  3193. <summary>
  3194. <para>fail처리</para>
  3195. </summary>
  3196. </member>
  3197. <member name="T:GSG.NET.Utils.AssertException">
  3198. <summary>
  3199. GSG.NET. Assert처리를 위한 AssertException
  3200. </summary>
  3201. </member>
  3202. <member name="M:GSG.NET.Utils.AssertException.#ctor">
  3203. <summary>
  3204. </summary>
  3205. </member>
  3206. <member name="M:GSG.NET.Utils.AssertException.#ctor(System.String)">
  3207. <summary>
  3208. </summary>
  3209. <param name="message"></param>
  3210. </member>
  3211. <member name="T:GSG.NET.Utils.BitUtils">
  3212. <summary>
  3213. <para>ReplaceNullToSpace(byte[] bs)</para>
  3214. <para>ReplaceNonAsciiToSpace(byte[] bs)</para>
  3215. <para>byte[] ChangeBitArray(int intV)</para>
  3216. <para>ChgBitString</para>
  3217. </summary>
  3218. </member>
  3219. <member name="M:GSG.NET.Utils.BitUtils.ReplaceNullToSpace(System.Byte[])">
  3220. <summary>
  3221. 0x00 -> 0x20
  3222. </summary>
  3223. <param name="bs"></param>
  3224. </member>
  3225. <member name="M:GSG.NET.Utils.BitUtils.ReplaceNonAsciiToSpace(System.Byte[])">
  3226. <summary>
  3227. ascii code !(0x20 ~ 0x7f) -> 0x20
  3228. </summary>
  3229. </member>
  3230. <member name="M:GSG.NET.Utils.BitUtils.ChgString(System.Int32,System.Int32)">
  3231. <summary>
  3232. int -> bit string
  3233. <para>length padright or substring</para>
  3234. </summary>
  3235. </member>
  3236. <member name="M:GSG.NET.Utils.BitUtils.ChgString(System.Int32)">
  3237. <summary>
  3238. int -> bit string
  3239. </summary>
  3240. </member>
  3241. <member name="M:GSG.NET.Utils.BitUtils.ChgInt32(System.String)">
  3242. <summary>
  3243. bit string -> int
  3244. <para>e.g. 00000000000000000000000000000011 -> 3</para>
  3245. </summary>
  3246. </member>
  3247. <member name="M:GSG.NET.Utils.BitUtils.ChgBytes(System.Int32)">
  3248. <summary>
  3249. <para>int -> byte array</para>
  3250. <para>e.g. 3 -> 00000000000000000000000000000011</para>
  3251. </summary>
  3252. </member>
  3253. <member name="M:GSG.NET.Utils.BitUtils.ChgBytes(System.Int16)">
  3254. <summary>
  3255. <para>int -> byte array</para>
  3256. <para>e.g. 3 -> 0000000000000011</para>
  3257. </summary>
  3258. </member>
  3259. <member name="M:GSG.NET.Utils.BitUtils.ChgBytes(System.Collections.BitArray)">
  3260. <summary>
  3261. BitArray -> byte array
  3262. </summary>
  3263. </member>
  3264. <member name="M:GSG.NET.Utils.BitUtils.ChgBitArray(System.Int32)">
  3265. <summary>
  3266. int -> BitArray(32)
  3267. </summary>
  3268. </member>
  3269. <member name="M:GSG.NET.Utils.BitUtils.ChgBitArray(System.Byte[])">
  3270. <summary>
  3271. Byte array -> BitArray
  3272. </summary>
  3273. </member>
  3274. <member name="M:GSG.NET.Utils.BitUtils.ChgInt32(System.Collections.BitArray)">
  3275. <summary>
  3276. BitArray to int
  3277. </summary>
  3278. </member>
  3279. <member name="M:GSG.NET.Utils.BitUtils.Enlarge8(System.Byte[])">
  3280. <summary>
  3281. <para>arg bytes를 bit format으로 8배 확장하여 byte array 구성</para>
  3282. </summary>
  3283. </member>
  3284. <member name="T:GSG.NET.Utils.CharsetUtils">
  3285. <summary>
  3286. Ascii &lt;-&gt; byte[]
  3287. </summary>
  3288. </member>
  3289. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_KOREAN">
  3290. <summary/>
  3291. </member>
  3292. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_EUC_KR">
  3293. <summary/>
  3294. </member>
  3295. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_ISO_8859_1">
  3296. <summary>
  3297. western european
  3298. </summary>
  3299. </member>
  3300. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_UTF8">
  3301. <summary/>
  3302. </member>
  3303. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_UTF16">
  3304. <summary/>
  3305. </member>
  3306. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_SHIFT_JIS">
  3307. <summary/>
  3308. </member>
  3309. <member name="F:GSG.NET.Utils.CharsetUtils.CODE_PAGE_CHINESE_1">
  3310. <summary>
  3311. 중국어 간체(GB2312)"
  3312. </summary>
  3313. </member>
  3314. <member name="M:GSG.NET.Utils.CharsetUtils.Change(System.String)">
  3315. <summary>
  3316. <para>string -> byte[]</para>
  3317. <para>Gets an encoding for the ASCII (7-bit) character set.</para>
  3318. </summary>
  3319. </member>
  3320. <member name="M:GSG.NET.Utils.CharsetUtils.Change(System.String,System.Text.Encoding)">
  3321. <summary>
  3322. <para>string -> byte[]</para>
  3323. </summary>
  3324. </member>
  3325. <member name="M:GSG.NET.Utils.CharsetUtils.Change(System.String,System.Int32)">
  3326. <summary>
  3327. Encode Code를 이용한 변경
  3328. </summary>
  3329. </member>
  3330. <member name="M:GSG.NET.Utils.CharsetUtils.Change(System.Byte[])">
  3331. <summary>
  3332. <para>byte[] -> string</para>
  3333. <para>Gets string for the ASCII (7-bit) character set.</para>
  3334. </summary>
  3335. </member>
  3336. <member name="M:GSG.NET.Utils.CharsetUtils.Change(System.Byte[],System.Text.Encoding)">
  3337. <summary>
  3338. <para>Ascii이므로 0x00 -> 0x20 기능 포함.</para>
  3339. <para>byte[] -> string</para>
  3340. </summary>
  3341. </member>
  3342. <member name="M:GSG.NET.Utils.CharsetUtils.Change(System.Byte[],System.Int32)">
  3343. <summary>
  3344. Encode Code를 이용한 변경
  3345. </summary>
  3346. </member>
  3347. <member name="T:GSG.NET.Utils.ChksumUtils">
  3348. <summary/>
  3349. </member>
  3350. <member name="F:GSG.NET.Utils.ChksumUtils.POLY_16_IBM">
  3351. <summary/>
  3352. </member>
  3353. <member name="M:GSG.NET.Utils.ChksumUtils.Crc16IBM(System.UInt16[],System.Int32,System.Byte[])">
  3354. <summary>
  3355. <para>CRC16 IBM.</para>
  3356. <para>Polynomial: x^16 + x^15 + x^2 + 1 (0xa001)</para>
  3357. <para>-</para>
  3358. <para>Modbus Crc16</para>
  3359. <para>GenTable(POLY_16_IBM)</para>
  3360. <para>initCrcV(0xffff)</para>
  3361. </summary>
  3362. <param name="table"></param>
  3363. <param name="initCrcV"></param>
  3364. <param name="bs"></param>
  3365. </member>
  3366. <member name="M:GSG.NET.Utils.ChksumUtils.Crc8(System.Byte[],System.Byte[])">
  3367. <summary>
  3368. <para>CRC8 = 0xd5, CRC8_CCITT = 0x07, CRC8_DALLAS_MAXIM = 0x31, CRC8_SAE_J1850 = 0x1D, CRC_8_WCDMA = 0x9b,</para>
  3369. </summary>
  3370. </member>
  3371. <member name="M:GSG.NET.Utils.ChksumUtils.Crc8GenTable(System.Int32)">
  3372. <summary>
  3373. x8 + x7 + x6 + x4 + x2 + 1
  3374. const byte poly = 0xd5;
  3375. </summary>
  3376. </member>
  3377. <member name="M:GSG.NET.Utils.ChksumUtils.Crc16GenTable(System.Int32)">
  3378. <summary>
  3379. <para>CRC16 IBM:Polynomial: x^16 + x^15 + x^2 + 1 (0xa001)</para>
  3380. </summary>
  3381. <param name="poly"></param>
  3382. </member>
  3383. <member name="T:GSG.NET.Utils.ConstUtils">
  3384. <summary>
  3385. Floware const data
  3386. </summary>
  3387. </member>
  3388. <member name="F:GSG.NET.Utils.ConstUtils.ONE_KILO_BYTES">
  3389. <summary>
  3390. 1024
  3391. </summary>
  3392. </member>
  3393. <member name="F:GSG.NET.Utils.ConstUtils.ONE_MEGA_BYTES">
  3394. <summary>
  3395. 1024 * ONE_KILO_BYTES;
  3396. </summary>
  3397. </member>
  3398. <member name="F:GSG.NET.Utils.ConstUtils.ONE_GIGA_BYTES">
  3399. <summary>
  3400. 1024 * ONE_MEGA_BYTES;
  3401. </summary>
  3402. </member>
  3403. <member name="F:GSG.NET.Utils.ConstUtils.ONE_SECOND">
  3404. <summary>
  3405. 1000 ms
  3406. </summary>
  3407. </member>
  3408. <member name="F:GSG.NET.Utils.ConstUtils.ONE_MINUTE">
  3409. <summary>
  3410. 60 * ONE_SECOND;
  3411. </summary>
  3412. </member>
  3413. <member name="F:GSG.NET.Utils.ConstUtils.ONE_HOUR">
  3414. <summary>
  3415. 60 * ONE_MINUTE;
  3416. </summary>
  3417. </member>
  3418. <member name="F:GSG.NET.Utils.ConstUtils.ONE_DAY">
  3419. <summary>
  3420. 24 * ONE_HOUR;
  3421. </summary>
  3422. </member>
  3423. <member name="F:GSG.NET.Utils.ConstUtils.ONE_WEEK">
  3424. <summary>
  3425. 7 * ONE_DAY;
  3426. </summary>
  3427. </member>
  3428. <member name="F:GSG.NET.Utils.ConstUtils.SPACE_CHAR">
  3429. <summary>
  3430. ' ';
  3431. </summary>
  3432. </member>
  3433. <member name="F:GSG.NET.Utils.ConstUtils.ESC">
  3434. <summary>
  3435. escape string
  3436. </summary>
  3437. </member>
  3438. <member name="F:GSG.NET.Utils.ConstUtils.DIR_CHAR">
  3439. <summary>
  3440. </summary>
  3441. </member>
  3442. <member name="F:GSG.NET.Utils.ConstUtils.DIR">
  3443. <summary>
  3444. </summary>
  3445. </member>
  3446. <member name="F:GSG.NET.Utils.ConstUtils.SPACE">
  3447. <summary>
  3448. " ";
  3449. </summary>
  3450. </member>
  3451. <member name="F:GSG.NET.Utils.ConstUtils.QUOTATION">
  3452. <summary>
  3453. </summary>
  3454. </member>
  3455. <member name="F:GSG.NET.Utils.ConstUtils.QUOTATION_SINGLE">
  3456. <summary>
  3457. </summary>
  3458. </member>
  3459. <member name="F:GSG.NET.Utils.ConstUtils.SPACE20">
  3460. <summary>
  3461. " ";
  3462. </summary>
  3463. </member>
  3464. <member name="F:GSG.NET.Utils.ConstUtils.SPACE25">
  3465. <summary>
  3466. " ";
  3467. </summary>
  3468. </member>
  3469. <member name="F:GSG.NET.Utils.ConstUtils.IP_LOCAL_HOST">
  3470. <summary>
  3471. <para>127.0.0.1</para>
  3472. </summary>
  3473. </member>
  3474. <member name="F:GSG.NET.Utils.ConstUtils.HTML_TAB">
  3475. <summary/>
  3476. </member>
  3477. <member name="F:GSG.NET.Utils.ConstUtils.HTML_SPACE">
  3478. <summary/>
  3479. </member>
  3480. <member name="T:GSG.NET.Utils.DateUtils">
  3481. <summary>
  3482. 각종 Begin, End함수 구현
  3483. <para>TimeChange 함수</para>
  3484. </summary>
  3485. </member>
  3486. <member name="M:GSG.NET.Utils.DateUtils.Quarter(System.DateTime)">
  3487. <summary/>
  3488. </member>
  3489. <member name="M:GSG.NET.Utils.DateUtils.BeginOfMonth(System.Int32,System.Int32)">
  3490. <summary>
  3491. 월초
  3492. </summary>
  3493. </member>
  3494. <member name="M:GSG.NET.Utils.DateUtils.BeginOfYear(System.Int32)">
  3495. <summary>
  3496. 년초
  3497. </summary>
  3498. </member>
  3499. <member name="M:GSG.NET.Utils.DateUtils.BeginOfWeek(System.Int32,System.Int32)">
  3500. <summary>
  3501. Week Number를 이용한 DateTime 가져오기
  3502. <para>1주 시작 Sunday 기준</para>
  3503. </summary>
  3504. </member>
  3505. <member name="M:GSG.NET.Utils.DateUtils.BeginOfWeek(System.DateTime)">
  3506. <summary>
  3507. <para>1주 시작 일~토 기준</para>
  3508. </summary>
  3509. </member>
  3510. <member name="M:GSG.NET.Utils.DateUtils.EndOfWeek(System.DateTime)">
  3511. <summary>
  3512. <para>1주끝 일~토 기준</para>
  3513. </summary>
  3514. </member>
  3515. <member name="M:GSG.NET.Utils.DateUtils.EndOfWeek(System.Int32,System.Int32)">
  3516. <summary>
  3517. Week를 이용한 DateTime 가져오기
  3518. <para>12월말일 경우에 다음년도의 날짜 초반을 가져온다. (향후 변경 가능성 있음)</para>
  3519. </summary>
  3520. </member>
  3521. <member name="M:GSG.NET.Utils.DateUtils.BeginOfQuarter(System.Int32,System.Int32)">
  3522. <summary/>
  3523. </member>
  3524. <member name="M:GSG.NET.Utils.DateUtils.EndOfYear(System.Int32)">
  3525. <summary>
  3526. 년말
  3527. </summary>
  3528. </member>
  3529. <member name="M:GSG.NET.Utils.DateUtils.EndOfQuarter(System.Int32,System.Int32)">
  3530. <summary>
  3531. <para>날짜 계산과 시간을 23:59:59로 계산하여 가져온다.</para>
  3532. </summary>
  3533. </member>
  3534. <member name="M:GSG.NET.Utils.DateUtils.EndOfMonth(System.Int32,System.Int32)">
  3535. <summary>
  3536. Month 마지막 날 자동 계산
  3537. </summary>
  3538. </member>
  3539. <member name="M:GSG.NET.Utils.DateUtils.EndOfDay(System.DateTime)">
  3540. <summary/>
  3541. </member>
  3542. <member name="M:GSG.NET.Utils.DateUtils.ChangeSystemTime(System.String)">
  3543. <summary>
  3544. PC 시간 변경.
  3545. <para>14자리. yyyyMMddHHmmss</para>
  3546. </summary>
  3547. </member>
  3548. <member name="P:GSG.NET.Utils.DateUtils.CurrentTimeMillis">
  3549. <summary/>
  3550. </member>
  3551. <member name="M:GSG.NET.Utils.DateUtils.ToTimeMillis(System.DateTime)">
  3552. <summary>
  3553. may be also new TimeSpan(DateTime.UtcNow.Ticks).TotalMilliseconds;
  3554. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_jlca/html/vberrjavalangsystemcurrenttimemillis.asp
  3555. </summary>
  3556. </member>
  3557. <member name="M:GSG.NET.Utils.DateUtils.ToString(System.DateTime)">
  3558. <summary>
  3559. <para>yyyy-MMdd HH:mm:ss.fff</para>
  3560. </summary>
  3561. </member>
  3562. <member name="M:GSG.NET.Utils.DateUtils.ToString(System.DateTime,System.String)">
  3563. <summary>
  3564. <para>Invariant Culture Format</para>
  3565. <para>dt.ToString(format, System.Globalization.DateTimeFormatInfo.InvariantInfo)</para>
  3566. </summary>
  3567. </member>
  3568. <member name="M:GSG.NET.Utils.DateUtils.WeekNumber(System.DateTime)">
  3569. <summary>
  3570. arg의 DateTime이 몇번째 Week인지 가져오기
  3571. <para>해가 바뀌는 부분을 감안하여 일요일 기준으로 WeekNumber를 계산한다.</para>
  3572. </summary>
  3573. </member>
  3574. <member name="M:GSG.NET.Utils.DateUtils.DayCount(System.DateTime)">
  3575. <summary>
  3576. DateTime의 day가 몇일인지 가져오기.
  3577. </summary>
  3578. </member>
  3579. <member name="M:GSG.NET.Utils.DateUtils.Parse(System.String)">
  3580. <summary>
  3581. <para>Parse가 실패할 경우 1년,1월,1일 반환.</para>
  3582. </summary>
  3583. </member>
  3584. <member name="M:GSG.NET.Utils.DateUtils.Parse(System.String,System.String)">
  3585. <summary>
  3586. <para>Parse가 실패할 경우 1년,1월,1일 반환.</para>
  3587. <para>format을 이용한 parse</para>
  3588. </summary>
  3589. </member>
  3590. <member name="T:GSG.NET.Utils.DelegateUtils">
  3591. <summary>
  3592. <para>DelegateUtils</para>
  3593. <para>Change UI Thread</para>
  3594. <para>Method용 Invoke 지원</para>
  3595. <para>Delegate용 Invoke 지원</para>
  3596. </summary>
  3597. </member>
  3598. <member name="M:GSG.NET.Utils.DelegateUtils.IsControlInstance(System.Delegate)">
  3599. <summary>
  3600. <para>Delegate를 이용한 호출 메소드가 Control 즉 화면인지 여부</para>
  3601. </summary>
  3602. </member>
  3603. <member name="M:GSG.NET.Utils.DelegateUtils.IsWPFControlInstance(System.Delegate)">
  3604. <summary>
  3605. Delegate 에 Target 이 WPF control 인지 확인한다.
  3606. </summary>
  3607. <param name="dlg"></param>
  3608. <returns></returns>
  3609. </member>
  3610. <member name="M:GSG.NET.Utils.DelegateUtils.GetControlTarget(System.Delegate)">
  3611. <summary>
  3612. <para>Delegate의 Target을 가져옴.</para>
  3613. </summary>
  3614. </member>
  3615. <member name="M:GSG.NET.Utils.DelegateUtils.GetWPFControlTarget(System.Delegate)">
  3616. <summary>
  3617. WPF Control 을 가져옴.
  3618. </summary>
  3619. <param name="dlg"></param>
  3620. <returns></returns>
  3621. </member>
  3622. <member name="M:GSG.NET.Utils.DelegateUtils.ChgCtrlText(System.Windows.Forms.Control,System.Object)">
  3623. <summary>
  3624. <para>Cross-thread 처리 완료.</para>
  3625. </summary>
  3626. </member>
  3627. <member name="M:GSG.NET.Utils.DelegateUtils.Invoke(System.Action)">
  3628. <summary>
  3629. <para>BeginInvoke를 이용해서 화면 스레드로 변환함</para>
  3630. <para>호출 method는 void 0 argument가 없어야 함.</para>
  3631. <para>-</para>
  3632. <para>Exception 내부 처리 및 로깅</para>
  3633. </summary>
  3634. </member>
  3635. <member name="M:GSG.NET.Utils.DelegateUtils.Invoke``1(System.Action{``0},``0)">
  3636. <summary>
  3637. <para>BeginInvoke를 이용해서 화면 스레드로 변환함</para>
  3638. <para>-</para>
  3639. <para>호출 method는 void 1 argument.</para>
  3640. </summary>
  3641. </member>
  3642. <member name="M:GSG.NET.Utils.DelegateUtils.Invoke``2(System.Action{``0,``1},``0,``1)">
  3643. <summary>
  3644. <para>BeginInvoke를 이용해서 화면 스레드로 변환함</para>
  3645. <para>-</para>
  3646. <para>호출 method는 void 2 argument.</para>
  3647. </summary>
  3648. </member>
  3649. <member name="M:GSG.NET.Utils.DelegateUtils.Invoke``3(System.Action{``0,``1,``2},``0,``1,``2)">
  3650. <summary>
  3651. <para>BeginInvoke를 이용해서 화면 스레드로 변환함</para>
  3652. <para>-</para>
  3653. <para>호출 method는 void 3 argument.</para>
  3654. </summary>
  3655. </member>
  3656. <member name="M:GSG.NET.Utils.DelegateUtils.Invoke``4(System.Action{``0,``1,``2,``3},``0,``1,``2,``3)">
  3657. <summary>
  3658. <para>BeginInvoke를 이용해서 화면 스레드로 변환함</para>
  3659. <para>-</para>
  3660. <para>호출 method는 void 4 argument.</para>
  3661. </summary>
  3662. </member>
  3663. <member name="M:GSG.NET.Utils.DelegateUtils.Call(System.Delegate,System.Object[])">
  3664. <summary>
  3665. <para>단순 호출, 화면 Thread등을 고려하지 않는다.</para>
  3666. <para>Exception이 발생함</para>
  3667. <para>Exception 미 처리시 CallEx 사용</para>
  3668. </summary>
  3669. </member>
  3670. <member name="M:GSG.NET.Utils.DelegateUtils.CallEx(System.Delegate,System.Object[])">
  3671. <summary>
  3672. </summary>
  3673. </member>
  3674. <member name="M:GSG.NET.Utils.DelegateUtils.Invoke(System.Delegate,System.Object[])">
  3675. <summary>
  3676. <para>delegate용 Thread change Invoke</para>
  3677. </summary>
  3678. <param name="dlg">Event입력</param>
  3679. <param name="args"></param>
  3680. </member>
  3681. <member name="M:GSG.NET.Utils.DelegateUtils.RaiseEventAsync(System.Delegate,System.Object[])">
  3682. <summary>
  3683. Test 필요.
  3684. <para>delegate용 Thread change Invoke</para>
  3685. </summary>
  3686. <param name="handler">Event입력</param>
  3687. <param name="args"></param>
  3688. </member>
  3689. <member name="T:GSG.NET.Utils.HexaUtils">
  3690. <summary>
  3691. <para>byte를 string으로 변환함.</para>
  3692. </summary>
  3693. </member>
  3694. <member name="F:GSG.NET.Utils.HexaUtils.map1">
  3695. <summary>
  3696. string key를 이용해 byte를 찾기위함. (성능향상을 위해 구현함)
  3697. </summary>
  3698. </member>
  3699. <member name="M:GSG.NET.Utils.HexaUtils.StringToByte(System.String)">
  3700. <summary>
  3701. "01" -> 1 byte
  3702. "FF" -> 0xff byte
  3703. </summary>
  3704. </member>
  3705. <member name="M:GSG.NET.Utils.HexaUtils.ToString(System.Byte[])">
  3706. <summary>
  3707. hexspace를 이용하며 delimeter를 space로 처리함.
  3708. </summary>
  3709. </member>
  3710. <member name="M:GSG.NET.Utils.HexaUtils.ToString(System.Byte[],System.Int32)">
  3711. <summary>
  3712. </summary>
  3713. </member>
  3714. <member name="M:GSG.NET.Utils.HexaUtils.ToFF(System.Byte[])">
  3715. <summary>
  3716. <para>FF format으로 붙인다</para>
  3717. <para>space가 없으며 DB blob 저장시 유용함.</para>
  3718. </summary>
  3719. </member>
  3720. <member name="M:GSG.NET.Utils.HexaUtils.FromFF(System.String)">
  3721. <summary>
  3722. <para>HexaString -> byte array</para>
  3723. </summary>
  3724. </member>
  3725. <member name="M:GSG.NET.Utils.HexaUtils.Hex2StringSpace(System.Byte)">
  3726. <summary>
  3727. "00 ", "01 ", "02 ", "03 "...
  3728. </summary>
  3729. </member>
  3730. <member name="M:GSG.NET.Utils.HexaUtils.Hex2String(System.Byte)">
  3731. <summary>
  3732. "00", "01", "02", "03"...
  3733. </summary>
  3734. </member>
  3735. <member name="T:GSG.NET.Utils.IniUtils">
  3736. <summary>
  3737. Win32 ini
  3738. </summary>
  3739. </member>
  3740. <member name="F:GSG.NET.Utils.IniUtils.MAX_SECTION_SIZE">
  3741. <summary>
  3742. The maximum size of a section in an ini file.
  3743. </summary>
  3744. <remarks>
  3745. This property defines the maximum size of the buffers
  3746. used to retreive data from an ini file. This value is
  3747. the maximum allowed by the win32 functions
  3748. GetPrivateProfileSectionNames() or
  3749. GetPrivateProfileString().
  3750. </remarks>
  3751. </member>
  3752. <member name="P:GSG.NET.Utils.IniUtils.FileName">
  3753. <summary>
  3754. <para>없으면 파일을 만드므로 File Exist Check하지 않는다.</para>
  3755. </summary>
  3756. </member>
  3757. <member name="T:GSG.NET.Utils.IniUtils.NativeMethods">
  3758. <summary>
  3759. A static class that provides the win32 P/Invoke signatures
  3760. used by this class.
  3761. </summary>
  3762. <remarks>
  3763. Note: In each of the declarations below, we explicitly set CharSet to
  3764. Auto. By default in C#, CharSet is set to Ansi, which reduces
  3765. performance on windows 2000 and above due to needing to convert strings
  3766. from Unicode (the native format for all .Net strings) to Ansi before
  3767. marshalling. Using Auto lets the marshaller select the Unicode version of
  3768. these functions when available.
  3769. </remarks>
  3770. </member>
  3771. <member name="M:GSG.NET.Utils.IniUtils.GetString(System.String,System.String,System.String)">
  3772. <summary>
  3773. Gets the value of a setting in an ini file as a <see cref="T:System.String"/>.
  3774. </summary>
  3775. <param name="sectionName">The name of the section to read from.</param>
  3776. <param name="keyName">The name of the key in section to read.</param>
  3777. <param name="defaultValue">The default value to return if the key
  3778. cannot be found.</param>
  3779. <returns>The value of the key, if found. Otherwise, returns
  3780. <paramref name="defaultValue"/></returns>
  3781. <remarks>
  3782. The retreived value must be less than 512KB in length.
  3783. </remarks>
  3784. <exception cref="T:System.ArgumentNullException">
  3785. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3786. a null reference (Nothing in VB)
  3787. </exception>
  3788. </member>
  3789. <member name="M:GSG.NET.Utils.IniUtils.GetInt16(System.String,System.String,System.Int16)">
  3790. <summary>
  3791. Gets the value of a setting in an ini file as a <see cref="T:System.Int16"/>.
  3792. </summary>
  3793. <param name="sectionName">The name of the section to read from.</param>
  3794. <param name="keyName">The name of the key in section to read.</param>
  3795. <param name="defaultValue">The default value to return if the key
  3796. cannot be found.</param>
  3797. <returns>The value of the key, if found. Otherwise, returns
  3798. <paramref name="defaultValue"/>.</returns>
  3799. <exception cref="T:System.ArgumentNullException">
  3800. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3801. a null reference (Nothing in VB)
  3802. </exception>
  3803. </member>
  3804. <member name="M:GSG.NET.Utils.IniUtils.GetInt32(System.String,System.String,System.Int32)">
  3805. <summary>
  3806. Gets the value of a setting in an ini file as a <see cref="T:System.Int32"/>.
  3807. </summary>
  3808. <param name="sectionName">The name of the section to read from.</param>
  3809. <param name="keyName">The name of the key in section to read.</param>
  3810. <param name="defaultValue">The default value to return if the key
  3811. cannot be found.</param>
  3812. <returns>The value of the key, if found. Otherwise, returns
  3813. <paramref name="defaultValue"/></returns>
  3814. <exception cref="T:System.ArgumentNullException">
  3815. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3816. a null reference (Nothing in VB)
  3817. </exception>
  3818. </member>
  3819. <member name="M:GSG.NET.Utils.IniUtils.GetDouble(System.String,System.String,System.Double)">
  3820. <summary>
  3821. Gets the value of a setting in an ini file as a <see cref="T:System.Double"/>.
  3822. </summary>
  3823. <param name="sectionName">The name of the section to read from.</param>
  3824. <param name="keyName">The name of the key in section to read.</param>
  3825. <param name="defaultValue">The default value to return if the key
  3826. cannot be found.</param>
  3827. <returns>The value of the key, if found. Otherwise, returns
  3828. <paramref name="defaultValue"/></returns>
  3829. <exception cref="T:System.ArgumentNullException">
  3830. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3831. a null reference (Nothing in VB)
  3832. </exception>
  3833. </member>
  3834. <member name="M:GSG.NET.Utils.IniUtils.GetSectionValuesAsList(System.String)">
  3835. <summary>
  3836. Gets all of the values in a section as a list.
  3837. </summary>
  3838. <param name="sectionName">
  3839. Name of the section to retrieve values from.
  3840. </param>
  3841. <returns>
  3842. A <see cref="T:System.Collections.Generic.List`1"/> containing <see cref="T:System.Collections.Generic.KeyValuePair`2"/> objects
  3843. that describe this section. Use this verison if a section may contain
  3844. multiple items with the same key value. If you know that a section
  3845. cannot contain multiple values with the same key name or you don't
  3846. care about the duplicates, use the more convenient
  3847. <see cref="M:GSG.NET.Utils.IniUtils.GetSectionValues(System.String)"/> function.
  3848. </returns>
  3849. <exception cref="T:System.ArgumentNullException">
  3850. <paramref name="sectionName"/> is a null reference (Nothing in VB)
  3851. </exception>
  3852. </member>
  3853. <member name="M:GSG.NET.Utils.IniUtils.GetSectionValues(System.String)">
  3854. <summary>
  3855. Gets all of the values in a section as a dictionary.
  3856. </summary>
  3857. <param name="sectionName">
  3858. Name of the section to retrieve values from.
  3859. </param>
  3860. <returns>
  3861. A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the key/value
  3862. pairs found in this section.
  3863. </returns>
  3864. <remarks>
  3865. If a section contains more than one key with the same name,
  3866. this function only returns the first instance. If you need to
  3867. get all key/value pairs within a section even when keys have the
  3868. same name, use <see cref="M:GSG.NET.Utils.IniUtils.GetSectionValuesAsList(System.String)"/>.
  3869. </remarks>
  3870. <exception cref="T:System.ArgumentNullException">
  3871. <paramref name="sectionName"/> is a null reference (Nothing in VB)
  3872. </exception>
  3873. </member>
  3874. <member name="M:GSG.NET.Utils.IniUtils.GetKeyNames(System.String)">
  3875. <summary>
  3876. Gets the names of all keys under a specific section in the ini file.
  3877. </summary>
  3878. <param name="sectionName">
  3879. The name of the section to read key names from.
  3880. </param>
  3881. <returns>An array of key names.</returns>
  3882. <remarks>
  3883. The total length of all key names in the section must be
  3884. less than 512KB in length.
  3885. </remarks>
  3886. <exception cref="T:System.ArgumentNullException">
  3887. <paramref name="sectionName"/> is a null reference (Nothing in VB)
  3888. </exception>
  3889. </member>
  3890. <member name="M:GSG.NET.Utils.IniUtils.GetSectionNames">
  3891. <summary>
  3892. </summary>
  3893. </member>
  3894. <member name="P:GSG.NET.Utils.IniUtils.AllSectionNames">
  3895. <summary>
  3896. Gets the names of all sections in the ini file.
  3897. </summary>
  3898. <returns>An array of section names.</returns>
  3899. <remarks>
  3900. The total length of all section names in the section must be
  3901. less than 512KB in length.
  3902. </remarks>
  3903. </member>
  3904. <member name="M:GSG.NET.Utils.IniUtils.ConvertNullSeperatedStringToStringArray(System.IntPtr,System.Int32)">
  3905. <summary>
  3906. Converts the null seperated pointer to a string into a string array.
  3907. </summary>
  3908. <param name="ptr">A pointer to string data.</param>
  3909. <param name="valLength">
  3910. Length of the data pointed to by <paramref name="ptr"/>.
  3911. </param>
  3912. <returns>
  3913. An array of strings; one for each null found in the array of characters pointed
  3914. at by <paramref name="ptr"/>.
  3915. </returns>
  3916. </member>
  3917. <member name="M:GSG.NET.Utils.IniUtils.WriteValueInternal(System.String,System.String,System.String)">
  3918. <summary>
  3919. Writes a <see cref="T:System.String"/> value to the ini file.
  3920. </summary>
  3921. <param name="sectionName">The name of the section to write to .</param>
  3922. <param name="keyName">The name of the key to write to.</param>
  3923. <param name="value">The string value to write</param>
  3924. <exception cref="T:System.ComponentModel.Win32Exception">
  3925. The write failed.
  3926. </exception>
  3927. </member>
  3928. <member name="M:GSG.NET.Utils.IniUtils.WriteValue(System.String,System.String,System.String)">
  3929. <summary>
  3930. Writes a <see cref="T:System.String"/> value to the ini file.
  3931. </summary>
  3932. <param name="sectionName">The name of the section to write to .</param>
  3933. <param name="keyName">The name of the key to write to.</param>
  3934. <param name="value">The string value to write</param>
  3935. <exception cref="T:System.ComponentModel.Win32Exception">
  3936. The write failed.
  3937. </exception>
  3938. <exception cref="T:System.ArgumentNullException">
  3939. <paramref name="sectionName"/> or <paramref name="keyName"/> or
  3940. <paramref name="value"/> are a null reference (Nothing in VB)
  3941. </exception>
  3942. </member>
  3943. <member name="M:GSG.NET.Utils.IniUtils.WriteValue(System.String,System.String,System.Int16)">
  3944. <summary>
  3945. Writes an <see cref="T:System.Int16"/> value to the ini file.
  3946. </summary>
  3947. <param name="sectionName">The name of the section to write to .</param>
  3948. <param name="keyName">The name of the key to write to.</param>
  3949. <param name="value">The value to write</param>
  3950. <exception cref="T:System.ComponentModel.Win32Exception">
  3951. The write failed.
  3952. </exception>
  3953. </member>
  3954. <member name="M:GSG.NET.Utils.IniUtils.WriteValue(System.String,System.String,System.Int32)">
  3955. <summary>
  3956. Writes an <see cref="T:System.Int32"/> value to the ini file.
  3957. </summary>
  3958. <param name="sectionName">The name of the section to write to .</param>
  3959. <param name="keyName">The name of the key to write to.</param>
  3960. <param name="value">The value to write</param>
  3961. <exception cref="T:System.ComponentModel.Win32Exception">
  3962. The write failed.
  3963. </exception>
  3964. <exception cref="T:System.ArgumentNullException">
  3965. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3966. a null reference (Nothing in VB)
  3967. </exception>
  3968. </member>
  3969. <member name="M:GSG.NET.Utils.IniUtils.WriteValue(System.String,System.String,System.Single)">
  3970. <summary>
  3971. Writes an <see cref="T:System.Single"/> value to the ini file.
  3972. </summary>
  3973. <param name="sectionName">The name of the section to write to .</param>
  3974. <param name="keyName">The name of the key to write to.</param>
  3975. <param name="value">The value to write</param>
  3976. <exception cref="T:System.ComponentModel.Win32Exception">
  3977. The write failed.
  3978. </exception>
  3979. <exception cref="T:System.ArgumentNullException">
  3980. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3981. a null reference (Nothing in VB)
  3982. </exception>
  3983. </member>
  3984. <member name="M:GSG.NET.Utils.IniUtils.WriteValue(System.String,System.String,System.Double)">
  3985. <summary>
  3986. Writes an <see cref="T:System.Double"/> value to the ini file.
  3987. </summary>
  3988. <param name="sectionName">The name of the section to write to .</param>
  3989. <param name="keyName">The name of the key to write to.</param>
  3990. <param name="value">The value to write</param>
  3991. <exception cref="T:System.ComponentModel.Win32Exception">
  3992. The write failed.
  3993. </exception>
  3994. <exception cref="T:System.ArgumentNullException">
  3995. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  3996. a null reference (Nothing in VB)
  3997. </exception>
  3998. </member>
  3999. <member name="M:GSG.NET.Utils.IniUtils.DeleteKey(System.String,System.String)">
  4000. <summary>
  4001. Deletes the specified key from the specified section.
  4002. </summary>
  4003. <param name="sectionName">
  4004. Name of the section to remove the key from.
  4005. </param>
  4006. <param name="keyName">
  4007. Name of the key to remove.
  4008. </param>
  4009. <exception cref="T:System.ArgumentNullException">
  4010. <paramref name="sectionName"/> or <paramref name="keyName"/> are
  4011. a null reference (Nothing in VB)
  4012. </exception>
  4013. </member>
  4014. <member name="M:GSG.NET.Utils.IniUtils.DeleteSection(System.String)">
  4015. <summary>
  4016. Deletes a section from the ini file.
  4017. </summary>
  4018. <param name="sectionName">
  4019. Name of the section to delete.
  4020. </param>
  4021. <exception cref="T:System.ArgumentNullException">
  4022. <paramref name="sectionName"/> is a null reference (Nothing in VB)
  4023. </exception>
  4024. </member>
  4025. <member name="T:GSG.NET.Utils.MemoryBuffer">
  4026. <summary>
  4027. <para>memory stream buffer, default size 256</para>
  4028. <para>Append와 Read함수 지원함</para>
  4029. <para>.net이 little endian이 기본이므로</para>
  4030. <para>Little endian은 byte swap을 하지 않고 Big endian은 byte swap을 하고 값을 읽고쓴다</para>
  4031. <para></para>
  4032. <para>Append</para>
  4033. <para>MemoryBuffer에 데이터를 추가하는 함수</para>
  4034. <para>최종 ToBytes를 이용하여 한번에 byte array를 추출함.</para>
  4035. <para></para>
  4036. <para>Read</para>
  4037. <para>mb.Append(byte[])를 하고</para>
  4038. <para>ResetSeek()를 이용하여 position초기화</para>
  4039. <para>ReadLexxx 등을 사용하여 position을 자동 이동시키며</para>
  4040. <para>byte array에서 int, short등을 추출한다.</para>
  4041. <para>-</para>
  4042. <para>201603:Append의 return값을 제거함, Length와 Pos가 불명확함.</para>
  4043. </summary>
  4044. </member>
  4045. <member name="M:GSG.NET.Utils.MemoryBuffer.#ctor">
  4046. <summary>
  4047. 기본 size:256으로 할당한다
  4048. </summary>
  4049. </member>
  4050. <member name="M:GSG.NET.Utils.MemoryBuffer.#ctor(System.Int32)">
  4051. <summary>
  4052. bufSize 만큼 buffer를 할당한다
  4053. </summary>
  4054. </member>
  4055. <member name="M:GSG.NET.Utils.MemoryBuffer.#ctor(System.Byte[])">
  4056. <summary>
  4057. 1. buffer를 입력된 bs 만큼 할당한다
  4058. <para>2. Append를 내부적으로 호출하여 bs를 append한다</para>
  4059. <para>3. Position을 최초로 이동하여 바로 ReadXXX를 사용가능하게 한다</para>
  4060. </summary>
  4061. </member>
  4062. <member name="M:GSG.NET.Utils.MemoryBuffer.Reset">
  4063. <summary>
  4064. <para>MemoryBuffer를 초기화하고(데이터 삭제됨)</para>
  4065. <para>새로운 MemoryStream을 생성함.</para>
  4066. </summary>
  4067. </member>
  4068. <member name="M:GSG.NET.Utils.MemoryBuffer.Append(System.Byte[])">
  4069. <summary>
  4070. bs -> MemoryBuffer
  4071. </summary>
  4072. </member>
  4073. <member name="M:GSG.NET.Utils.MemoryBuffer.PosChange(System.Int32)">
  4074. <summary>
  4075. <para>Change curr position</para>
  4076. <para>Multi thread에서는 Lock처리가 필요함.</para>
  4077. </summary>
  4078. </member>
  4079. <member name="M:GSG.NET.Utils.MemoryBuffer.PosShift(System.Int32)">
  4080. <summary>
  4081. <para>Shift left or right</para>
  4082. </summary>
  4083. </member>
  4084. <member name="M:GSG.NET.Utils.MemoryBuffer.ResetSeek">
  4085. <summary>
  4086. <para>MemoryBuffer position을 처음으로 복귀시킴.</para>
  4087. <para>Pos '0'</para>
  4088. </summary>
  4089. </member>
  4090. <member name="M:GSG.NET.Utils.MemoryBuffer.PosBegin">
  4091. <summary>
  4092. Position을 제일 앞으로
  4093. </summary>
  4094. </member>
  4095. <member name="M:GSG.NET.Utils.MemoryBuffer.PosEnd">
  4096. <summary>
  4097. Position을 제일 마지막으로
  4098. </summary>
  4099. </member>
  4100. <member name="M:GSG.NET.Utils.MemoryBuffer.PeekBytes(System.Int32,System.Int32)">
  4101. <summary>
  4102. Position 이동을 하지 않는다.
  4103. </summary>
  4104. </member>
  4105. <member name="M:GSG.NET.Utils.MemoryBuffer.Append(System.Int32)">
  4106. <summary>
  4107. <para>integer를 byte를 casting하여 append함수 호출</para>
  4108. </summary>
  4109. <param name="i">0~255</param>
  4110. </member>
  4111. <member name="M:GSG.NET.Utils.MemoryBuffer.Fill(System.Int32,System.Byte)">
  4112. <summary>
  4113. length만큼 b 로 채워서 Append함.
  4114. </summary>
  4115. </member>
  4116. <member name="M:GSG.NET.Utils.MemoryBuffer.Append(GSG.NET.Utils.MemoryBuffer)">
  4117. <summary>
  4118. from의 데이터를 this memory buffer를 합친다.
  4119. <para>from의 Position에 관계없이 from의 모든 데이터를 this에 추가한다.</para>
  4120. <para>this의 position은 유효함.</para>
  4121. </summary>
  4122. </member>
  4123. <member name="M:GSG.NET.Utils.MemoryBuffer.Append(System.Byte[],System.Int32)">
  4124. <summary>
  4125. bs -> MemoryBuffer
  4126. </summary>
  4127. <param name="bs"></param>
  4128. <param name="offset">From bs offset to end</param>
  4129. </member>
  4130. <member name="M:GSG.NET.Utils.MemoryBuffer.Append(System.Byte[],System.Int32,System.Int32)">
  4131. <summary>
  4132. <para>bs -> MemoryBuffer</para>
  4133. <para>length를 둔 이유는 넘치거나 적은 데이터의 보정을 위함.</para>
  4134. <para>bs가 length를 넘치거나 적은 경우 대비한 로직.</para>
  4135. </summary>
  4136. <param name="bs"></param>
  4137. <param name="offset">bs의 시작점</param>
  4138. <param name="size">offset부터 append 할 byte size</param>
  4139. </member>
  4140. <member name="M:GSG.NET.Utils.MemoryBuffer.Chg(System.Byte[],System.Int32,System.Int32)">
  4141. <summary>
  4142. <para>MemoryBuffer 값변경.</para>
  4143. <para>offset은 bs의 시작점.</para>
  4144. </summary>
  4145. </member>
  4146. <member name="M:GSG.NET.Utils.MemoryBuffer.Chg(System.Byte)">
  4147. <summary>
  4148. 현재위치(pos)의 1 byte 값만 변경함
  4149. <para>성능향상 용도</para>
  4150. </summary>
  4151. </member>
  4152. <member name="M:GSG.NET.Utils.MemoryBuffer.Chg(System.Int32,System.Byte[])">
  4153. <summary>
  4154. <para>MemoryBuffer 값변경.</para>
  4155. <para>pos 부터 bs로 변경하고 원래 Position으로 반환한다.</para>
  4156. </summary>
  4157. </member>
  4158. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeUint(System.UInt32)">
  4159. <summary>
  4160. little endian
  4161. </summary>
  4162. </member>
  4163. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeInt(System.Int32)">
  4164. <summary>
  4165. little endian
  4166. </summary>
  4167. </member>
  4168. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeInt3(System.Int32)">
  4169. <summary>
  4170. 3byte int 처리.
  4171. </summary>
  4172. </member>
  4173. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeShort(System.Int32)">
  4174. <summary>
  4175. Append little endian short
  4176. </summary>
  4177. </member>
  4178. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeShort(System.Int16)">
  4179. <summary>
  4180. little endian
  4181. </summary>
  4182. </member>
  4183. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeUshort(System.Int32)">
  4184. <summary>
  4185. little endian
  4186. </summary>
  4187. </member>
  4188. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeUshort(System.UInt16)">
  4189. <summary>
  4190. little endian
  4191. </summary>
  4192. </member>
  4193. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendLeFloat(System.Single)">
  4194. <summary>
  4195. Little endian 4 byte float value append.
  4196. </summary>
  4197. </member>
  4198. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeFloat(System.Single)">
  4199. <summary>
  4200. Big endian 4 byte float value append
  4201. </summary>
  4202. </member>
  4203. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeDouble(System.Double)">
  4204. <summary>
  4205. Big endian 8 byte double value append
  4206. </summary>
  4207. </member>
  4208. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii(System.String)">
  4209. <summary>
  4210. <para>Append string</para>
  4211. <para>Encoding.ASCII</para>
  4212. <para>영문, 한글 및 unicode도 1byte로 치환된다.</para>
  4213. </summary>
  4214. </member>
  4215. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii(System.String,System.Text.Encoding)">
  4216. <summary>
  4217. <para>Append string</para>
  4218. <para>Encoding에 따른 byte수가 다를 수 있다.</para>
  4219. </summary>
  4220. </member>
  4221. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii(System.Int32,System.String)">
  4222. <summary>
  4223. <para>Ascii Length 보정.</para>
  4224. <para>0x00->0x20</para>
  4225. <para>Encoding.ASCII</para>
  4226. </summary>
  4227. </member>
  4228. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii(System.Int32,System.String,System.Text.Encoding)">
  4229. <summary>
  4230. <para>Ascii Length 보정.</para>
  4231. <para>0x00->0x20</para>
  4232. </summary>
  4233. </member>
  4234. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii(System.Int32,System.String,System.Int32)">
  4235. <summary>
  4236. <para>Ascii Length 보정.</para>
  4237. <para>0x00->0x20</para>
  4238. </summary>
  4239. </member>
  4240. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii0x00(System.Int32,System.String)">
  4241. <summary>
  4242. <para>Ascii Length 보정 0x00으로 나머지를 채운다.</para>
  4243. <para>영문, 한글 및 unicode도 1byte로 치환된다.</para>
  4244. <para>Encoding.ASCII</para>
  4245. </summary>
  4246. </member>
  4247. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendAscii0x00(System.Int32,System.String,System.Text.Encoding)">
  4248. <summary>
  4249. <para>Ascii Length 보정 0x00으로 나머지를 채운다.</para>
  4250. </summary>
  4251. </member>
  4252. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeShort(System.Int32)">
  4253. <summary>
  4254. big endian
  4255. </summary>
  4256. </member>
  4257. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeUshort(System.Int32)">
  4258. <summary>
  4259. big endian
  4260. </summary>
  4261. </member>
  4262. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeShort(System.Int16)">
  4263. <summary>
  4264. big endian
  4265. </summary>
  4266. </member>
  4267. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeInt(System.Int32)">
  4268. <summary>
  4269. big endian
  4270. </summary>
  4271. </member>
  4272. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeInt3(System.Int32)">
  4273. <summary>
  4274. 3byte int 처리.
  4275. </summary>
  4276. </member>
  4277. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeUint(System.UInt32)">
  4278. <summary>
  4279. big endian
  4280. </summary>
  4281. </member>
  4282. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeUint(System.Int64)">
  4283. <summary>
  4284. big endian
  4285. </summary>
  4286. </member>
  4287. <member name="M:GSG.NET.Utils.MemoryBuffer.AppendBeLong(System.Int64)">
  4288. <summary>
  4289. big endian
  4290. </summary>
  4291. </member>
  4292. <member name="P:GSG.NET.Utils.MemoryBuffer.ToBytes">
  4293. <summary>
  4294. <para>전체를 byte array로 추출</para>
  4295. </summary>
  4296. </member>
  4297. <member name="P:GSG.NET.Utils.MemoryBuffer.ToAscii">
  4298. <summary>
  4299. <para>전체를 string으로 추출</para>
  4300. </summary>
  4301. </member>
  4302. <member name="P:GSG.NET.Utils.MemoryBuffer.ToHex">
  4303. <summary>
  4304. <para>space, hexa string</para>
  4305. </summary>
  4306. </member>
  4307. <member name="M:GSG.NET.Utils.MemoryBuffer.ToHexLine(System.Int32)">
  4308. <summary>
  4309. lineDigit byte를 기준으로 NewLine처리
  4310. </summary>
  4311. </member>
  4312. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadLeInt">
  4313. <summary>
  4314. <para>Memory buffer에서 4byte를 읽어서 little endian 을 만든다.</para>
  4315. </summary>
  4316. </member>
  4317. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadLeInt3">
  4318. <summary>
  4319. 3byte int 처리.
  4320. <para>최상위 바이트 0을 뒤에 추가하여 Int로 처리함.</para>
  4321. </summary>
  4322. </member>
  4323. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBitArray(System.Int32)">
  4324. <summary>
  4325. size 만큼 읽어서 BitArray 작성
  4326. </summary>
  4327. </member>
  4328. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadAscii(System.Int32)">
  4329. <summary>
  4330. <para>size 만큼 읽어서 string 변환, null(0x00)문자가 있으면 space로 치환한다.</para>
  4331. <para>byte[] bs = ReadBytes(size);</para>
  4332. <para>Encoding.ASCII</para>
  4333. </summary>
  4334. </member>
  4335. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadAscii(System.Int32,System.Text.Encoding)">
  4336. <summary>
  4337. <para>size 만큼 읽어서 string 변환, null(0x00)문자가 있으면 space로 치환한다.</para>
  4338. <para>byte[] bs = ReadBytes(size);</para>
  4339. <para>Encoding에 의해 string으로 변환한다.</para>
  4340. </summary>
  4341. </member>
  4342. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadAscT(System.Int32)">
  4343. <summary>
  4344. Read Ascii Trim with Encoding.Default
  4345. <para>Encoding은 Encoding.Default를 사용한다.</para>
  4346. </summary>
  4347. </member>
  4348. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeInt">
  4349. <summary>
  4350. <para>Memory buffer에서 4byte를 읽어서 big endian 을 만든다.</para>
  4351. </summary>
  4352. </member>
  4353. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeInt3">
  4354. <summary>
  4355. 3byte int 처리.
  4356. <para>최상위 바이트 0을 앞에 추가하여 Int로 처리함.</para>
  4357. </summary>
  4358. </member>
  4359. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeUint">
  4360. <summary>
  4361. <para>Memory buffer에서 4byte를 읽어서 big endian 을 만든다.</para>
  4362. </summary>
  4363. </member>
  4364. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeFloat">
  4365. <summary>
  4366. <para>Memory buffer에서 4byte를 읽어서 big endian 을 만든다.</para>
  4367. </summary>
  4368. </member>
  4369. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeDouble">
  4370. <summary>
  4371. <para>Memory buffer에서 8byte를 읽어서 big endian 을 만든다.</para>
  4372. </summary>
  4373. </member>
  4374. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeLong">
  4375. <summary>
  4376. <para>Memory buffer에서 8byte를 읽어서 big endian 을 만든다.</para>
  4377. </summary>
  4378. </member>
  4379. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeUshort">
  4380. <summary>
  4381. <para>Memory buffer에서 2byte를 big endian으로 읽는다.</para>
  4382. </summary>
  4383. </member>
  4384. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBeShort">
  4385. <summary>
  4386. <para>Memory buffer에서 2byte를 big endian으로 읽는다.</para>
  4387. </summary>
  4388. </member>
  4389. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadLeUshort">
  4390. <summary>
  4391. <para>Memory buffer에서 2byte를 little endian으로 읽는다.</para>
  4392. </summary>
  4393. </member>
  4394. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadLeShort">
  4395. <summary>
  4396. <para>Memory buffer에서 2byte를 little endian으로 읽는다.</para>
  4397. </summary>
  4398. </member>
  4399. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadLeFloat">
  4400. <summary>
  4401. <para>Memory buffer에서 4byte를 little endian</para>
  4402. </summary>
  4403. </member>
  4404. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadLeDouble">
  4405. <summary>
  4406. <para>Memory buffer에서 8byte를 little endian</para>
  4407. </summary>
  4408. </member>
  4409. <member name="M:GSG.NET.Utils.MemoryBuffer.Read1Byte">
  4410. <summary>
  4411. 1 바이트를 읽는다. int로 받는다.
  4412. <para>0~255(0~0xff)</para>
  4413. <para>int.Equals(byte)는 값이 같으면 True가 되지만</para>
  4414. <para>byte.Equals(int)는 값이 같아도 False가 된다.</para>
  4415. <para>byte == int, int == byte 는 값이 같을 경우 True가 되므로 Equals 보다 == 사용 권장.</para>
  4416. </summary>
  4417. </member>
  4418. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadByte">
  4419. <summary>
  4420. <para>1 바이트를 읽는다. byte로 받는다.</para>
  4421. <para>int.Equals(byte)는 값이 같으면 True가 되지만</para>
  4422. <para>byte.Equals(int)는 값이 같아도 False가 된다.</para>
  4423. <para>byte == int, int == byte 는 값이 같을 경우 True가 되므로 Equals 보다 == 사용 권장.</para>
  4424. </summary>
  4425. </member>
  4426. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBytes(System.Int32)">
  4427. <summary>
  4428. <para>Memorybuffer에서 byte추출</para>
  4429. </summary>
  4430. </member>
  4431. <member name="M:GSG.NET.Utils.MemoryBuffer.ReadBytesRest">
  4432. <summary>
  4433. 현재 pos의 나머지 읽기
  4434. </summary>
  4435. </member>
  4436. <member name="P:GSG.NET.Utils.MemoryBuffer.Pos">
  4437. <summary>
  4438. MemoryBuffer access position
  4439. </summary>
  4440. </member>
  4441. <member name="P:GSG.NET.Utils.MemoryBuffer.Length">
  4442. <summary>
  4443. 실제 valid(append 되었던) Size
  4444. <para>Position이 이동되어도 Length는 기존 값을 유지한다.</para>
  4445. </summary>
  4446. </member>
  4447. <member name="T:GSG.NET.Utils.NumUtils">
  4448. <summary>
  4449. </summary>
  4450. </member>
  4451. <member name="M:GSG.NET.Utils.NumUtils.Random(System.Int32,System.Int32)">
  4452. <summary>
  4453. <para>1~10 까지 수행하려면 Random(1, 10)</para>
  4454. <para>바로 이전에 구한값과 중복은 발생하지 않게 처리함.</para>
  4455. <para>ThreadStatic을 적용하여 Thread마다 각각 이전 값을 유지함.</para>
  4456. </summary>
  4457. </member>
  4458. <member name="M:GSG.NET.Utils.NumUtils.Ceiling(System.Int32,System.Int32)">
  4459. <summary>
  4460. <para>올림</para>
  4461. </summary>
  4462. </member>
  4463. <member name="M:GSG.NET.Utils.NumUtils.Floor(System.Int32,System.Int32)">
  4464. <summary>
  4465. <para>내림</para>
  4466. </summary>
  4467. </member>
  4468. <member name="M:GSG.NET.Utils.NumUtils.Round(System.Int32,System.Int32)">
  4469. <summary>
  4470. <para>반올림</para>
  4471. </summary>
  4472. </member>
  4473. <member name="M:GSG.NET.Utils.NumUtils.IsMultiple(System.Int32,System.Int32)">
  4474. <summary>
  4475. <para>배수인지 체크</para>
  4476. </summary>
  4477. </member>
  4478. <member name="M:GSG.NET.Utils.NumUtils.IsOddNumber(System.Int32)">
  4479. <summary>
  4480. 홀수인지 체크
  4481. </summary>
  4482. </member>
  4483. <member name="M:GSG.NET.Utils.NumUtils.Remainder(System.Int32,System.Int32)">
  4484. <summary>
  4485. <para>나머지 구하기</para>
  4486. </summary>
  4487. </member>
  4488. <member name="M:GSG.NET.Utils.NumUtils.RangeCheck(System.Int32,System.Int32,System.Int32)">
  4489. <summary>
  4490. <para>Range check</para>
  4491. <para>e.g. RangeCheck(i, 0, short.MaxValue)</para>
  4492. </summary>
  4493. </member>
  4494. <member name="M:GSG.NET.Utils.NumUtils.RangeCheck(System.Double,System.Double,System.Double)">
  4495. <summary/>
  4496. </member>
  4497. <member name="M:GSG.NET.Utils.NumUtils.Percent(System.Object,System.Object)">
  4498. <summary>
  4499. <para>백분율 가져오기</para>
  4500. </summary>
  4501. </member>
  4502. <member name="M:GSG.NET.Utils.NumUtils.IsNumber(System.Object)">
  4503. <summary>
  4504. <para>obj의 Type이 Integer or decimal인지 여부 검사.</para>
  4505. </summary>
  4506. </member>
  4507. <member name="M:GSG.NET.Utils.NumUtils.CanConvertToInteger(System.String)">
  4508. <summary>
  4509. <para>argument를 integer로 변경 가능한지?</para>
  4510. </summary>
  4511. </member>
  4512. <member name="M:GSG.NET.Utils.NumUtils.Average(System.Int32[])">
  4513. <summary>
  4514. <para>평균 구하기</para>
  4515. </summary>
  4516. </member>
  4517. <member name="M:GSG.NET.Utils.NumUtils.Average(System.Double[])">
  4518. <summary>
  4519. <para>평균 구하기</para>
  4520. </summary>
  4521. </member>
  4522. <member name="M:GSG.NET.Utils.NumUtils.Variance(System.Double[])">
  4523. <summary>
  4524. <para>분포도(분산)</para>
  4525. </summary>
  4526. </member>
  4527. <member name="M:GSG.NET.Utils.NumUtils.StdDev(System.Double[])">
  4528. <summary>
  4529. <para>표준편차</para>
  4530. </summary>
  4531. </member>
  4532. <member name="M:GSG.NET.Utils.NumUtils.Median(System.Double[])">
  4533. <summary>
  4534. 중간값.
  4535. </summary>
  4536. </member>
  4537. <member name="M:GSG.NET.Utils.NumUtils.Min(System.Int32[])">
  4538. <summary>
  4539. <para>최소값</para>
  4540. </summary>
  4541. </member>
  4542. <member name="M:GSG.NET.Utils.NumUtils.Min(System.Double[])">
  4543. <summary>
  4544. <para>최소값</para>
  4545. </summary>
  4546. </member>
  4547. <member name="M:GSG.NET.Utils.NumUtils.Max(System.Int32[])">
  4548. <summary>
  4549. <para>최대값</para>
  4550. </summary>
  4551. </member>
  4552. <member name="M:GSG.NET.Utils.NumUtils.Max(System.Double[])">
  4553. <summary>
  4554. <para>최대값</para>
  4555. </summary>
  4556. </member>
  4557. <member name="M:GSG.NET.Utils.NumUtils.IntV(System.String)">
  4558. <summary>
  4559. string.Empty일 경우 0 반환
  4560. <para>TryParse가 실패할 경우 0반환</para>
  4561. </summary>
  4562. </member>
  4563. <member name="M:GSG.NET.Utils.NumUtils.IntHexV(System.String)">
  4564. <summary>
  4565. string.Empty일 경우 0 반환
  4566. <para>TryParse가 실패할 경우 0반환</para>
  4567. </summary>
  4568. </member>
  4569. <member name="M:GSG.NET.Utils.NumUtils.DoubleV(System.String)">
  4570. <summary>
  4571. string.Empty일 경우 0 반환
  4572. </summary>
  4573. </member>
  4574. <member name="M:GSG.NET.Utils.NumUtils.FloatV(System.String)">
  4575. <summary/>
  4576. </member>
  4577. <member name="T:GSG.NET.Utils.ObjectCopyUtils">
  4578. <summary>
  4579. Deep Copy 지원
  4580. </summary>
  4581. </member>
  4582. <member name="M:GSG.NET.Utils.ObjectCopyUtils.DeepClone``1(``0)">
  4583. <summary>
  4584. Deep Clone 구현
  4585. </summary>
  4586. <typeparam name="T"></typeparam>
  4587. <param name="obj"></param>
  4588. <returns></returns>
  4589. </member>
  4590. <member name="M:GSG.NET.Utils.ObjectCopyUtils.SerializableDeepClone``1(``0)">
  4591. <summary>
  4592. Serializable 객체에 대한 Deep Clone
  4593. </summary>
  4594. <typeparam name="T"></typeparam>
  4595. <param name="obj"></param>
  4596. <returns></returns>
  4597. </member>
  4598. <member name="T:GSG.NET.Utils.ProcessUtils">
  4599. <summary>
  4600. AddStartUpProcess는 windows registry를 사용하며 실행 폴더는 system folder가 되므로
  4601. spring config, log4net config를 상대 경로 가능 수정(2012.07)
  4602. </summary>
  4603. </member>
  4604. <member name="M:GSG.NET.Utils.ProcessUtils.AddStartUpProcess(System.String,System.String,System.Object[])">
  4605. <summary/>
  4606. </member>
  4607. <member name="M:GSG.NET.Utils.ProcessUtils.RemoveStartUpProcess(System.String)">
  4608. <summary>
  4609. <para>Remove StartUp Process</para>
  4610. </summary>
  4611. </member>
  4612. <member name="M:GSG.NET.Utils.ProcessUtils.AddMeStartUpProcess(System.Object[])">
  4613. <summary>
  4614. <para>Add Current Process StartUp</para>
  4615. </summary>
  4616. </member>
  4617. <member name="P:GSG.NET.Utils.ProcessUtils.IsAutoStartMe">
  4618. <summary>
  4619. 현재 Process가 AutoStart에 등록되어 있는지?
  4620. </summary>
  4621. </member>
  4622. <member name="M:GSG.NET.Utils.ProcessUtils.RemoveMeStartUpProcess">
  4623. <summary>
  4624. <para>Remove Current Process StartUp</para>
  4625. </summary>
  4626. </member>
  4627. <member name="P:GSG.NET.Utils.ProcessUtils.IsOnlyOneInstance">
  4628. <summary>
  4629. <para>프로세스 이름을 이용하여 OnlyOneInstance check를 한다.</para>
  4630. </summary>
  4631. </member>
  4632. <member name="P:GSG.NET.Utils.ProcessUtils.CurrentProcessName">
  4633. <summary>
  4634. <para>Get Current Process Name</para>
  4635. </summary>
  4636. </member>
  4637. <member name="M:GSG.NET.Utils.ProcessUtils.GetProcess(System.String)">
  4638. <summary>
  4639. <para>Process Name을 이용해 Process 개체를 가져옴</para>
  4640. <para>여러개일 경우 첫번째 Process만 가져옴</para>
  4641. </summary>
  4642. </member>
  4643. <member name="M:GSG.NET.Utils.ProcessUtils.GetProcesses(System.String)">
  4644. <summary>
  4645. <para>Process Name을 이용해 Process Array를 가져옴.</para>
  4646. </summary>
  4647. </member>
  4648. <member name="M:GSG.NET.Utils.ProcessUtils.GetProcessCount(System.String)">
  4649. <summary>
  4650. <para>Get Excuted Process Count</para>
  4651. </summary>
  4652. </member>
  4653. <member name="M:GSG.NET.Utils.ProcessUtils.Kill(System.String)">
  4654. <summary>
  4655. <para>Process Name으로 Process Kill</para>
  4656. <para>xxx.exe -> processName: xxx</para>
  4657. </summary>
  4658. </member>
  4659. <member name="M:GSG.NET.Utils.ProcessUtils.KillGraceful(System.String)">
  4660. <summary>
  4661. <para>Form Close에 로직이 있는 경우에 사용함.</para>
  4662. </summary>
  4663. </member>
  4664. <member name="M:GSG.NET.Utils.ProcessUtils.Start(System.String)">
  4665. <summary>
  4666. <para>App 실행</para>
  4667. </summary>
  4668. </member>
  4669. <member name="M:GSG.NET.Utils.ProcessUtils.Start(System.String,System.String)">
  4670. <summary>
  4671. <para>App 실행, argument 입력</para>
  4672. </summary>
  4673. </member>
  4674. <member name="M:GSG.NET.Utils.ProcessUtils.Start(System.String,System.String,System.String)">
  4675. <summary>
  4676. <para>App 실행</para>
  4677. </summary>
  4678. <param name="path"></param>
  4679. <param name="wd">Working Directory</param>
  4680. <param name="args"></param>
  4681. </member>
  4682. <member name="M:GSG.NET.Utils.ProcessUtils.StartWaitForExit(System.String,System.String,System.String)">
  4683. <summary>
  4684. <para>실행한 process가 종료될때까지 block됨.</para>
  4685. </summary>
  4686. <param name="path"></param>
  4687. <param name="wd">Working directory, null or empty 입력 가능</param>
  4688. <param name="args">null or empty 가능</param>
  4689. </member>
  4690. <member name="M:GSG.NET.Utils.ProcessUtils.StartConsoleRedirect(System.String,System.String,System.String)">
  4691. <summary>
  4692. <para>Console process를 실행하고 결과를 redirect하여 string으로 받는다.</para>
  4693. </summary>
  4694. </member>
  4695. <member name="M:GSG.NET.Utils.ProcessUtils.Kill(System.Int32)">
  4696. <summary>
  4697. <para>processID가 없을 경우에도 Exception이 발생하지 않는다, return 값으로 체크</para>
  4698. </summary>
  4699. <param name="processID"></param>
  4700. <returns>Killed or Not</returns>
  4701. </member>
  4702. <member name="T:GSG.NET.Utils.StringUtils">
  4703. <summary>
  4704. GSG.NET..Utils.StringUtils
  4705. </summary>
  4706. </member>
  4707. <member name="M:GSG.NET.Utils.StringUtils.ToString(System.Collections.Generic.Dictionary{System.String,System.String})">
  4708. <summary>
  4709. dictionary를 key=value 형태로 만듦
  4710. </summary>
  4711. </member>
  4712. <member name="M:GSG.NET.Utils.StringUtils.Int2Bit(System.Int32)">
  4713. <summary>
  4714. </summary>
  4715. </member>
  4716. <member name="M:GSG.NET.Utils.StringUtils.Byte2Bit(System.Byte)">
  4717. <summary>
  4718. Convert.ToString(v, 2);
  4719. </summary>
  4720. </member>
  4721. <member name="M:GSG.NET.Utils.StringUtils.Substring(System.String,System.String,System.String)">
  4722. <summary>
  4723. </summary>
  4724. </member>
  4725. <member name="M:GSG.NET.Utils.StringUtils.HasTwoParams(System.String,System.String,System.String)">
  4726. <summary>
  4727. org에 From, To 가 모두 존재하는지 검사함.
  4728. </summary>
  4729. </member>
  4730. <member name="M:GSG.NET.Utils.StringUtils.QuietSubstring(System.String,System.String,System.String)">
  4731. <summary>
  4732. Ignore error
  4733. </summary>
  4734. </member>
  4735. <member name="M:GSG.NET.Utils.StringUtils.SubstringAfter(System.String,System.String)">
  4736. <summary>
  4737. </summary>
  4738. </member>
  4739. <member name="M:GSG.NET.Utils.StringUtils.QuietSubstringAfter(System.String,System.String)">
  4740. <summary>
  4741. Ignore error
  4742. </summary>
  4743. </member>
  4744. <member name="M:GSG.NET.Utils.StringUtils.SubstringBefore(System.String,System.String)">
  4745. <summary>
  4746. Ignore error
  4747. </summary>
  4748. </member>
  4749. <member name="M:GSG.NET.Utils.StringUtils.QuietSubstringBefore(System.String,System.String)">
  4750. <summary>
  4751. </summary>
  4752. </member>
  4753. <member name="T:GSG.NET.Utils.SwUtils">
  4754. <summary>
  4755. <para>Stopwatch: elapsed time check</para>
  4756. </summary>
  4757. </member>
  4758. <member name="P:GSG.NET.Utils.SwUtils.T">
  4759. <summary>
  4760. <para>same CurrentTimeMillis</para>
  4761. </summary>
  4762. </member>
  4763. <member name="P:GSG.NET.Utils.SwUtils.CurrentTimeMillis">
  4764. <summary>
  4765. <para>CurrentTime의 millisecond 가져옴</para>
  4766. </summary>
  4767. </member>
  4768. <member name="M:GSG.NET.Utils.SwUtils.ElapsedTime(System.Int64)">
  4769. <summary>
  4770. <para>string.Format("[{0:d3} ms]", gap);</para>
  4771. <para>Use F</para>
  4772. </summary>
  4773. <param name="pre">이전 milli-second</param>
  4774. </member>
  4775. <member name="M:GSG.NET.Utils.SwUtils.F(System.Int64)">
  4776. <summary>
  4777. <para>string.Format("[{0:d3} ms]", gap);</para>
  4778. <para>Use F</para>
  4779. </summary>
  4780. <param name="pre">이전 milli-second</param>
  4781. </member>
  4782. <member name="M:GSG.NET.Utils.SwUtils.Elapsed(System.Int64)">
  4783. <summary/>
  4784. </member>
  4785. <member name="M:GSG.NET.Utils.SwUtils.Gt(System.Int64,System.Int32)">
  4786. <summary/>
  4787. </member>
  4788. <member name="T:GSG.NET.Utils.SznUtils">
  4789. <summary/>
  4790. </member>
  4791. <member name="M:GSG.NET.Utils.SznUtils.CanSerialize(System.Object)">
  4792. <summary>
  4793. <para>Serializable 가능 여부 체크</para>
  4794. </summary>
  4795. </member>
  4796. <member name="M:GSG.NET.Utils.SznUtils.Serialize(System.Object)">
  4797. <summary/>
  4798. </member>
  4799. <member name="M:GSG.NET.Utils.SznUtils.Deserialize(System.Byte[])">
  4800. <summary/>
  4801. </member>
  4802. <member name="T:GSG.NET.Utils.MidnightNotifier">
  4803. <summary>
  4804. 날짜가 바뀜을 알려준다.
  4805. </summary>
  4806. </member>
  4807. <member name="T:GSG.NET.Utils.FixTimeNotifier">
  4808. <summary>
  4809. 정시를 알려줌
  4810. </summary>
  4811. </member>
  4812. <member name="T:GSG.NET.V2.SerialV2">
  4813. <summary>
  4814. Serial 통신 Ver2
  4815. </summary>
  4816. </member>
  4817. <member name="P:GSG.NET.V2.SerialV2.H">
  4818. <summary/>
  4819. </member>
  4820. <member name="P:GSG.NET.V2.SerialV2.Name">
  4821. <summary>
  4822. SerialV2 구분자
  4823. <para>구별을 위해서는 Name을 적절히 변경한다.</para>
  4824. </summary>
  4825. </member>
  4826. <member name="M:GSG.NET.V2.SerialV2.#ctor">
  4827. <summary>
  4828. ReadWrite Timeout def 2 sec
  4829. </summary>
  4830. </member>
  4831. <member name="M:GSG.NET.V2.SerialV2.Init">
  4832. <summary>
  4833. open serial port
  4834. </summary>
  4835. </member>
  4836. <member name="M:GSG.NET.V2.SerialV2.Send(System.Byte[])">
  4837. <summary/>
  4838. </member>
  4839. <member name="M:GSG.NET.V2.SerialV2.Send(GSG.NET.Utils.MemoryBuffer)">
  4840. <summary/>
  4841. </member>
  4842. <member name="M:GSG.NET.V2.SerialV2.Read(System.Int32)">
  4843. <summary>
  4844. <para>blocking read</para>
  4845. </summary>
  4846. </member>
  4847. <member name="M:GSG.NET.V2.SerialV2.ReadTo(System.Byte)">
  4848. <summary>
  4849. <para>NewLine, ETX까지 읽는 경우.</para>
  4850. <para>b는 포함되지 않음</para>
  4851. <para>in stream에서 b 까지 읽음</para>
  4852. </summary>
  4853. </member>
  4854. <member name="M:GSG.NET.V2.SerialV2.Ignore(System.Int32)">
  4855. <summary>
  4856. 읽어서 버림.
  4857. </summary>
  4858. </member>
  4859. <member name="M:GSG.NET.V2.SerialV2.Close">
  4860. <summary>
  4861. close SerailPort
  4862. </summary>
  4863. </member>
  4864. <member name="M:GSG.NET.V2.SerialV2.Clean">
  4865. <summary>
  4866. Clean buffer
  4867. </summary>
  4868. </member>
  4869. <member name="M:GSG.NET.V2.SerialV2.ToString">
  4870. <summary/>
  4871. </member>
  4872. <member name="T:GSG.NET.V2.SignalV2">
  4873. <summary>
  4874. Local Multicast 통신
  4875. <para>netsh int ip show joins</para>
  4876. </summary>
  4877. </member>
  4878. <member name="P:GSG.NET.V2.SignalV2.Charset">
  4879. <summary>
  4880. string 통신 encoding 설정
  4881. </summary>
  4882. </member>
  4883. <member name="M:GSG.NET.V2.SignalV2.#ctor">
  4884. <summary/>
  4885. </member>
  4886. <member name="P:GSG.NET.V2.SignalV2.Channel">
  4887. <summary>
  4888. Channel을 통한 수신
  4889. </summary>
  4890. </member>
  4891. <member name="E:GSG.NET.V2.SignalV2.OnMessage">
  4892. <summary>
  4893. arg1: cmd
  4894. <para>arg2: value</para>
  4895. </summary>
  4896. </member>
  4897. <member name="M:GSG.NET.V2.SignalV2.Init">
  4898. <summary/>
  4899. </member>
  4900. <member name="M:GSG.NET.V2.SignalV2.OpenMulticast">
  4901. <summary>
  4902. Server: IpAddr을 세팅하지 않음
  4903. <para>Client: IpAddr setting</para>
  4904. </summary>
  4905. </member>
  4906. <member name="M:GSG.NET.V2.SignalV2.Send(System.Object,System.String,System.Object[])">
  4907. <summary>
  4908. <para>cmd: 구분자</para>
  4909. <para>-</para>
  4910. <para>format 또는 value를 넣어도 호환됨.</para>
  4911. <para>format : {0,-10}{1,-20}{2} 등등</para>
  4912. <para>string.format을 쉽게 사용함</para>
  4913. </summary>
  4914. </member>
  4915. <member name="M:GSG.NET.V2.SignalV2.Send(System.Object,System.String)">
  4916. <summary>
  4917. <para>cmd: 구분자</para>
  4918. <para>cmd는 int, string, enum 허용함</para>
  4919. <para>-</para>
  4920. <para>string value only</para>
  4921. </summary>
  4922. </member>
  4923. <member name="M:GSG.NET.V2.SignalV2.Send(System.Object,System.Object)">
  4924. <summary>
  4925. <para>cmd는 int, string, enum 허용함</para>
  4926. <para>obj value는 int, enum 및 ToString을이용하는 항목과, serialize object 허용</para>
  4927. </summary>
  4928. </member>
  4929. <member name="M:GSG.NET.V2.SignalV2.ThSend">
  4930. <summary>
  4931. Length(4)+guid(1+n)+channel(1+n)+cmd(1+n)+protocol(1)+value or object(n)
  4932. </summary>
  4933. </member>
  4934. <member name="F:GSG.NET.V2.SignalV2.MAX_UDP_SIZE">
  4935. <summary>
  4936. 4 KB
  4937. </summary>
  4938. </member>
  4939. <member name="F:GSG.NET.V2.SignalV2.MAX_DATA_SIZE">
  4940. <summary>
  4941. Max 2 MB
  4942. </summary>
  4943. </member>
  4944. <member name="M:GSG.NET.V2.SignalV2.Read(System.Int32)">
  4945. <summary>
  4946. size 읽을때까지 blocking
  4947. <para>size -1, clear garbage buffer</para>
  4948. </summary>
  4949. </member>
  4950. <member name="T:GSG.NET.V2.SignalV2.InMsg">
  4951. <summary/>
  4952. </member>
  4953. <member name="P:GSG.NET.V2.SignalV2.InMsg.Guid">
  4954. <summary/>
  4955. </member>
  4956. <member name="P:GSG.NET.V2.SignalV2.InMsg.Length">
  4957. <summary/>
  4958. </member>
  4959. <member name="P:GSG.NET.V2.SignalV2.InMsg.Cmd">
  4960. <summary/>
  4961. </member>
  4962. <member name="P:GSG.NET.V2.SignalV2.InMsg.Value">
  4963. <summary>
  4964. string value
  4965. </summary>
  4966. </member>
  4967. <member name="P:GSG.NET.V2.SignalV2.InMsg.Serialize">
  4968. <summary>
  4969. 객체통신
  4970. </summary>
  4971. </member>
  4972. <member name="T:GSG.NET.V2.TcpV2">
  4973. <summary>
  4974. <para>2016.06.15 최초 개발</para>
  4975. <para>default: BigEndian</para>
  4976. </summary>
  4977. </member>
  4978. <member name="P:GSG.NET.V2.TcpV2.LittleEndian">
  4979. <summary>
  4980. default: false, 즉 BigEndian default
  4981. </summary>
  4982. </member>
  4983. <member name="P:GSG.NET.V2.TcpV2.Comm">
  4984. <summary/>
  4985. </member>
  4986. <member name="M:GSG.NET.V2.TcpV2.#ctor">
  4987. <summary/>
  4988. </member>
  4989. <member name="M:GSG.NET.V2.TcpV2.Init">
  4990. <summary>
  4991. Client의 경우 Comm.Retry 회수 만큼 연결 시도후 함수 return 됨.
  4992. </summary>
  4993. </member>
  4994. <member name="P:GSG.NET.V2.TcpV2.Sck">
  4995. <summary/>
  4996. </member>
  4997. <member name="P:GSG.NET.V2.TcpV2.KeepAlive">
  4998. <summary/>
  4999. </member>
  5000. <member name="M:GSG.NET.V2.TcpV2.DefSckOpt(System.Net.Sockets.TcpClient)">
  5001. <summary>
  5002. tcp socket option 설정
  5003. <para>NoDelay, LingerState, ReceiveTimeout</para>
  5004. </summary>
  5005. </member>
  5006. <member name="M:GSG.NET.V2.TcpV2.Close">
  5007. <summary>
  5008. <para>close socket</para>
  5009. <para>Exception이 없다, 내부적으로 모두 처리함.</para>
  5010. </summary>
  5011. </member>
  5012. <member name="M:GSG.NET.V2.TcpV2.Clean">
  5013. <summary>
  5014. In buffer clear
  5015. </summary>
  5016. </member>
  5017. <member name="M:GSG.NET.V2.TcpV2.Ignore(System.Int32)">
  5018. <summary>
  5019. 읽어서 버림.
  5020. </summary>
  5021. </member>
  5022. <member name="M:GSG.NET.V2.TcpV2.ReadInt(System.Int32)">
  5023. <summary>
  5024. Int변환
  5025. <para>LittleEndian property를 이용하여 ByteOrder세팅이 가능함.</para>
  5026. <para>size 2일 경우 Ushort 변환</para>
  5027. <para>-</para>
  5028. <para>TimeoutException catch 가능함</para>
  5029. </summary>
  5030. </member>
  5031. <member name="M:GSG.NET.V2.TcpV2.Read(System.Int32)">
  5032. <summary>
  5033. size만큼 읽어 MemoryBuffer에 담고 Pos를 0으로 이동한다.
  5034. <para>-</para>
  5035. <para>TimeoutException catch 가능함</para>
  5036. </summary>
  5037. </member>
  5038. <member name="M:GSG.NET.V2.TcpV2.ReadTo(System.Byte)">
  5039. <summary>
  5040. <para>ETX까지 읽는 경우.</para>
  5041. <para>b는 포함되지 않음</para>
  5042. <para>in stream에서 b 까지 읽음</para>
  5043. <para>-</para>
  5044. <para>TimeoutException catch 가능함</para>
  5045. </summary>
  5046. </member>
  5047. <member name="P:GSG.NET.V2.TcpV2.Connected">
  5048. <summary>
  5049. tcp connect or not
  5050. <para>Sck == null이면 false</para>
  5051. </summary>
  5052. </member>
  5053. <member name="M:GSG.NET.V2.TcpV2.Send(GSG.NET.Utils.MemoryBuffer)">
  5054. <summary>
  5055. MemoryBuffer Position 관계 없이 모든 데이터 write
  5056. </summary>
  5057. </member>
  5058. <member name="M:GSG.NET.V2.TcpV2.Send(System.Byte[])">
  5059. <summary/>
  5060. </member>
  5061. <member name="M:GSG.NET.V2.TcpV2.Send(System.Int32)">
  5062. <summary>
  5063. int 4 byte send
  5064. <para>LittleEndian property flag에 따라 자동 변환</para>
  5065. <para>최대한 MemoryBuffer를 활용한 send 방식으로 구현하며 사용 최소화</para>
  5066. </summary>
  5067. </member>
  5068. <member name="M:GSG.NET.V2.TcpV2.ChgTimeout(System.Boolean)">
  5069. <summary>
  5070. T6 기준 infinite timeout 변경 or 원복
  5071. <para>OS 시간 변경으로 연결 종료 방지</para>
  5072. </summary>
  5073. </member>
  5074. <member name="T:GSG.NET.V2.UdpV2">
  5075. <summary/>
  5076. </member>
  5077. <member name="P:GSG.NET.V2.UdpV2.IpAddr">
  5078. <summary/>
  5079. </member>
  5080. <member name="P:GSG.NET.V2.UdpV2.PortNo">
  5081. <summary/>
  5082. </member>
  5083. <member name="P:GSG.NET.V2.UdpV2.TTL">
  5084. <summary>
  5085. TTL: Microsoft def 128, Floware 8
  5086. <para>TTL:0 Local Mode</para>
  5087. </summary>
  5088. </member>
  5089. <member name="P:GSG.NET.V2.UdpV2.BufferSize">
  5090. <summary>
  5091. def : 10 mb
  5092. </summary>
  5093. </member>
  5094. <member name="P:GSG.NET.V2.UdpV2.Sck">
  5095. <summary/>
  5096. </member>
  5097. <member name="P:GSG.NET.V2.UdpV2.Timeout">
  5098. <summary>
  5099. Receive timeout
  5100. </summary>
  5101. </member>
  5102. <member name="M:GSG.NET.V2.UdpV2.#ctor">
  5103. <summary/>
  5104. </member>
  5105. <member name="M:GSG.NET.V2.UdpV2.Init(System.Boolean)">
  5106. <summary>
  5107. Server: IpAddr을 세팅하지 않음
  5108. <para>Client: IpAddr setting</para>
  5109. </summary>
  5110. </member>
  5111. <member name="M:GSG.NET.V2.UdpV2.Send(GSG.NET.Utils.MemoryBuffer)">
  5112. <summary/>
  5113. </member>
  5114. <member name="M:GSG.NET.V2.UdpV2.Reply(GSG.NET.Utils.MemoryBuffer)">
  5115. <summary>
  5116. 수신된 연결로 reply 보냄
  5117. </summary>
  5118. </member>
  5119. <member name="M:GSG.NET.V2.UdpV2.Clean">
  5120. <summary>
  5121. In buffer garbage clear
  5122. </summary>
  5123. </member>
  5124. <member name="M:GSG.NET.V2.UdpV2.Read(System.Int32)">
  5125. <summary>
  5126. size 읽을때까지 blocking
  5127. <para>size -1 경우, Clean과 동일함.</para>
  5128. <para>Timeout일 경우 SocketTimeoutException이 발생</para>
  5129. </summary>
  5130. </member>
  5131. <member name="M:GSG.NET.V2.UdpV2.Close">
  5132. <summary/>
  5133. </member>
  5134. <member name="E:GSG.NET.V3.FourthCenter.OnMessage">
  5135. <summary/>
  5136. </member>
  5137. <member name="P:GSG.NET.V3.FourthCenter.Charset">
  5138. <summary>
  5139. string 통신 encoding 설정
  5140. </summary>
  5141. </member>
  5142. <member name="M:GSG.NET.V3.FourthCenter.#ctor">
  5143. <summary/>
  5144. </member>
  5145. <member name="M:GSG.NET.V3.FourthCenter.Init(System.Int32)">
  5146. <summary/>
  5147. </member>
  5148. <member name="M:GSG.NET.V3.FourthCenter.Reply(System.Net.IPEndPoint,System.Object[])">
  5149. <summary/>
  5150. </member>
  5151. <member name="T:GSG.NET.V3.FourthCenter.Item">
  5152. <summary/>
  5153. </member>
  5154. <member name="P:GSG.NET.V3.FourthCenter.Item.Origin">
  5155. <summary>
  5156. Origin value
  5157. </summary>
  5158. </member>
  5159. <member name="P:GSG.NET.V3.FourthCenter.Item.StrV">
  5160. <summary>
  5161. string or enum value get
  5162. </summary>
  5163. </member>
  5164. <member name="P:GSG.NET.V3.FourthCenter.Item.IntV">
  5165. <summary/>
  5166. </member>
  5167. <member name="P:GSG.NET.V3.FourthCenter.Item.BoolV">
  5168. <summary/>
  5169. </member>
  5170. <member name="M:GSG.NET.V3.FourthCenter.Item.ToString">
  5171. <summary/>
  5172. </member>
  5173. <member name="T:GSG.NET.V3.SignalV3">
  5174. <summary>
  5175. Local Multicast 통신
  5176. <para>PortNo 이용하여 그룹간 통신을 제한이 가능하다, 171101</para>
  5177. <para>-</para>
  5178. <para>상태: netsh int ip show joins</para>
  5179. </summary>
  5180. </member>
  5181. <member name="P:GSG.NET.V3.SignalV3.Charset">
  5182. <summary>
  5183. string 통신 encoding 설정
  5184. </summary>
  5185. </member>
  5186. <member name="P:GSG.NET.V3.SignalV3.PortNo">
  5187. <summary>
  5188. Def: 27545
  5189. </summary>
  5190. </member>
  5191. <member name="M:GSG.NET.V3.SignalV3.#ctor">
  5192. <summary/>
  5193. </member>
  5194. <member name="T:GSG.NET.V3.SignalV3.DlgMsg">
  5195. <summary/>
  5196. </member>
  5197. <member name="E:GSG.NET.V3.SignalV3.OnMessage">
  5198. <summary>
  5199. arg1: length
  5200. <para>arg2: values</para>
  5201. </summary>
  5202. </member>
  5203. <member name="M:GSG.NET.V3.SignalV3.Init">
  5204. <summary/>
  5205. </member>
  5206. <member name="M:GSG.NET.V3.SignalV3.OpenMulticast">
  5207. <summary>
  5208. Server: IpAddr을 세팅하지 않음
  5209. <para>Client: IpAddr setting</para>
  5210. </summary>
  5211. </member>
  5212. <member name="M:GSG.NET.V3.SignalV3.Send(System.Object[])">
  5213. <summary>
  5214. <para>여러타입을 하나의 메시지로 보낼수 있음.</para>
  5215. <para>-</para>
  5216. <para>지원타입</para>
  5217. <para>string, int, bool, enum, byte[], serializable object</para>
  5218. </summary>
  5219. </member>
  5220. <member name="M:GSG.NET.V3.SignalV3.SendAfter(System.Single,System.Object[])">
  5221. <summary>
  5222. 지연후 send
  5223. <para>0th: 초단위 timeout</para>
  5224. <para>나머지 항목은 Send와 동일</para>
  5225. <para>second 0보다 작거나 같을 경우 Send와 동일함</para>
  5226. </summary>
  5227. </member>
  5228. <member name="M:GSG.NET.V3.SignalV3.Request(System.Single,System.Object[])">
  5229. <summary>
  5230. timeout이 발생하면 List count 0이 됨
  5231. <para>0th: 초단위 timeout</para>
  5232. </summary>
  5233. </member>
  5234. <member name="M:GSG.NET.V3.SignalV3.Reply(System.Collections.Generic.List{GSG.NET.V3.SignalV3.Item},System.Object[])">
  5235. <summary/>
  5236. </member>
  5237. <member name="F:GSG.NET.V3.SignalV3.MAX_UDP_SIZE">
  5238. <summary>
  5239. 4 KB
  5240. </summary>
  5241. </member>
  5242. <member name="F:GSG.NET.V3.SignalV3.MAX_DATA_SIZE">
  5243. <summary>
  5244. Max 2 MB
  5245. </summary>
  5246. </member>
  5247. <member name="T:GSG.NET.V3.SignalV3.Item">
  5248. <summary/>
  5249. </member>
  5250. <member name="P:GSG.NET.V3.SignalV3.Item.Origin">
  5251. <summary>
  5252. Origin value
  5253. </summary>
  5254. </member>
  5255. <member name="P:GSG.NET.V3.SignalV3.Item.StrV">
  5256. <summary>
  5257. string or enum value get
  5258. </summary>
  5259. </member>
  5260. <member name="P:GSG.NET.V3.SignalV3.Item.IntV">
  5261. <summary>
  5262. IntType or EnumType's value
  5263. </summary>
  5264. </member>
  5265. <member name="P:GSG.NET.V3.SignalV3.Item.FloatV">
  5266. <summary/>
  5267. </member>
  5268. <member name="P:GSG.NET.V3.SignalV3.Item.BoolV">
  5269. <summary/>
  5270. </member>
  5271. <member name="P:GSG.NET.V3.SignalV3.Item.IsEnum">
  5272. <summary>
  5273. EmumType or not
  5274. </summary>
  5275. </member>
  5276. <member name="M:GSG.NET.V3.SignalV3.Item.ToString">
  5277. <summary/>
  5278. </member>
  5279. <member name="M:GSG.NET.V3.SignalV3.Read(System.Int32)">
  5280. <summary>
  5281. size 읽을때까지 blocking
  5282. <para>size -1, clear garbage buffer</para>
  5283. </summary>
  5284. </member>
  5285. </members>
  5286. </doc>