Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:49:30

0001 /*
0002  * Copyright (c) 2019 Opticks Team. All Rights Reserved.
0003  *
0004  * This file is part of Opticks
0005  * (see https://bitbucket.org/simoncblyth/opticks).
0006  *
0007  * Licensed under the Apache License, Version 2.0 (the "License"); 
0008  * you may not use this file except in compliance with the License.  
0009  * You may obtain a copy of the License at
0010  *
0011  *   http://www.apache.org/licenses/LICENSE-2.0
0012  *
0013  * Unless required by applicable law or agreed to in writing, software 
0014  * distributed under the License is distributed on an "AS IS" BASIS, 
0015  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
0016  * See the License for the specific language governing permissions and 
0017  * limitations under the License.
0018  */
0019 
0020 #pragma once
0021 /**
0022 SAbbrev
0023 ========
0024 
0025 **/
0026 
0027 
0028 #include <string>
0029 #include <vector>
0030 #include "plog/Severity.h"
0031 
0032 #include "SYSRAP_API_EXPORT.hh"
0033 
0034 class SASCII ; 
0035 
0036 
0037 struct SYSRAP_API SAbbrev
0038 {
0039     static const plog::Severity LEVEL ;
0040     static SAbbrev* Load(const char* path); 
0041     static SAbbrev* FromString( const char* str ); 
0042 
0043     SAbbrev( const std::vector<std::string>& names_ ); 
0044 
0045     void init(); 
0046 
0047 
0048     std::string form_candidate( const SASCII* n ); 
0049 
0050     bool isFree(const std::string& ab) const ;
0051     void dump() const ; 
0052     void save(const char* path_) const ; 
0053     void save(const char* fold, const char* name) const ; 
0054 
0055    
0056     const std::vector<std::string>& names ; 
0057     std::vector<std::string> abbrev ; 
0058 };
0059 
0060