File indexing completed on 2025-07-01 07:57:00
0001 <app-shell>
0002 <div centralPane class="fixed-width-page-content">
0003 <form>
0004
0005 <mat-card class="config-card">
0006 <mat-card-title>Select Geometry and Events</mat-card-title>
0007 <mat-card-content>
0008 <div class="section">
0009 <h3>Examples:</h3>
0010 <p>Select example configuration preset</p>
0011 <firebird-resource-select
0012 #premadeGeometry
0013 [options]="quickLinkTitles"
0014 label="Premade configurations"
0015 (valueChange)="onPresetChange($event)">
0016 </firebird-resource-select>
0017 </div>
0018
0019 <div class="section">
0020 <h3>Geometry</h3>
0021 <p>Select or type in your url for the geometry</p>
0022 <firebird-resource-select
0023 #geometrySelect
0024 [options]="geometryOptions"
0025 label="Geometry source">
0026 </firebird-resource-select>
0027 </div>
0028
0029 <div class="section">
0030 <h3>Event Source: JSON</h3>
0031 <firebird-resource-select
0032 #dexJsonSelect
0033 [options]="trajectoryOptions"
0034 label="Load events from JSON files. Such files can be generated with 'pyrobird convert', merge or other tools">
0035 </firebird-resource-select>
0036 </div>
0037
0038 <div class="section">
0039 <h3>EDM4EIC Event Source:</h3>
0040 <p>Select file with EDM4EIC data</p>
0041 <firebird-resource-select
0042 #edm4eicSelect
0043 [options]="edm4eicOptions"
0044 label="Load EDM4EIC .root Edm4Eic (this operation requires backend to be running)">
0045 </firebird-resource-select>
0046 <p>Event range to load (e.g. "0", "0,1,2", "0-5").
0047 It is recommended to load 1-10 events at a time. Not more!
0048 </p>
0049 <mat-form-field appearance="fill" class="full-width">
0050 <input matInput type="text" placeholder="0-5" [formControl]="rootEventRange">
0051 </mat-form-field>
0052 </div>
0053 </mat-card-content>
0054
0055 <div class="action-buttons">
0056 <button type="button" mat-raised-button [routerLink]="['/display']">DISPLAY</button>
0057 </div>
0058
0059 </mat-card>
0060
0061
0062
0063
0064 <mat-card class="config-card">
0065 <mat-card-title>Configure Geometry Pipeline</mat-card-title>
0066 <mat-card-content>
0067 <img src="assets/diagrams/geometry-pipeline.svg" alt="Geometry Pipeline" style="width:60%; text-align: center"/>
0068 <div class="subsection">
0069 <h3>Geometry Processing Options</h3>
0070 <p>(!) A page reload might be needed to see these changes</p>
0071
0072
0073 <div class="section">
0074 <h4>WebGL pipeline</h4>
0075 <p>Select how geometry looks and optimized</p>
0076 <mat-form-field appearance="fill" class="full-width">
0077 <mat-select [formControl]="geometryThemeName" [value]="geometryThemeName">
0078 <mat-option value="cool2">Cool2 - (default) cold colors, optimized </mat-option>
0079 <mat-option value="cool2no">Cool2 No Outline - cool2 but no outline for performance </mat-option>
0080 <mat-option value="cad">CAD - like colors, optimized</mat-option>
0081 <mat-option value="grey">Grey - mono colors</mat-option>
0082 <mat-option value="off">Off (may hit performance)</mat-option>
0083 </mat-select>
0084 </mat-form-field>
0085 <p>Performance over quality (remove transparency, simple lights, etc.)</p>
0086 <mat-slide-toggle [formControl]="geometryFastAndUgly">Enabled</mat-slide-toggle>
0087 </div>
0088
0089
0090
0091 <div class="section">
0092 <h4>ROOT Geo pipeline</h4>
0093
0094 <p>Cut sub-detectors. Remove certain subdetectors such as FF, FB, some magnets and beam-pipe elements</p>
0095 <mat-form-field appearance="fill" class="full-width">
0096 <mat-select [formControl]="geometryCutListName" [value]="geometryCutListName">
0097 <mat-option value="central">Show central detector only</mat-option>
0098 <mat-option value="off">Off (don't remove anything)</mat-option>
0099 </mat-select>
0100 </mat-form-field>
0101
0102 <p>Clean tree: remove elements such as glue layers, individual straws, ASICs, PCBs, etc.</p>
0103 <mat-form-field appearance="fill" class="full-width">
0104 <mat-select [formControl]="geometryRootFilterName" [value]="geometryRootFilterName">
0105 <mat-option value="default">Default (remove glues, straws, thin layers, etc)</mat-option>
0106 <mat-option value="off">Off (SLOW for full detector,)</mat-option>
0107 </mat-select>
0108 </mat-form-field>
0109 </div>
0110
0111 <div class="action-buttons">
0112 <button type="button" mat-raised-button [routerLink]="['/display']">DISPLAY</button>
0113 <button type="button" mat-raised-button (click)="resetGeometryToDefaults()">Reset pipeline to Defaults</button>
0114 </div>
0115
0116 </div>
0117
0118
0119 </mat-card-content>
0120 </mat-card>
0121
0122 <mat-card class="config-card">
0123 <mat-card-title>Server API Configuration</mat-card-title>
0124 <mat-card-content>
0125 <mat-slide-toggle [formControl]="serverUseApi">Use specific backend</mat-slide-toggle>
0126 <div class="api-url">
0127 <mat-form-field appearance="fill" class="full-width">
0128 <mat-label>Base API URL</mat-label>
0129 <input matInput type="text" placeholder="Enter API URL: http://localhost:5454"
0130 [formControl]="serverApiUrl" [disabled]="!serverUseApi.value">
0131 </mat-form-field>
0132 </div>
0133 </mat-card-content>
0134 </mat-card>
0135
0136 <mat-accordion class="details-accordion">
0137 <mat-expansion-panel>
0138 <mat-expansion-panel-header>
0139 <mat-panel-title>
0140 Backend Details
0141 </mat-panel-title>
0142 </mat-expansion-panel-header>
0143 <table class="details-table">
0144 <thead>
0145 <tr>
0146 <th>Property</th>
0147 <th>Value</th>
0148 </tr>
0149 </thead>
0150 <tbody>
0151 <tr>
0152 <td>Served by Pyrobird</td>
0153 <td>{{ firebirdConfig.servedByPyrobird ? 'Yes' : 'No' }}</td>
0154 </tr>
0155 <tr>
0156 <td>API Available</td>
0157 <td>{{ firebirdConfig.apiAvailable ? 'Yes' : 'No' }}</td>
0158 </tr>
0159 <tr>
0160 <td>API Base URL</td>
0161 <td>{{ firebirdConfig.apiBaseUrl }}</td>
0162 </tr>
0163 <tr>
0164 <td>Log Level</td>
0165 <td>{{ firebirdConfig.logLevel }}</td>
0166 </tr>
0167 </tbody>
0168 </table>
0169 </mat-expansion-panel>
0170 </mat-accordion>
0171
0172 </form>
0173 </div>
0174 </app-shell>