@@ -76,28 +76,15 @@ struct DevDescT {
76
76
std::string platVer;
77
77
};
78
78
79
- static void replaceSpecialCharacters (std::string &str) {
80
- std::string lparen (" (" );
81
- std::string rparen (" )" );
82
- std::string esclparen (" \\ (" );
83
- std::string escrparen (" \\ )" );
84
- std::string period (" ." );
85
- std::string escperiod (" \\ ." );
86
-
87
- size_t pos = 0 ;
88
- while ((pos = str.find (lparen, pos)) != std::string::npos) {
89
- str.replace (pos, lparen.size (), esclparen);
90
- pos += esclparen.size ();
91
- }
92
- pos = 0 ;
93
- while ((pos = str.find (rparen, pos)) != std::string::npos) {
94
- str.replace (pos, rparen.size (), escrparen);
95
- pos += escrparen.size ();
96
- }
97
- pos = 0 ;
98
- while ((pos = str.find (period, pos)) != std::string::npos) {
99
- str.replace (pos, period.size (), escperiod);
100
- pos += escperiod.size ();
79
+ static void addEscapeSymbolToSpecialCharacters (std::string &str) {
80
+ std::vector<std::string> specialCharacters{" (" , " )" , " [" , " ]" , " ." };
81
+ for (const auto &character : specialCharacters) {
82
+ size_t pos = 0 ;
83
+ while ((pos = str.find (character, pos)) != std::string::npos) {
84
+ std::string modifiedCharacter (" \\ " + character);
85
+ str.replace (pos, character.size (), modifiedCharacter);
86
+ pos += modifiedCharacter.size ();
87
+ }
101
88
}
102
89
}
103
90
@@ -201,7 +188,7 @@ int main() {
201
188
for (const auto &dev : plt.get_devices ()) {
202
189
if (dev.has (aspect::gpu)) {
203
190
std::string name = dev.get_info <info::device::name>();
204
- replaceSpecialCharacters (name);
191
+ addEscapeSymbolToSpecialCharacters (name);
205
192
std::string ver = dev.get_info <info::device::driver_version>();
206
193
if ((plt.get_backend () == backend::opencl) &&
207
194
(sycl_be.find (" OPENCL" ) != std::string::npos)) {
@@ -261,7 +248,7 @@ int main() {
261
248
for (const auto &plt : platform::get_platforms ()) {
262
249
if (plt.has (aspect::gpu)) {
263
250
std::string name = plt.get_info <info::platform::name>();
264
- replaceSpecialCharacters (name);
251
+ addEscapeSymbolToSpecialCharacters (name);
265
252
std::string ver = plt.get_info <info::platform::version>();
266
253
if (((plt.get_backend () == backend::opencl) &&
267
254
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -317,7 +304,7 @@ int main() {
317
304
for (const auto &dev : plt.get_devices ()) {
318
305
if (dev.has (aspect::gpu)) {
319
306
std::string name = dev.get_info <info::device::name>();
320
- replaceSpecialCharacters (name);
307
+ addEscapeSymbolToSpecialCharacters (name);
321
308
std::string ver (" 98.76.54321" );
322
309
if (((plt.get_backend () == backend::opencl) &&
323
310
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -371,7 +358,7 @@ int main() {
371
358
for (const auto &plt : platform::get_platforms ()) {
372
359
if (plt.has (aspect::gpu)) {
373
360
std::string name = plt.get_info <info::platform::name>();
374
- replaceSpecialCharacters (name);
361
+ addEscapeSymbolToSpecialCharacters (name);
375
362
if ((plt.get_backend () == backend::opencl) &&
376
363
(sycl_be.find (" OPENCL" ) != std::string::npos)) {
377
364
std::string ver (" OpenCL 12.34" );
@@ -430,7 +417,7 @@ int main() {
430
417
for (const auto &dev : plt.get_devices ()) {
431
418
if (dev.has (aspect::gpu)) {
432
419
std::string name = dev.get_info <info::device::name>();
433
- replaceSpecialCharacters (name);
420
+ addEscapeSymbolToSpecialCharacters (name);
434
421
std::string ver = dev.get_info <info::device::driver_version>();
435
422
size_t pos = 0 ;
436
423
if ((pos = ver.find (" ." )) == std::string::npos) {
@@ -498,7 +485,7 @@ int main() {
498
485
for (const auto &dev : plt.get_devices ()) {
499
486
if (dev.has (aspect::gpu)) {
500
487
std::string name = dev.get_info <info::device::name>();
501
- replaceSpecialCharacters (name);
488
+ addEscapeSymbolToSpecialCharacters (name);
502
489
if (((plt.get_backend () == backend::opencl) &&
503
490
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
504
491
((plt.get_backend () == backend::level_zero) &&
@@ -547,7 +534,7 @@ int main() {
547
534
for (const auto &plt : platform::get_platforms ()) {
548
535
if (plt.has (aspect::gpu)) {
549
536
std::string name = plt.get_info <info::platform::name>();
550
- replaceSpecialCharacters (name);
537
+ addEscapeSymbolToSpecialCharacters (name);
551
538
if (((plt.get_backend () == backend::opencl) &&
552
539
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
553
540
((plt.get_backend () == backend::level_zero) &&
@@ -599,7 +586,7 @@ int main() {
599
586
for (const auto &dev : plt.get_devices ()) {
600
587
if (dev.has (aspect::gpu)) {
601
588
std::string name = dev.get_info <info::device::name>();
602
- replaceSpecialCharacters (name);
589
+ addEscapeSymbolToSpecialCharacters (name);
603
590
std::string ver = dev.get_info <info::device::driver_version>();
604
591
if (((plt.get_backend () == backend::opencl) &&
605
592
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -662,7 +649,7 @@ int main() {
662
649
for (const auto &dev : plt.get_devices ()) {
663
650
if (dev.has (aspect::gpu)) {
664
651
std::string name = dev.get_info <info::device::name>();
665
- replaceSpecialCharacters (name);
652
+ addEscapeSymbolToSpecialCharacters (name);
666
653
if (((plt.get_backend () == backend::opencl) &&
667
654
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
668
655
((plt.get_backend () == backend::level_zero) &&
@@ -715,7 +702,7 @@ int main() {
715
702
for (const auto &plt : platform::get_platforms ()) {
716
703
if (plt.has (aspect::gpu)) {
717
704
std::string name = plt.get_info <info::platform::name>();
718
- replaceSpecialCharacters (name);
705
+ addEscapeSymbolToSpecialCharacters (name);
719
706
if (((plt.get_backend () == backend::opencl) &&
720
707
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
721
708
((plt.get_backend () == backend::level_zero) &&
@@ -768,7 +755,7 @@ int main() {
768
755
for (const auto &dev : plt.get_devices ()) {
769
756
if (dev.has (aspect::gpu)) {
770
757
std::string name = dev.get_info <info::device::name>();
771
- replaceSpecialCharacters (name);
758
+ addEscapeSymbolToSpecialCharacters (name);
772
759
std::string ver = dev.get_info <info::device::driver_version>();
773
760
if (((plt.get_backend () == backend::opencl) &&
774
761
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -823,7 +810,7 @@ int main() {
823
810
for (const auto &plt : platform::get_platforms ()) {
824
811
if (plt.has (aspect::gpu)) {
825
812
std::string name = plt.get_info <info::platform::name>();
826
- replaceSpecialCharacters (name);
813
+ addEscapeSymbolToSpecialCharacters (name);
827
814
std::string ver = plt.get_info <info::platform::version>();
828
815
if (((plt.get_backend () == backend::opencl) &&
829
816
(sycl_be.find (" OPENCL" ) != std::string::npos)) ||
0 commit comments