Back to home page

EIC code displayed by LXR

 
 

    


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

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 // TEST=ArrayTest om-t 
0021 
0022 #include "OPTICKS_LOG.hh"
0023 
0024 #include <sstream>
0025 #include <string>
0026 #include <cstring>
0027 #include <array>
0028 
0029 struct Demo
0030 {
0031     Demo(const char* name_, int value_)
0032        :
0033        name(strdup(name_)),
0034        value(value_) 
0035     {
0036     }
0037     std::string desc() const 
0038     {
0039         std::stringstream ss ; 
0040         ss
0041            << std::setw(10) << name
0042            << " : " 
0043            << std::setw(10) << value
0044            ;
0045         return ss.str();
0046     }
0047 
0048     const char* name ; 
0049     int value ; 
0050 };
0051 
0052 
0053 int main(int argc, char** argv)
0054 {
0055     OPTICKS_LOG(argc, argv); 
0056 
0057     std::array<Demo*, 10> arr ; 
0058     arr.fill(NULL); 
0059 
0060     arr[5] = new Demo("yo", 42) ; 
0061 
0062     for(unsigned i=0 ; i < arr.size() ; i++) LOG(info) << i << " : " << ( arr[i] ? arr[i]->desc() : "-" ) ; 
0063 
0064     arr[10] = new Demo("hmm", 42) ; 
0065 
0066     return 0 ; 
0067 }
0068 
0069