Jpp  17.1.1
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...
 
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:269
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:271
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:270

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 144 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 158 of file JOscChannel.hh.

159  {
160  if (this->Cparity == channel.Cparity) {
161 
162  if (this->in == channel.in) {
163 
164  return this->out < channel.out;
165 
166  } else {
167 
168  return this->in < channel.in;
169  }
170 
171  } else {
172 
173  return this->Cparity < channel.Cparity;
174  }
175  }
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:269
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:271
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:270
static JEquationParameters& JOSCPROB::JOscChannel::getEquationParameters ( )
inlinestatic

Get equation parameters.

Returns
equation parameters

Definition at line 215 of file JOscChannel.hh.

216  {
217  static JEquationParameters equation("=", "\n\r;,", "./", "#");
218 
219  return equation;
220  }
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 228 of file JOscChannel.hh.

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

Get properties of this class.

Parameters
equationequation parameters

Definition at line 239 of file JOscChannel.hh.

240  {
241  return JOscChannelHelper(*this, equation);
242  }
JProperties JOSCPROB::JOscChannel::getProperties ( const JEquationParameters equation = JOscChannel::getEquationParameters()) const
inline

Get properties of this class.

Parameters
equationequation parameters

Definition at line 250 of file JOscChannel.hh.

251  {
252  return JOscChannelHelper(*this, equation);
253  }
void JOSCPROB::JOscChannel::setProperties ( const JProperties properties)
inline

Set properties of this class.

Parameters
propertiesproperties

Definition at line 261 of file JOscChannel.hh.

262  {
263  this->in = getFlavour (properties.getValue<const int>("in"));
264  this->out = getFlavour (properties.getValue<const int>("out"));
265  this->Cparity = getChargeParity(properties.getValue<const int>("Cparity"));
266  }
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:269
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:974
JChargeParity_t Cparity
Charge-parity.
Definition: JOscChannel.hh:271
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:270
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 185 of file JOscChannel.hh.

186  {
187  return out << object.getProperties();
188  }
JFlavour_t out
Outcoming flavour.
Definition: JOscChannel.hh:270
std::istream& operator>> ( std::istream &  in,
JOscChannel object 
)
friend

Read channel from input.

Parameters
ininput stream
objectoscillation channel
Returns
input stream

Definition at line 198 of file JOscChannel.hh.

199  {
200  JProperties properties(object.getProperties());
201 
202  in >> properties;
203 
204  object.setProperties(properties);
205 
206  return in;
207  }
JFlavour_t in
Incoming flavour.
Definition: JOscChannel.hh:269
Utility class to parse parameter values.
Definition: JProperties.hh:496
JProperties getProperties(const JEquationParameters &equation=JOscChannel::getEquationParameters())
Get properties of this class.
Definition: JOscChannel.hh:239

Member Data Documentation

JFlavour_t JOSCPROB::JOscChannel::in

Incoming flavour.

Definition at line 269 of file JOscChannel.hh.

JFlavour_t JOSCPROB::JOscChannel::out

Outcoming flavour.

Definition at line 270 of file JOscChannel.hh.

JChargeParity_t JOSCPROB::JOscChannel::Cparity

Charge-parity.

Definition at line 271 of file JOscChannel.hh.


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