Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
gString.h
Go to the documentation of this file.
1/*
2# <<BEGIN-copyright>>
3# Copyright (c) 2010, Lawrence Livermore National Security, LLC.
4# Produced at the Lawrence Livermore National Laboratory
5# Written by Bret R. Beck, beck6@llnl.gov.
6# CODE-461393
7# All rights reserved.
8#
9# This file is part of GIDI. For details, see nuclear.llnl.gov.
10# Please also read the "Additional BSD Notice" at nuclear.llnl.gov.
11#
12# Redistribution and use in source and binary forms, with or without modification,
13# are permitted provided that the following conditions are met:
14#
15# 1) Redistributions of source code must retain the above copyright notice,
16# this list of conditions and the disclaimer below.
17# 2) Redistributions in binary form must reproduce the above copyright notice,
18# this list of conditions and the disclaimer (as noted below) in the
19# documentation and/or other materials provided with the distribution.
20# 3) Neither the name of the LLNS/LLNL nor the names of its contributors may be
21# used to endorse or promote products derived from this software without
22# specific prior written permission.
23#
24# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
25# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
26# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
27# SHALL LAWRENCE LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR
28# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
31# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
33# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34# <<END-copyright>>
35*/
36#ifndef gString_h_included
37#define gString_h_included
38
39#if defined __cplusplus
40 extern "C" {
41#endif
42
44
45#if defined __cplusplus
46 namespace GIDI {
47#endif
48
49#define gString_minIncrement sizeof( char * )
50typedef struct gString_s gString;
51
52struct gString_s {
53 int length, allocated, increment;
54 char *gStr;
55};
56
57int gString_initialize( statusMessageReporting *smr, gString *gStr, int size, int increment );
60int gString_addTo( statusMessageReporting *smr, gString *gStr, char const *str );
61char const *gString_string( statusMessageReporting *smr, gString *gStr );
65
66#if defined __cplusplus
67 }
68 }
69#endif
70
71#endif /* End of gString_h_included. */
72
int gString_length(statusMessageReporting *smr, gString *gStr)
Definition: gString.cc:119
int gString_addTo(statusMessageReporting *smr, gString *gStr, char const *str)
Definition: gString.cc:90
char const * gString_string(statusMessageReporting *smr, gString *gStr)
Definition: gString.cc:111
int gString_release(statusMessageReporting *smr, gString *gStr)
Definition: gString.cc:69
int gString_allocated(statusMessageReporting *smr, gString *gStr)
Definition: gString.cc:127
int gString_initialize(statusMessageReporting *smr, gString *gStr, int size, int increment)
Definition: gString.cc:48
int gString_increment(statusMessageReporting *smr, gString *gStr)
Definition: gString.cc:135
int gString_clear(statusMessageReporting *smr, gString *gStr)
Definition: gString.cc:79
int allocated
Definition: gString.h:53
char * gStr
Definition: gString.h:54