Geant4-11
Public Member Functions | Private Member Functions | Private Attributes
G4UIaliasList Class Reference

#include <G4UIaliasList.hh>

Public Member Functions

void ChangeAlias (const char *aliasName, const char *aliasValue)
 
G4StringFindAlias (const char *aliasName)
 
 G4UIaliasList ()
 
void List ()
 
void RemoveAlias (const char *aliasName)
 
 ~G4UIaliasList ()
 

Private Member Functions

void AddNewAlias (const char *aliasName, const char *aliasValue)
 
G4int FindAliasID (const char *aliasName)
 
G4bool operator!= (const G4UIaliasList &right) const
 
G4bool operator== (const G4UIaliasList &right) const
 

Private Attributes

std::vector< G4String * > alias
 
std::vector< G4String * > value
 

Detailed Description

Definition at line 42 of file G4UIaliasList.hh.

Constructor & Destructor Documentation

◆ G4UIaliasList()

G4UIaliasList::G4UIaliasList ( )

Definition at line 35 of file G4UIaliasList.cc.

35{}

◆ ~G4UIaliasList()

G4UIaliasList::~G4UIaliasList ( )

Definition at line 38 of file G4UIaliasList.cc.

39{
40 G4int n_treeEntry = alias.size();
41 for(G4int i = 0; i < n_treeEntry; ++i)
42 {
43 delete alias[i];
44 delete value[i];
45 }
46}
int G4int
Definition: G4Types.hh:85
std::vector< G4String * > alias
std::vector< G4String * > value

References alias, and value.

Member Function Documentation

◆ AddNewAlias()

void G4UIaliasList::AddNewAlias ( const char *  aliasName,
const char *  aliasValue 
)
private

Definition at line 61 of file G4UIaliasList.cc.

62{
63 if(FindAlias(aliasName))
64 {
65 G4cerr << "Alias <" << aliasName << "> already exists. Command ignored."
66 << G4endl;
67 return;
68 }
69 G4String* newAlias = new G4String(aliasName);
70 alias.push_back(newAlias);
71 G4String* newValue = new G4String(aliasValue);
72 value.push_back(newValue);
73}
G4GLOB_DLL std::ostream G4cerr
#define G4endl
Definition: G4ios.hh:57
G4String * FindAlias(const char *aliasName)

References alias, FindAlias(), G4cerr, G4endl, and value.

Referenced by ChangeAlias().

◆ ChangeAlias()

void G4UIaliasList::ChangeAlias ( const char *  aliasName,
const char *  aliasValue 
)

Definition at line 90 of file G4UIaliasList.cc.

91{
92 G4int i = FindAliasID(aliasName);
93 if(i < 0)
94 {
95 AddNewAlias(aliasName, aliasValue);
96 return;
97 }
98 *(value[i]) = aliasValue;
99}
void AddNewAlias(const char *aliasName, const char *aliasValue)
G4int FindAliasID(const char *aliasName)

References AddNewAlias(), FindAliasID(), and value.

Referenced by G4UImanager::SetAlias().

◆ FindAlias()

G4String * G4UIaliasList::FindAlias ( const char *  aliasName)

Definition at line 102 of file G4UIaliasList.cc.

103{
104 G4int i = FindAliasID(aliasName);
105 if(i < 0)
106 {
107 return 0;
108 }
109 return value[i];
110}

References FindAliasID(), and value.

Referenced by AddNewAlias(), and G4UImanager::SolveAlias().

◆ FindAliasID()

G4int G4UIaliasList::FindAliasID ( const char *  aliasName)
private

Definition at line 113 of file G4UIaliasList.cc.

114{
115 G4int i_entry = alias.size();
116 for(G4int i = 0; i < i_entry; ++i)
117 {
118 if(*(alias[i]) == aliasName)
119 return i;
120 }
121 return -1;
122}

References alias.

Referenced by ChangeAlias(), FindAlias(), and RemoveAlias().

◆ List()

void G4UIaliasList::List ( )

Definition at line 125 of file G4UIaliasList.cc.

126{
127 G4int i_entry = alias.size();
128 for(G4int i1 = 0; i1 < i_entry - 1; ++i1)
129 for(G4int i2 = i1 + 1; i2 < i_entry; ++i2)
130 {
131 if(*(alias[i1]) > *(alias[i2]))
132 {
133 G4String* tmp = alias[i1];
134 alias[i1] = alias[i2];
135 alias[i2] = tmp;
136 tmp = value[i1];
137 value[i1] = value[i2];
138 value[i2] = tmp;
139 }
140 }
141
142 for(G4int i = 0; i < i_entry; ++i)
143 {
144 G4cout << " " << *(alias[i]) << " : " << *(value[i]) << G4endl;
145 }
146}
G4GLOB_DLL std::ostream G4cout

References alias, G4cout, G4endl, and value.

Referenced by G4UImanager::ListAlias().

◆ operator!=()

G4bool G4UIaliasList::operator!= ( const G4UIaliasList right) const
private

Definition at line 55 of file G4UIaliasList.cc.

56{
57 return (this != &right);
58}

◆ operator==()

G4bool G4UIaliasList::operator== ( const G4UIaliasList right) const
private

Definition at line 49 of file G4UIaliasList.cc.

50{
51 return (this == &right);
52}

◆ RemoveAlias()

void G4UIaliasList::RemoveAlias ( const char *  aliasName)

Definition at line 76 of file G4UIaliasList.cc.

77{
78 G4int i = FindAliasID(aliasName);
79 if(i < 0)
80 {
81 G4cerr << "Alias <" << aliasName << "> does not exist. Command ignored."
82 << G4endl;
83 return;
84 }
85 alias.erase(alias.begin() + i);
86 value.erase(value.begin() + i);
87}

References alias, FindAliasID(), G4cerr, G4endl, and value.

Referenced by G4UImanager::RemoveAlias().

Field Documentation

◆ alias

std::vector<G4String*> G4UIaliasList::alias
private

Definition at line 62 of file G4UIaliasList.hh.

Referenced by AddNewAlias(), FindAliasID(), List(), RemoveAlias(), and ~G4UIaliasList().

◆ value

std::vector<G4String*> G4UIaliasList::value
private

Definition at line 63 of file G4UIaliasList.hh.

Referenced by AddNewAlias(), ChangeAlias(), FindAlias(), List(), RemoveAlias(), and ~G4UIaliasList().


The documentation for this class was generated from the following files: