1
0

using.qbk 41 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246
  1. [article Who's Using Boost?
  2. [quickbook 1.4]
  3. [copyright 2005 Various Authors]
  4. [license
  5. Distributed under the Boost Software License, Version 1.0.
  6. (See accompanying file LICENSE_1_0.txt or copy at
  7. <ulink url="http://www.boost.org/LICENSE_1_0.txt">
  8. http://www.boost.org/LICENSE_1_0.txt
  9. </ulink>)
  10. ]
  11. [last-revision $Date$]
  12. ]
  13. [/ begin by defining some links to Boost libraries]
  14. [def __regex [@../../libs/regex/index.html Boost.Regex]]
  15. [def __functional [@../../libs/functional/index.html Boost.Functional]]
  16. [def __format [@../../libs/format/index.html Boost.Format]]
  17. [def __function [@../../libs/function/index.html Boost.Function]]
  18. [def __bind [@../../libs/bind/index.html Boost.Bind]]
  19. [def __smart [@../../libs/smart_ptr/index.html Boost.SmartPointers]]
  20. [def __date_time [@../../libs/date_time/index.html Boost.DateTime]]
  21. [def __iterator [@../../libs/iterator/index.html Boost.Iterator]]
  22. [def __thread [@../../libs/thread/index.html Boost.Thread]]
  23. [def __preprocessor [@../../libs/preprocessor/index.html Boost.Preprocessor]]
  24. [def __any [@../../libs/any/index.html Boost.Any]]
  25. [def __tokenizer [@../../libs/tokenizer/index.html Boost.Tokenizer]]
  26. [def __signals [@../../libs/signals/index.html Boost.Signals]]
  27. [def __property_map [@../../libs/property_map/index.html Boost.PropertyMap]]
  28. [def __array [@../../libs/array/index.html Array]]
  29. [def __operators [@../../libs/utility/operators.htm Boost.Operators]]
  30. [def __tuple [@../../libs/tuple/index.html Boost.Tuple]]
  31. [def __random [@../../libs/random/index.html Boost.Random]]
  32. [def __variant [@../../libs/variant/index.html Boost.Variant]]
  33. [def __string_algo [@../../libs/algorithm/string/index.html Boost.StringAlgorithms]]
  34. [def __mpl [@../../libs/mpl/index.html Boost.MPL]]
  35. [def __type_traits [@../../libs/type_traits/index.html Boost.TypeTraits]]
  36. [def __dyn_bitset [@../../libs/dynamic_bitset/index.html Boost.DynamicBitset]]
  37. [def __enable_if [@../../libs/utility/enable_if.html Boost.EnableIf]]
  38. [def __timer [@../../libs/timer/index.html Boost.Timer]]
  39. [def __phoenix [@../../libs/spirit/phoenix/index.html Boost.Phoenix]]
  40. [def __spirit [@../../libs/spirit/index.html Boost.Spirit]]
  41. [def __pointer_cont [@../../libs/ptr_container/index.html Boost.PointerContainer]]
  42. [def __serialization [@../../libs/serialization/index.html Boost.Serialization]]
  43. [def __lambda [@../../libs/lambda/index.html Boost.Lambda]]
  44. [def __lexical_cast [@../../libs/conversion/lexical_cast.htm Boost.LexicalCast]]
  45. [def __tribool [@../../doc/html/tribool.html Boost.Tribool]]
  46. [def __numeric_cast [@../../libs/conversion/cast.htm#numeric_cast Boost.NumericCast]]
  47. [def __ref [@../../libs/bind/ref.html Boost.Ref]]
  48. [def __mem_fun [@../../libs/bind/mem_fn.html Boost.MemFn]]
  49. [def __static_assert [@../../libs/static_assert/index.html Boost.StaticAssert]]
  50. [def __shared_ptr [@../../libs/smart_ptr/index.html Boost.SharedPointer]]
  51. [def __assign [@../../libs/assign/index.html Boost.Assign]]
  52. [def __crc [@../../libs/crc/index.html Boost.CRC]]
  53. [def __file_system [@../../libs/filesystem/index.html Boost.FileSystem]]
  54. [def __optional [@../../libs/optional/index.html Boost.Optional]]
  55. [def __utility [@../../libs/utility/index.html Boost.Utility]]
  56. [def __integer [@../../libs/integer/index.html Boost.Integer]]
  57. [def __multi_index [@../../libs/multi_index/index.html Boost.MultiIndex]]
  58. [def __program_options [@../../libs/program_options/index.html Boost.ProgramOptions]]
  59. [def __range [@../../libs/range/index.html Boost.Range]]
  60. [def __concept_check [@../../libs/concept_check/index.html Boost.ConceptCheck]]
  61. [def __graph [@../../libs/graph/index.html Boost.Graph]]
  62. [def __ublas [@../../libs/numeric/ublas/index.html Boost.Ublas]]
  63. [def __python [@../../libs/python/doc/index.html Boost.Python]]
  64. [def __conversion [@../../libs/conversion/index.html Boost.Conversion]]
  65. [def __test [@../../libs/test/index.html Boost.Test]]
  66. [def __rational [@../../libs/rational/index.html Boost.Rational]]
  67. [def __asio [@../../libs/asio/index.html Boost.Asio]]
  68. [def __bjam [@../../tools/build/v2/index.html Boost.Build]]
  69. [def __gil [@../../libs/gil/doc/index.html Boost.GIL]]
  70. [section:intro Introduction]
  71. Open source isn't just for nerds and researchers. Real world programming challenges,
  72. irrespective of whether they are open or closed source, can benefit enormously from
  73. the thought and experience that has gone into the Boost software libraries. Put simply,
  74. for any given problem for which Boost provides a solution, Boost will strive to provide
  75. the best solution possible. It's up to you to decide whether we've achieved that, but
  76. as these pages will testify, many other developers have found our solutions to be the
  77. best for them.
  78. ['Disclaimer:] Boost's developers try to ensure that the
  79. information on these pages is correct, but from time to time inadvertent
  80. mistakes are bound to occur:
  81. if you would like an entry in these pages to be removed or corrected please contact
  82. the [@mailto:boost-owner@lists.boost.org Boost Moderators].
  83. [endsect]
  84. [section:shrink Shrink Wrapped Boost]
  85. Boost has found it's way into many products that are available "off the shelf",
  86. including consumer applications from Adobe, through to business
  87. middleware from SAP.
  88. [blurb [*Adobe Photoshop CS2]
  89. [@http://www.adobe.com/products/photoshop/main.html Adobe Photoshop CS2]
  90. uses the
  91. [@http://opensource.adobe.com/ Adobe Software Libraries], which in
  92. turn depend upon large parts of Boost. The [@http://opensource.adobe.com/
  93. Adobe Software Libraries] are being rolled
  94. out across the Adobe product line to provide cross platform user interface logic.
  95. ]
  96. [blurb [*Adobe Indesign]
  97. [@http://www.adobe.com/products/indesign/main.html Adobe Indesign] offers
  98. best of breed page design:
  99. Indesign and it's asociated SDK depend upon Boost
  100. __regex, __functional and others.
  101. ]
  102. [blurb [*SAP NetWeaver]
  103. [@http://www.sap.com/solutions/netweaver/index.epx SAP NetWeaver]
  104. is the technical foundation of mySAP Business Suite solutions,
  105. SAP xApps composite applications, partner solutions, and customer
  106. custom-built applications. __regex
  107. provides the regular expression
  108. implementation for SAP's
  109. [@https://www.sdn.sap.com/sdn/developerareas/abap.sdn?node=linkDnode6-3 ABAP language].]
  110. [blurb [*Real Networks, Rhapsody]
  111. The [@http://www.real.com/ Rhapsody Music Service] allows its subscribers to legally
  112. download/transfer/burn over a million songs. The Rhapsody client
  113. software was built with many Boost libraries:
  114. __format: Boost.Format is top notch. Using it is a bliss.
  115. __functional,
  116. __function,
  117. and __bind: These three libraries,
  118. along with __smart are the most used in our application. I could not imagine
  119. not having them handy.
  120. __smart: Hands down, the most useful, and used library of the lot!
  121. __date_time: Simple to use, effective, does the job. I love the
  122. flexible input string parsing facilities, and the
  123. human readable ISO output.
  124. __iterator: Wow. Moving legacy iterating interfaces, or
  125. interfaces that should of been properly designed
  126. as iterators to STL compliant iterators was easy
  127. and painless. The gains in functionality to our
  128. code made by this library are invaluable.
  129. __regex: When you need it, it works magic.
  130. __thread: Used to implement the monitor pattern in key areas.
  131. __preprocessor: Used to implement repetitive unit-test
  132. code generation. The codebase benefited
  133. greatly from the clarity __preprocessor
  134. brought.
  135. ]
  136. [blurb [*McAfee, Managed VirusScan 3]
  137. [@http://www.mcafeesecurity.com/us/products/mcafee/smb/managed_services/managed_vs_smb.htm McAfee Managed VirusScan],
  138. is an always on, automatic virus protection for desktops
  139. and servers.
  140. More details of the Boost libraries used can be found
  141. [@http://betavscan.mcafeeasap.com/beta/docs/readme/Readme.html here].]
  142. [blurb [*DataSolid GmbH Germany, CADdy++ Mechanical Design (c)]
  143. [@http://www.DataSolid.com CADdy++ Mechanical Design professional (c)]
  144. is a fully parametric 3D CAD
  145. application with unbroken link between 3D
  146. models and 2D drawings. CADdy++ uses the Boost libraries:
  147. __any,
  148. __tokenizer,
  149. __signals,
  150. __property_map,
  151. __array,
  152. __bind,
  153. __operators,
  154. __tuple,
  155. __random.
  156. ['"Many thanks to all the boost developers for their great work and effort
  157. spending into boost."]]
  158. [blurb [*Dimension 5, Miner3D]
  159. Data visualization technology enabling advanced data analysis,
  160. visualization, sonification and speech applications for business and science.
  161. The [@http://www.miner3D.com Miner3D] application provides means for interactive visual analysis of
  162. arbitrary tabular data from various data sources. It has a powerful OpenGL-based
  163. visualization engine and an intuitive GUI. This combination helps a human eye
  164. guide the application of statistical tools and spot the patterns that
  165. might otherwise remain hidden.
  166. ['"We are using the following boost libraries:
  167. __date_time,
  168. __variant,
  169. __regex,
  170. __format,
  171. __string_algo,
  172. __smart,
  173. __mpl,
  174. __type_traits,
  175. __operators,
  176. __dyn_bitset,
  177. __enable_if,
  178. __timer."]
  179. ]
  180. [blurb [*Synergy, mailIntercept]
  181. [@http://www.mintercept.com mailIntercept] from [@http://www.synergy.com.br Synergy]
  182. is a mail interceptor service for Exchange Server 2000\/2003.
  183. mailIntercept intercepts and interprets the e-mails from a
  184. LAN using Exchange Server and converts the microsoft proprietary
  185. format to MIME and passes them to an SMTP filter and returns the
  186. emails to the Exchange Server as modified by the SMTP filter,
  187. converted back to the microsoft proprietary format and with its
  188. features preserved.
  189. mailIntercept was built using the following Boost libraries:
  190. __mpl,
  191. __string_algo,
  192. __bind,
  193. __phoenix,
  194. __spirit,
  195. __pointer_cont,
  196. __serialization,
  197. __regex,
  198. __iterator,
  199. __lambda,
  200. __lexical_cast,
  201. __operators,
  202. __smart,
  203. __tribool and
  204. __type_traits
  205. ]
  206. [blurb [*Integrated Research P/L, PROGNOSIS IP Telephony Manager and IP Telephony Express]
  207. [@http://www.ir.com PROGNOSIS] is a suite of IP telephony management software products,
  208. specifically designed to address the key challenges of IP telephony
  209. life cycle management, including network-readiness, assessment,
  210. pre-deployment assurance testing, and ongoing Day-2 management of
  211. Cisco CallManager, Cisco Unity, and Cisco AVVID infrastructure.
  212. ['"The Boost libraries used were:
  213. __any,
  214. __bind,
  215. __function,
  216. __lexical_cast,
  217. __mpl,
  218. __numeric_cast,
  219. __ref,
  220. __regex,
  221. __smart,
  222. __thread,
  223. __type_traits."]
  224. ]
  225. [blurb [*Kinook Software, Visual Build Professional]
  226. [@http://www.visualbuild.com/ Visual Build Professional]
  227. is a tool that enables developers,
  228. software process engineers, and build specialists to create an
  229. automated, repeatable process for building their software. Visual Build
  230. provides built-in support for Microsoft Visual Studio .NET and 2005,
  231. Visual Basic, Visual C++, Visual J++, SourceSafe, eMbedded Tools,
  232. Borland Delphi, JBuilder, C++Builder, and more.
  233. The following Boost Libraries were used:
  234. __any,
  235. __mem_fun,
  236. __regex,
  237. __smart,
  238. __static_assert
  239. ]
  240. [blurb [*Kinook Software, Ultra Recall]
  241. [@http://www.ultrarecall.com/ Ultra Recall]
  242. is a personal information management (PIM) /
  243. knowledge management (KM) application for Microsoft Windows. It helps
  244. you capture, organize, and recall all of your electronic information
  245. across all the applications that you use.
  246. Used the following Boost libraries:
  247. __format,
  248. __shared_ptr,
  249. __static_assert
  250. ]
  251. [blurb [*Applied Dynamics International, ADvantageDE]
  252. [@http://www.adi.com Applied Dynamics International (ADI)]
  253. provides state-of-the art software and
  254. hardware tools to the automotive, aerospace, and defense industries to
  255. design and test embedded control systems. ADI's tools provide advanced capabilities in real-time hardware-in-the-loop
  256. (HIL) simulation, rapid prototyping, and embedded controller software
  257. development. We have been a leading supplier of HIL simulation solutions
  258. since 1957.
  259. ADvantageDE is the development environment. It allows simulation models to
  260. be easily connected to one another or to hardware components for real-time
  261. simulation. ADvantageDE projects can be created for execution on your PC,
  262. Unix workstation or on our real-time platforms.
  263. ADvantageVI is the point of control and the graphical user interface for
  264. all of the run-time activities. The run-time architecture includes extensive
  265. features for interacting with, visualizing, and automating simulation and
  266. test activities.
  267. DasCom provides access to real-time simulation data from most Windows
  268. applications, such as Micrsoft Excel, National Instruments Labview, etc.
  269. The following Boost Libraries are used:
  270. __array,
  271. __assign,
  272. __bind,
  273. __crc,
  274. __dyn_bitset,
  275. __enable_if,
  276. __file_system,
  277. __function,
  278. __functional,
  279. __iterator,
  280. __lambda,
  281. __optional,
  282. __preprocessor,
  283. __ref,
  284. __regex,
  285. __serialization,
  286. __signals,
  287. __smart,
  288. __static_assert,
  289. __spirit,
  290. __string_algo,
  291. __tokenizer,
  292. __tuple,
  293. __utility and
  294. __variant
  295. ]
  296. [blurb [*PeerGuardian]
  297. [@http://methlabs.org/projects/peerguardian-2-windows/ PeerGuardian 2]
  298. is Methlabs premier IP blocker for Windows.
  299. With features like support for multiple lists, a list editor,
  300. automatic updates, and blocking all of IPv4 (TCP, UDP, ICMP, etc),
  301. PeerGuardian 2 is the safest and easiest way to protect your privacy on P2P.
  302. Boost Libraries used include
  303. __crc,
  304. __bind,
  305. __integer,
  306. __function,
  307. __functional,
  308. __smart,
  309. __lexical_cast,
  310. __string_algo,
  311. __random,
  312. __format,
  313. __utility.]
  314. [blurb [*DECOMSYS::DESIGNER PRO]
  315. [@http://www.decomsys.com/ DECOMSYS::DESIGNER PRO] enables the user to design
  316. a highly complex [@http://www.flexray.com/ FlexRay] communication
  317. system, which is going to be the fundament for tomorrow's
  318. automotive electronics.
  319. ['"Boost Libraries used:
  320. __bind,
  321. __dyn_bitset,
  322. __format,
  323. __function,
  324. __iterator,
  325. __mpl,
  326. __multi_index,
  327. __utility,
  328. __operators,
  329. __preprocessor (nice for generating data for unit tests),
  330. __program_options (for the unit test programs),
  331. __ref,
  332. __regex,
  333. __serialization,
  334. __signals,
  335. __smart,
  336. __spirit,
  337. __timer and
  338. __variant]
  339. ['"We are also planning to use Andreas Huber's FSM library and Iostreams
  340. (together with Serialize) once
  341. they are officially released."]
  342. ]
  343. [blurb [*Wise Riddles Software, Audiomatic]
  344. [@http://www.WiseRiddles.com/Audiomatic Audiomatic]
  345. is a tool used to make system-wide macros and then launch those
  346. macros with a voice command or keyboard shortcut at any time... from any
  347. Windows application. Audiomatic enables you to launch programs, files, or
  348. websites; simulate keystrokes; play sounds; speak text; or even run scripts.
  349. You can do it all with a voice command or keyboard shortcut!
  350. ['"Boost libraries Used:
  351. __bind,
  352. __function,
  353. __smart,
  354. __date_time,
  355. __string_algo,
  356. __utility,
  357. __regex,
  358. __thread,
  359. __mpl and
  360. __type_traits."]
  361. ]
  362. [blurb [*SMProcess FxEngine]
  363. The [@http://www.smprocess.com/Bin/FxEngineSetup.exe FxEngine]
  364. from [@http://www.smprocess.com SMProcess] is a Free Framework for data flow processing and the
  365. design of dynamic systems using plugins. The Framework provides a full
  366. control to the plugin architecture for applications that require
  367. custom solutions.
  368. The Framework is essentially based on three boost libraries:
  369. __thread: Used to implement each "Pin" work. __thread includes
  370. everything what we were looking for a portable framework like
  371. mutex and condition components.
  372. __functional and __bind: Provide a great flexibility compared to the STL.
  373. __timer: A very straightforward and effective timer.
  374. ]
  375. [blurb [*Megahard Software Technologies Inc., Rule in Hell]
  376. [@http://www.ruleinhell.com Rule in Hell] is a
  377. Massively Multiplayer Online Role Playing Game (still in beta).
  378. The Boost libraries used were:
  379. __bind,
  380. __function,
  381. __any,
  382. __tuple,
  383. __ref,
  384. __shared_ptr,
  385. __type_traits and
  386. __utility.
  387. ['"By far the combination of __bind, __function, __shared_ptr and __ref is what we use
  388. most heavily".]
  389. ]
  390. [blurb [*Dr. Detlef Meyer-Eltz, TextTransformer]
  391. The [@http://www.texttransformer.com TextTransformer]
  392. is a Windows IDE for the generation of top down
  393. parsers with included c++ interpreter code for semantic actions. Both
  394. can be executed or debugged immediately on single source files or on
  395. groups of files. Generated parsers can be exported as c++ code
  396. including as well the interpretable code as any arbitrary other code.
  397. Tokens are defined as POSIX regular expressions and rules are defined
  398. in a similar syntax quasi as regular expressions of regular
  399. expressions. The construction of parse trees and their traversal is
  400. supported.
  401. ['"The TextTransformer is essentially based on the __regex,
  402. by which the tokens for a parser can be defined. The __lexical_cast and
  403. the Format library are used for the integrated c++ interpreter. For
  404. the future also an interpreter version of the __string_algo is
  405. planned. The __program_options library will be used too to improve the
  406. command line version of the texttransformer."]
  407. ]
  408. [blurb [*Redshift Software, The Thot Tool]
  409. [@http://thot-tool.com/ The Thot Tool]
  410. is an asset management tool for a group of game developers.
  411. Thot combines assets, both binary and text, with workflow automation
  412. into a unified whole, and was built using Boost
  413. __thread,
  414. __smart,
  415. __regex,
  416. __mpl,
  417. and __type_traits.
  418. ]
  419. [blurb [*Paragent, Paragent Manage 2.1]
  420. [@http://www.paragent.com/ Paragent Manage]
  421. is a Desktop Management Application that uses a
  422. lightweight agent written in C++. Unlike traditional desktop management
  423. solutions, Paragent Manage avoids the complexity and cost of servers by
  424. using peer-to-peer communication between agents and the administrative
  425. console. This allows real-time inventory searching, alerting and
  426. software auditing in an easy-to-deploy and maintain package.
  427. ['"We have used Boost extensively throughout our agent, including:
  428. __thread,
  429. __shared_ptr,
  430. __bind,
  431. __spirit,
  432. __date_time,
  433. __string_algo,
  434. __multi_index,
  435. __file_system.]
  436. ['"Apart from some read_write_mutex issues we had, Boost has been a
  437. seamless part of our development, and has allowed us to develop and
  438. deploy a very complex, highly threaded networking agent with a built-in
  439. lisp-like xml-based scripting language all done in C++. Our entire
  440. development team would like to thank everyone for their hard work on
  441. behalf of C++ coders everywhere."]
  442. ]
  443. [blurb [*LW-WORKS Software, Clipboard Recorder]
  444. [@http://www.lw-works.com/clipboard-recorder Clipboard Recorder]
  445. is an application that helps users to manage their
  446. clipboard history and provides easy ways for users to access their
  447. saved clipboard data.
  448. Libraries used:
  449. __smart, __serialization, __asio, __string_algo, __bind, __thread,
  450. __conversion, Iostreams.
  451. ]
  452. [endsect]
  453. [section:open Open Source Boost]
  454. Boost is used in a variety of Open Source Projects, both applications and libraries.
  455. Indeed many Open Source libraries developed around Boost have in the past been judged
  456. of high enough quality to be absorbed
  457. into the main Boost source tree, a process that will no doubt continue into the future.
  458. Others are in highly specialized niche markets, ranging from probability theory to
  459. astronomy, via mass spectroscopy: whatever your field of interest you'll find
  460. something of value in Boost.
  461. [blurb [*Adobe Software Libraries]
  462. The [@http://opensource.adobe.com/ Adobe Software Libraries] provide
  463. components for modeling the human interface appearance and behavior
  464. in a software application. The Adobe Software Libraries depend on many
  465. parts of Boost including __any,
  466. __bind, __function,
  467. __mpl, __operators,
  468. __range, __static_assert,
  469. __thread, and __type_traits.
  470. Currently Boost and the Adobe Software Libraries are in use in around 30 Adobe products.
  471. ]
  472. [blurb [*LyX Document Editor]
  473. [@http://www.lyx.org/ The LyX Document Editor]
  474. is an advanced open source document processor that encourages an
  475. approach to writing based on the structure of your documents,
  476. not their appearance. LyX produces high quality, professional output,
  477. using LaTeX, an industrial strength typesetting engine.
  478. LyX uses many parts of Boost, including __array,
  479. __bind, __regex,
  480. __type_traits,
  481. __function,
  482. and __signals.]
  483. [blurb [*CodeSynthesis XML Schema to C++ Data Binding Compiler (XSD) by Code Synthesis Tools CC]
  484. [@http://codesynthesis.com/products/xsd/ CodeSynthesis XML
  485. Schema to C++ Data Binding Compiler (XSD)] is an
  486. open-source, cross-platform XML Data Binding implementation for C++.
  487. Provided with an XML instance specification (XML Schema), it generates
  488. C++ classes that represent the given vocabulary as well as parsing and
  489. serialization code. You can then access the data stored in XML using
  490. types and functions that semantically correspond to your application
  491. domain rather than dealing with elements, attributes, and text in a
  492. direct representation of XML such as DOM or SAX.
  493. XSD uses __regex and
  494. __file_system libraries from Boost.
  495. __regex is used
  496. to perform transformations on file, type and member names.
  497. __file_system is used to
  498. capture and manipulate XML Schema include and import paths.
  499. Additionally, we are planning to provide an optional mapping of XML
  500. Schema date and time types to C++ types from the Boost
  501. __date_time library.
  502. ]
  503. [blurb [*CodeShop]
  504. I am happy to announce Amsterdam based [@http://www.code-shop.com CodeShop]
  505. has been using Boost
  506. since 2005 on all of it's projects (and CodeShop memebers have been
  507. using Boost since 2001).
  508. We used it on the following:
  509. ['OpenZoep]
  510. An open source voip stack (xmpp-sip/rtp/(port)audio/codecs), capable of
  511. pc2pc calls and pc2pstn calls - it's a message based sdk, so you could
  512. write your own Gtalk or Skype ...
  513. Boost is used everywhere: from the xmpp implementation (__function,
  514. __asio) to the codecs-wrapper (__smart) - and more.
  515. Boost made the code a lot easier, more fun, safer and faster to develop.
  516. Bjam was used as build system.
  517. See [@http://www.code-shop.com/2007/1/14/openzoep description]
  518. and [@http://www.code-shop.com/openzoep trac&svn].
  519. ['Abonja \/ Whitelabelvideo]
  520. Online videosharing platform: you can upload and watch flashvideo
  521. online, but at the same time run your pc client and download all your
  522. preferences automatically for viewing later at home
  523. Boost and C++ are used for the serverside tooling. Bjam is used as
  524. build system.
  525. [@http://www.abonja.nl www.abonja.nl] and
  526. [@www.whitelabelvideo.nl www.whitelabelvideo.nl] (Dutch only: a javascript sdk for viewing and
  527. uploading - Boost is used serverside also).
  528. Code from above and other projects made available as plain download or
  529. as library.
  530. Pieces address 'simple' problems like a windows registry wrapper to more
  531. system like parts as for instance a drm implementation. Boost is used
  532. all over (__filesystem, __thread, __asio, __spirit etc);
  533. __bjam is used as build system.
  534. ]
  535. [blurb [*CGAL]
  536. [@http://www.cgal.org/ CGAL] is the Computational Geometry Algorithms Library,
  537. an open source C++ library providing generic components
  538. such as triangulations, convex hulls algorithms, boolean
  539. operations of polygons and many other things.
  540. ['"We currently use the following Boost libraries :
  541. __operators,
  542. __iterator,
  543. __tuple,
  544. __concept_check,
  545. __mpl,
  546. __bind,
  547. __optional and
  548. __smart."]
  549. ]
  550. [blurb [*ALPS]
  551. [@http://alps.comp-phys.org/ ALPS] is an open source project to develop codes
  552. for the accurate simulation of quantum lattice models, such as quantum magnets,
  553. electronic systems and Bose-Einstein condensates. The main Boost libraries
  554. used are:
  555. __graph,
  556. __random,
  557. __multi_index,
  558. __program_options,
  559. __lexical_cast,
  560. __serialization,
  561. __regex,
  562. __tuple,
  563. __file_system,
  564. __smart,
  565. __bind,
  566. __functional and
  567. __type_traits
  568. ]
  569. [blurb [*SmartWin++]
  570. [@http://smartwin.sourceforge.net/ SmartWin++]
  571. is a 100% free GUI library for developing Windows applications,
  572. it's free both as in "free beer" and as in "free speech", you can freely use
  573. SmartWin++ for commercial applications and for Open Source applications!
  574. ]
  575. [blurb [*Open VRML]
  576. [@http://openvrml.org/ Open VRML] is a free cross-platform runtime
  577. for VRML.
  578. The basic OpenVRML distribution includes libraries you can use to add
  579. VRML support to an application, and Lookat, a simple stand-alone VRML browser.
  580. ]
  581. [blurb [*Bayes++]
  582. [@http://bayesclasses.sourceforge.net/Bayes++.html Bayes++] is an open source
  583. library that represents and implements a wide variety of numerical algorithms
  584. for Bayesian Filtering of discrete systems from the
  585. [@http://www.acfr.usyd.edu.au/ Australian Centre for Field Robotics].
  586. Bayes++ makes particularly heavy use of __ublas
  587. for matrix and numeric computations.
  588. ]
  589. [blurb [*Kohonen Neural Network Library (KNNL)]
  590. [@http://knnl.sourceforge.net/ Kohonen neural network library]
  591. is a set of classes and functions for design,
  592. train and use Kohonen networks (self organizing maps).
  593. KNNL Uses __bind, __function, __type_traits
  594. __program_options.
  595. ]
  596. [blurb [*The C++/Tk Library]
  597. [@http://cpptk.sourceforge.net The C++/Tk Library] is an open source
  598. C++ interface to the Tk GUI Library.
  599. ]
  600. [blurb [*GluCat]
  601. [@http://glucat.sourceforge.net/ GluCat] is a library of template classes
  602. which model the universal Clifford algebras over the real or complex fields,
  603. with arbitrary dimension and arbitrary signature.
  604. ]
  605. [blurb [*OpenMS]
  606. [@http://open-ms.sourceforge.net/main.html OpenMS] is an open source C++ library
  607. for LC/MS data management, reduction, evaluation, visualization, storage and
  608. sophisticated statistical analyses. It can be used to develop mass
  609. spectrometry related applications.
  610. ]
  611. [blurb [*libpdf++]
  612. [@http://libpdfxx.sourceforge.net/doc/index.html libpdf++] is an object-oriented
  613. library for generating PDF (portable document format) files. It is designed
  614. in a way that the objects in the document are mapped directly to classes
  615. in the library.
  616. ]
  617. [blurb [*Regina]
  618. [@http://regina.sourceforge.net/ Regina] is a suite of mathematical software
  619. for 3-manifold topologists. It focuses upon the study of 3-manifold
  620. triangulations and includes support for normal surfaces and angle structures.
  621. ]
  622. [blurb [*MetaFS]
  623. [@http://metafs.sourceforge.net/ MetaFS] is a daemon for Linux
  624. (and Linux only) that allows you to access information about your
  625. files (such as MP3 tags or JPEG's EXIF tags) easily and consistently
  626. using extended attributes. It also allows you to perform fast searches
  627. using this information. MetaFS is extensible, so anyone can write plug-ins
  628. to access new types of metadata.
  629. ]
  630. [blurb [*The ASN.1 Tool]
  631. Abstract Syntax Notation One (ASN.1) is a
  632. formal language for abstractly describing messages to be exchanged among an
  633. extensive range of applications involving the Internet, intelligent network,
  634. cellular phones, ground-to-air communications, electronic commerce, secure
  635. electronic services, interactive television, intelligent transportation
  636. systems, Voice Over IP and others.
  637. [@http://iiiasn1.sourceforge.net/main.html The ASN.1 Tool] includes two parts :
  638. an ASN.1 compiler "asnparser" which compiles the Abstract Syntax to c++ files,
  639. and a runtime library which is used to link with the c++ files generated by
  640. asnparser. Based on the works of Open H.323 projects, it is developed for
  641. the needs of H.450 series protocol.
  642. ]
  643. [blurb [*DGD]
  644. [@http://dgd.sourceforge.net/dgd_home.html DGD] (Depression Glass Debug)
  645. is simple, easy to use C++ ostream extension
  646. created with a goal to produce nice, readable and easy to understand trace logs]
  647. [blurb [*FEAR]
  648. [@http://fear.sourceforge.net/ FEAR] is a language independent
  649. open-source project providing portable support for the creation of
  650. genuine Artificial Intelligence within realistic simulated worlds.]
  651. [blurb [*XEngine]
  652. [@http://xengine.sourceforge.net/features.php XEngine] is a platform- and
  653. rendering-API-independent 3D engine for real-time visualization with
  654. support for programmable graphics pipeline architectures and is implemented in C++.]
  655. [blurb [*Spheral++]
  656. [@http://spheral.sourceforge.net/ Spheral++] is a numerical tool
  657. for simulating the evolution of a set of fluid or solid materials subject to
  658. hydrodynamic, gravitational, and radiative effects.
  659. Spherical++ uses __python.]
  660. [blurb [*C++ XML Objects]
  661. [@http://cppxmlobj.sourceforge.net/ C++ XML Objects] is a framework for persisting
  662. hierarchies of C++ objects to and from XML.]
  663. [blurb [*HippoDraw]
  664. [@http://www.slac.stanford.edu/grp/ek/hippodraw/index.html HippoDraw] provides a
  665. highly interactive data analysis environment.
  666. HippoDraw uses __python.]
  667. [blurb [*Orocos]
  668. [@http://people.mech.kuleuven.ac.be/~psoetens/orocos/doc/orocos-control-manual.html
  669. The Orocos Robot Control Software Application Framework].]
  670. [blurb [*ECell]
  671. The [@http://www.e-cell.org/ E-Cell Project] is an international research
  672. project aiming at developing necessary theoretical supports, technologies
  673. and software platforms to allow precise whole cell simulation.]
  674. [blurb [*VCS Made Easy]
  675. [@http://vcsme.sourceforge.net/ VCS Made Easy],
  676. or vcsme for short, is an utility whose main
  677. purpose is to simplify the maintenance of file trees managed by a version
  678. control system, such as the well known CVS or Subversion. Simply put,
  679. it automates the process of bringing all these directories to an up-to-date
  680. status with a single and simple command.
  681. ['"The following Boost libraries were used:
  682. __format,
  683. __smart,
  684. __utility and
  685. __file_system."]
  686. ]
  687. [blurb [*Monotone]
  688. [@http://www.venge.net/monotone/ Monotone]
  689. is a free distributed version control system. It provides
  690. a simple, single-file transactional version store, with fully disconnected
  691. operation and an efficient peer-to-peer synchronization protocol. It
  692. understands history-sensitive merging, lightweight branches, integrated
  693. code review and 3rd party testing. It uses cryptographic version naming
  694. and client-side RSA certificates. It has good internationalization support,
  695. has no external dependencies, runs on linux, solaris, OSX, windows, and
  696. other unixes, and is licensed under the GNU GPL.
  697. ['"The followind Boost libraries were used:
  698. __date_time,
  699. __file_system,
  700. __conversion,
  701. __optional,
  702. __random,
  703. __regex,
  704. __smart,
  705. __static_assert,
  706. __tokenizer,
  707. __tuple and
  708. __test."]
  709. ]
  710. [blurb [*Hydranode Engine]
  711. [@http://hydranode.com/ Hydranode Engine]
  712. is a plugin-driven P2P client engine that relies
  713. heavily on Boost libraries. Hydranode codebase is licenced under GNU
  714. GPL, and is developed mainly by Alo Sarv. Currently in Beta phase,
  715. Hydranode runs on wide range of platforms, including Windows, Linux,
  716. BSD, Mac OS, Solaris etc.
  717. ['"Hydranode Engine and plugins rely heavily on the following Boost
  718. libraries: __bind, __function, __lambda, __multi_index, __signals, Threads,
  719. __smart, Format, __lexical_cast. Other Boost libraries being used
  720. include __file_system, __string_algo, __date_time, __program_options, __spirit,
  721. __random, __tokenizer, __type_traits, __tribool, __tuple and __any. Once Boost 1.33
  722. is released, I'm also looking forward to using the Boost Iostreams library
  723. in Hydranode.]
  724. ['"All complex data structures in Hydranode are implemented using
  725. __multi_index containers, which significantly reduced development time
  726. and kept code clean. Format is being used for all text formatting.
  727. Having __thread and __file_system libraries available made cross-platform
  728. development lot easier in those areas."]
  729. ]
  730. [blurb [*Hugin]
  731. With [@http://hugin.sourceforge.net/ hugin] you can assemble a mosiac of
  732. photographs into a complete
  733. immersive panorama, stitch any series of overlapping pictures and much more.]
  734. [blurb [*Enblend]
  735. [@http://enblend.sourceforge.net/ Enblend] is a tool for compositing images.
  736. Given a set of images that overlap
  737. in some irregular way, Enblend overlays them in such a way that the seam
  738. between the images is invisible, or at least very difficult to see.]
  739. [blurb [*GNU Source-highlight]
  740. [@http://www.gnu.org/software/src-highlite/source-highlight.html GNU Source-highlight],
  741. given a source file, produces a document with
  742. syntax highlighting. The colors and the styles can be specified
  743. (bold, italics, underline) by means of a configuration file, and some
  744. other options can be specified at the command line. The output format
  745. can be HTML, XHTML and ANSI color escape sequences. GNU Source Highlight
  746. is build around __regex]
  747. [blurb [*Luabind]
  748. [@http://luabind.sourceforge.net/ Luabind] is a library that helps you create
  749. bindings between C++ and lua. It has the ability to expose functions and classes,
  750. written in C++, to lua. It will also supply the functionality to define classes
  751. in lua and let them derive from other lua classes or C++ classes.
  752. Lua classes can override virtual functions from their C++ baseclasses.
  753. It is written towards lua 5.0, and does not work with lua 4.]
  754. [blurb [*C++/Tcl]
  755. [@http://cpptcl.sourceforge.net/ C++/Tcl] is a library that allows the easy
  756. integration of C++ and Tcl.]
  757. [blurb [*QuantLib]
  758. The [@http://quantlib.org/ QuantLib] project provides a comprehensive software
  759. framework for quantitative finance. QuantLib is a free\/open-source library
  760. for modeling, trading, and risk management in real-life.
  761. Boost components used include
  762. __smart,
  763. __iterator,
  764. and __test.
  765. ]
  766. [blurb [*CBCanaylzer]
  767. [@http://www.biozentrum.uni-wuerzburg.de/index.php?id=524 CBCanaylzer]
  768. is developed by the Department of Bioinformatics,
  769. at the University of Wuerzburg.
  770. ['"CBCAnalyzer (CBC = compensatory base change) is a tool to create ``small''
  771. phylogenetic trees from sequence alignments. To measure the distance of sequences
  772. the compensatory base changes are detected and counted. The bionj
  773. algorithm is then used to construct a tree. CBCAnalyzer is available on
  774. Windows, Linux and partly works on MacOSX. ]
  775. ['"Boost libraries used:
  776. __program_options
  777. - creates really nice output, and is both easy to extend and simple to handle.
  778. __iterator,
  779. __spirit
  780. - Saved a lot of my time, and makes the vast amount of biological file
  781. formats simple to support,
  782. __shared_ptr,
  783. __lambda.]
  784. ]
  785. [blurb [*Profdist]
  786. [@http://www.biozentrum.uni-wuerzburg.de/index.php?id=523 Profdist]
  787. is developed by the Department of Bioinformatics, at the University of Wuerzburg.
  788. ['"Profdist is a tool for the construction of large phylogenetic trees based on
  789. profile distances. The input alignment data gets extended by random
  790. picking of rows, and a clustering technique is used to create profiles
  791. of the most frequent subtrees. The iterative approach allows working on
  792. large datasets. Currently the application is very limited by the quality of
  793. wxWidgets, and only available for Windows and Linux. ]
  794. ['"The Boost librarie used were:
  795. __string_algo,
  796. __ref,
  797. __iterator,
  798. __spirit,
  799. __shared_ptr and
  800. __lambda."]
  801. ]
  802. [blurb [*The Yake Engine]
  803. [@http://www.yake.org/ The Yake Engine]
  804. is a component-based, object-oriented engine written in C++
  805. and primarily designed for VR applications and games. It abstracts typical
  806. low-level and middleware APIs and provides various low, mid and application
  807. level functionality as well as tools to create and import content.
  808. ]
  809. [blurb [*Python-Ogre]
  810. [@http://python-ogre.python-hosting.com/ Python-Ogre]
  811. is a Python bindings for Ogre 3D - a scene-oriented,
  812. flexible 3D engine.
  813. Python-Ogre uses __python to expose next libraries to Python:
  814. * Ogre\n
  815. * Newton\n
  816. * ODE\n
  817. * OgreAL\n
  818. * CEGUI\n
  819. * OIS\n
  820. ]
  821. [endsect]
  822. [section:inhouse In House Boost]
  823. Whether you're a government department, an internet startup, or a specialist consultancy, in-house
  824. developement using the Boost Libraries can significantly shorten your
  825. development cycles.
  826. [blurb [*Google]
  827. [@http://code.google.com/p/google-gtags/ google-gtags] Provides server-based
  828. tags serving for large codebases. This is an extension to GNU Emacs and X-Emacs
  829. TAGS functionality, that uses __test as its
  830. unit test framework.
  831. ]
  832. [blurb [*LiquidNet]
  833. [@http://www.liquidnet.com/ LiquidNet] is Americas number one electronic
  834. marketplace for large block trading, and the 5th fastest growing company
  835. according to Inc Magazine.
  836. "['Boost Libraries most used, in order of importance:]
  837. ['"__shared_ptr,
  838. __bind,
  839. __python,
  840. __lexical_cast,
  841. __optional,
  842. __any and
  843. __tuple]
  844. ]
  845. [def __oce Oc'''&#xE9;''']
  846. [blurb [*__oce-Technologies B.V.]
  847. Throughout the world
  848. [@http://www.oce.com __oce] is one of the major suppliers of document
  849. management and printing systems and the related services. We develop,
  850. manufacture, service and sell printers, scanners, peripheral
  851. equipment and media, supported by unique software. __oce
  852. products for the corporate and commercial market are widely known for
  853. their quality, ease of use, speed and reliability.
  854. The Boost libraries enable us to get a higher degree of uniformity and
  855. quality in our code. During a redesign last year we found that lots of
  856. small constructions from Boost shortens development time and prevents
  857. having to reinvent many wheels. Libraries that we use include
  858. __assign, __date_time, __enable_if, __file_system, __format, __function, __iterator,
  859. __multi_index, __operators, __optional, __pointer_cont, __signals, __smart,
  860. __thread, and __variant.
  861. ]
  862. [blurb [*MetOcean Engineers]
  863. [@http://www.metoceanengineers.com MetOcean Engineers]
  864. are a leading consultancy providing oceanographic and meteorological
  865. services in support of coastal and ocean engineering and environmental
  866. protection. Core activities encompass: oceanographic measurements;
  867. metocean monitoring systems; coastal and ocean engineering; environmental
  868. consultancy; data management.
  869. Boost Libraries currently in use:
  870. __any,
  871. __assign,
  872. __bind,
  873. __date_time,
  874. __iterator,
  875. __lexical_cast,
  876. __mpl,
  877. __phoenix,
  878. __program_options,
  879. __ref,
  880. __smart,
  881. __spirit,
  882. __string_algo,
  883. __tribool and
  884. __variant
  885. ]
  886. [blurb [*TeraView Ltd]
  887. [@http://www.teraview.com TeraView Ltd] develop terahertz based systems
  888. for a variety of applications
  889. including spectroscopy and imaging.
  890. ['"We use:
  891. __thread,
  892. __file_system,
  893. __date_time,
  894. __serialization,
  895. __smart,
  896. __function,
  897. __bind,
  898. __iterator,
  899. __lexical_cast,
  900. __format,
  901. __tuple,
  902. __any and
  903. __optional"]
  904. ]
  905. [blurb [*NPC International]
  906. With about 800 restaurants, [@http://www.npcinternational.com NPC International]
  907. is the world's largest Pizza Hut franchisee.
  908. ['"We make extensive use of boost in our internally developed point of sale,
  909. restaurant management, communications, and accounting systems.
  910. We use the following Boost libraries in approximate order of frequency of use:
  911. __bind,
  912. __function,
  913. __optional,
  914. __shared_ptr,
  915. __date_time,
  916. __thread,
  917. __lambda,
  918. __type_traits,
  919. __mpl,
  920. __tuple,
  921. __enable_if,
  922. __variant,
  923. __spirit,
  924. __string_algo,
  925. __preprocessor,
  926. __file_system,
  927. __operators,
  928. __iterator and
  929. __tokenizer."]
  930. ]
  931. [blurb [*Rational Discovery LLC]
  932. [@http://www.rationaldiscovery.com Rational Discovery]
  933. provides computational modeling, combinatorial
  934. library design and custom software development services to the
  935. pharmaceutical, biotech and chemical industries.
  936. ['"We do a substantial amount of internal research to develop new
  937. approaches for applying machine-learning techniques to solve chemical
  938. problems. Because we're a small organization and chemistry is a large
  939. and complex field, it is essential that we be able to quickly and
  940. easily prototype and test new algorithms. We have found the Boost
  941. libraries, a reliable source of high-quality code, to be
  942. indispensable.]
  943. ['"Boost libraries used:
  944. __python,
  945. __graph,
  946. __smart,
  947. __any,
  948. __lexical_cast,
  949. __random,
  950. __string_algo,
  951. __tuple,
  952. __ublas."]
  953. ]
  954. [blurb [*Archelon LLC]
  955. [@http://www.archelon-us.com Archelon LLC] is a global securities firm
  956. headquartered in Chicago. We actively trade equities, futures and
  957. derivatives in both electronic and floor-based markets. Archelon is
  958. one of the highest volume market makers on EUREX and a leading
  959. U.S. option market maker focusing on the most active securities.
  960. ['"We use:
  961. __any,
  962. __array,
  963. __bind,
  964. __date_time,
  965. __function,
  966. __lexical_cast,
  967. __optional,
  968. __rational,
  969. __regex,
  970. __signals,
  971. __smart,
  972. __tokenizer,
  973. __tuple and
  974. __utility."]
  975. ]
  976. [blurb [*Automated Trading Deck]
  977. [@http://www.atdesk.com Automated Trading Deck] (ATD) uses a large number
  978. of Boost libraries. ATD is a technology company specializing in
  979. automated trading and customized equity execution solutions for its
  980. customers. We offer automated execution solutions in all domestic cash
  981. equity markets, including the listed, over-the-counter, exchange traded
  982. fund and bulletin board marketplaces. Our proprietary "Pricing Engine"
  983. and automated limit-order trading algorithms apply advanced expert
  984. systems to limit-order trading and customer executions.
  985. ]
  986. [blurb [*"EB" Automotive]
  987. [@http://www.elektrobit.com/static/en/index.html "EB" Automotive]
  988. is currently using __gil, __mpl and __string_algo
  989. for a in house tool. Additionally we use Stefan Seefelds Boost.XML from
  990. sandbox, with a few small extensions.
  991. ['"Especially __gil gave our image preprocessing routines a strong
  992. speed boost and greatly simplified our code".]
  993. ]
  994. [endsect]
  995. [section:submit Submissions]
  996. If you have an application or library that's using Boost and would like to be
  997. listed here, please post the following information to the
  998. [@http://www.boost.org/more/mailing_lists.htm#main main Boost developer
  999. mailing list]:
  1000. * The name of the Application/Product/Service.
  1001. * The name of the company (where appropriate).
  1002. * A paragraph describing the Application/Product/Service.
  1003. * Any information you can provide about which parts of Boost you used,
  1004. along with any comments you may have on how Boost helped your product
  1005. development.
  1006. * URLs to your companies home page, and the home page of the
  1007. Application/Product/Service if there is one.
  1008. Finally, if the subheadings used in the structure of these pages
  1009. don't fit your Product/Application/Service please say so: we're
  1010. always interested to hear how these pages can be improved or better
  1011. structured.
  1012. [endsect]
粤ICP备19079148号