Jpp  18.5.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Friends | List of all members
JOSCPROB::JOscChannel Struct Reference

Neutrino oscillation channel. More...

#include <JOscChannel.hh>

Inheritance diagram for JOSCPROB::JOscChannel:
JLANG::JComparable< JOscChannel >

Classes

struct  JOscChannelHelper
 Auxiliary class for I/O of oscillation channel. More...
 

Public Member Functions

 JOscChannel ()
 Default constructor. More...
 
 JOscChannel (const JFlavour_t in, const JFlavour_t out, const JChargeParity_t Cparity)
 Constructor. More...
 
 JOscChannel (const int in, const int out, const int Cparity)
 Constructor. More...
 
bool is_valid () const
 Check validity of this oscillation channel. More...
 
bool less (const JOscChannel &channel) const
 Less-than method. More...
 
JProperties getProperties (const JEquationParameters &equation=JOscChannel::getEquationParameters())
 Get properties of this class. More...
 
JProperties getProperties (const JEquationParameters &equation=JOscChannel::getEquationParameters()) const
 Get properties of this class. More...
 
void setProperties (const JProperties &properties)
 Set properties of this class. More...
 

Static Public Member Functions

static JEquationParametersgetEquationParameters ()
 Get equation parameters. More...
 
static void setEquationParameters (const JEquationParameters &equation)
 Set equation parameters. More...
 

Public Attributes

JFlavour_t in
 Incoming flavour. More...
 
JFlavour_t out
 Outcoming flavour. More...
 
JChargeParity_t Cparity
 Charge-parity. More...
 

Friends

std::ostream & operator<< (std::ostream &out, const JOscChannel &object)
 Write channel to output. More...
 
std::istream & operator>> (std::istream &in, JOscChannel &object)
 Read channel from input. More...
 

Detailed Description

Neutrino oscillation channel.

Definition at line 110 of file JOscChannel.hh.

Constructor & Destructor Documentation

JOSCPROB::JOscChannel::JOscChannel ( )
inline

Default constructor.

Definition at line 116 of file JOscChannel.hh.

JOSCPROB::JOscChannel::JOscChannel ( const JFlavour_t  in,
const JFlavour_t  out,
const JChargeParity_t  Cparity 
)
inline

Constructor.

Parameters
ininput flavour
outoutput flavour
Cparitycharge parity

Definition at line 130 of file JOscChannel.hh.

132  :
133  in (in),
134  out(out),
136  {}
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:285
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:287
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:286
JOSCPROB::JOscChannel::JOscChannel ( const int  in,
const int  out,
const int  Cparity 
)
inline

Constructor.

Parameters
ininput flavour
outoutput flavour
Cparitycharge parity

Definition at line 146 of file JOscChannel.hh.

148  :
149  in (getFlavour(in)),
150  out(getFlavour(out)),
152  {}
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:285
JChargeParity_t getChargeParity(const int pdgType)
Auxiliary function for retrieving the charge-parity of a given PDG type.
Definition: JOscChannel.hh:83
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:287
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:286
JFlavour_t getFlavour(const int pdgType)
Auxiliary function for retrieving the flavour corresponding to a given PDG identifier.
Definition: JOscChannel.hh:50

Member Function Documentation

bool JOSCPROB::JOscChannel::is_valid ( ) const
inline

Check validity of this oscillation channel.

Returns
true if this oscillation channel is valid; else false.

Definition at line 160 of file JOscChannel.hh.

bool JOSCPROB::JOscChannel::less ( const JOscChannel channel) const
inline

Less-than method.

Parameters
channelchannel
Returns
true this channel less than given channel; else false

Definition at line 174 of file JOscChannel.hh.

175  {
176  if (this->Cparity == channel.Cparity) {
177 
178  if (this->in == channel.in) {
179 
180  return this->out < channel.out;
181 
182  } else {
183 
184  return this->in < channel.in;
185  }
186 
187  } else {
188 
189  return this->Cparity < channel.Cparity;
190  }
191  }
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:285
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:287
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:286
static JEquationParameters& JOSCPROB::JOscChannel::getEquationParameters ( )
inlinestatic

Get equation parameters.

Returns
equation parameters

Definition at line 231 of file JOscChannel.hh.

232  {
233  static JEquationParameters equation("=", "\n\r;,", "./", "#");
234 
235  return equation;
236  }
Simple data structure to support I/O of equations (see class JLANG::JEquation).
static void JOSCPROB::JOscChannel::setEquationParameters ( const JEquationParameters equation)
inlinestatic

Set equation parameters.

Parameters
equationequation parameters

Definition at line 244 of file JOscChannel.hh.

245  {
246  getEquationParameters() = equation;
247  }
static JEquationParameters & getEquationParameters()
Get equation parameters.
Definition: JOscChannel.hh:231
JProperties JOSCPROB::JOscChannel::getProperties ( const JEquationParameters equation = JOscChannel::getEquationParameters())
inline

Get properties of this class.

Parameters
equationequation parameters

Definition at line 255 of file JOscChannel.hh.

256  {
257  return JOscChannelHelper(*this, equation);
258  }
JProperties JOSCPROB::JOscChannel::getProperties ( const JEquationParameters equation = JOscChannel::getEquationParameters()) const
inline

Get properties of this class.

Parameters
equationequation parameters

Definition at line 266 of file JOscChannel.hh.

267  {
268  return JOscChannelHelper(*this, equation);
269  }
void JOSCPROB::JOscChannel::setProperties ( const JProperties properties)
inline

Set properties of this class.

Parameters
propertiesproperties

Definition at line 277 of file JOscChannel.hh.

278  {
279  this->in = getFlavour (properties.getValue<int>("in"));
280  this->out = getFlavour (properties.getValue<int>("out"));
281  this->Cparity = getChargeParity(properties.getValue<int>("Cparity"));
282  }
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:285
JChargeParity_t getChargeParity(const int pdgType)
Auxiliary function for retrieving the charge-parity of a given PDG type.
Definition: JOscChannel.hh:83
const T & getValue(const std::string &key) const
Get value.
Definition: JProperties.hh:976
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:287
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:286
JFlavour_t getFlavour(const int pdgType)
Auxiliary function for retrieving the flavour corresponding to a given PDG identifier.
Definition: JOscChannel.hh:50

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const JOscChannel object 
)
friend

Write channel to output.

Parameters
outoutput stream
objectoscillation channel
Returns
output stream

Definition at line 201 of file JOscChannel.hh.

202  {
203  return out << object.getProperties();
204  }
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:286
std::istream& operator>> ( std::istream &  in,
JOscChannel object 
)
friend

Read channel from input.

Parameters
ininput stream
objectoscillation channel
Returns
input stream

Definition at line 214 of file JOscChannel.hh.

215  {
216  JProperties properties(object.getProperties());
217 
218  in >> properties;
219 
220  object.setProperties(properties);
221 
222  return in;
223  }
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:285
Utility class to parse parameter values.
Definition: JProperties.hh:497
JProperties getProperties(const JEquationParameters &equation=JOscChannel::getEquationParameters())
Get properties of this class.
Definition: JOscChannel.hh:255

Member Data Documentation

JFlavour_t JOSCPROB::JOscChannel::in

Incoming flavour.

Definition at line 285 of file JOscChannel.hh.

JFlavour_t JOSCPROB::JOscChannel::out

Outcoming flavour.

Definition at line 286 of file JOscChannel.hh.

JChargeParity_t JOSCPROB::JOscChannel::Cparity

Charge-parity.

Definition at line 287 of file JOscChannel.hh.


The documentation for this struct was generated from the following file: