LArMCParticleFactory responsible for object creation.
More...
#include <LArMCParticle.h>
|
| LArMCParticleFactory (const unsigned int version=2) |
| Constructor. More...
|
|
Parameters * | NewParameters () const |
| Create new parameters instance on the heap (memory-management to be controlled by user) More...
|
|
pandora::StatusCode | Read (Parameters ¶meters, pandora::FileReader &fileReader) const |
| Read any additional (derived class only) object parameters from file using the specified file reader. More...
|
|
pandora::StatusCode | Write (const Object *const pObject, pandora::FileWriter &fileWriter) const |
| Persist any additional (derived class only) object parameters using the specified file writer. More...
|
|
pandora::StatusCode | Create (const Parameters ¶meters, const Object *&pObject) const |
| Create an object with the given parameters. More...
|
|
LArMCParticleFactory responsible for object creation.
Definition at line 135 of file LArMCParticle.h.
lar_content::LArMCParticleFactory::LArMCParticleFactory |
( |
const unsigned int |
version = 2 | ) |
|
|
inline |
Constructor.
- Parameters
-
Definition at line 223 of file LArMCParticle.h.
unsigned int m_version
The LArMCParticle version.
pandora::StatusCode lar_content::LArMCParticleFactory::Create |
( |
const Parameters & |
parameters, |
|
|
const Object *& |
pObject |
|
) |
| const |
|
inline |
Create an object with the given parameters.
- Parameters
-
parameters | the parameters to pass in constructor |
pObject | to receive the address of the object created |
Definition at line 236 of file LArMCParticle.h.
238 const LArMCParticleParameters &larMCParticleParameters(dynamic_cast<const LArMCParticleParameters &>(parameters));
239 pObject =
new LArMCParticle(larMCParticleParameters);
241 return pandora::STATUS_CODE_SUCCESS;
Create new parameters instance on the heap (memory-management to be controlled by user)
- Returns
- the address of the new parameters instance
Definition at line 229 of file LArMCParticle.h.
231 return (
new LArMCParticleParameters);
pandora::StatusCode lar_content::LArMCParticleFactory::Read |
( |
Parameters & |
parameters, |
|
|
pandora::FileReader & |
fileReader |
|
) |
| const |
|
inline |
Read any additional (derived class only) object parameters from file using the specified file reader.
- Parameters
-
parameters | the parameters to pass in constructor |
fileReader | the file reader, used to extract any additional parameters from file |
Definition at line 246 of file LArMCParticle.h.
252 if (pandora::BINARY == fileReader.GetFileType())
254 pandora::BinaryFileReader &binaryFileReader(dynamic_cast<pandora::BinaryFileReader &>(fileReader));
255 PANDORA_RETURN_RESULT_IF(pandora::STATUS_CODE_SUCCESS, !=, binaryFileReader.ReadVariable(nuanceCode));
258 PANDORA_RETURN_RESULT_IF(pandora::STATUS_CODE_SUCCESS, !=, binaryFileReader.ReadVariable(process));
260 else if (pandora::XML == fileReader.GetFileType())
262 pandora::XmlFileReader &xmlFileReader(dynamic_cast<pandora::XmlFileReader &>(fileReader));
263 PANDORA_RETURN_RESULT_IF(pandora::STATUS_CODE_SUCCESS, !=, xmlFileReader.ReadVariable(
"NuanceCode", nuanceCode));
266 PANDORA_RETURN_RESULT_IF(pandora::STATUS_CODE_SUCCESS, !=, xmlFileReader.ReadVariable(
"Process", process));
270 return pandora::STATUS_CODE_INVALID_PARAMETER;
273 LArMCParticleParameters &larMCParticleParameters(dynamic_cast<LArMCParticleParameters &>(parameters));
274 larMCParticleParameters.m_nuanceCode = nuanceCode;
275 larMCParticleParameters.m_process = process;
277 return pandora::STATUS_CODE_SUCCESS;
unsigned int m_version
The LArMCParticle version.
pandora::StatusCode lar_content::LArMCParticleFactory::Write |
( |
const Object *const |
pObject, |
|
|
pandora::FileWriter & |
fileWriter |
|
) |
| const |
|
inline |
Persist any additional (derived class only) object parameters using the specified file writer.
- Parameters
-
pObject | the address of the object to persist |
fileWriter | the file writer |
Definition at line 282 of file LArMCParticle.h.
285 const LArMCParticle *
const pLArMCParticle(dynamic_cast<const LArMCParticle *>(pObject));
288 return pandora::STATUS_CODE_INVALID_PARAMETER;
290 if (pandora::BINARY == fileWriter.GetFileType())
292 pandora::BinaryFileWriter &binaryFileWriter(dynamic_cast<pandora::BinaryFileWriter &>(fileWriter));
293 PANDORA_RETURN_RESULT_IF(pandora::STATUS_CODE_SUCCESS, !=, binaryFileWriter.WriteVariable(pLArMCParticle->GetNuanceCode()));
296 PANDORA_RETURN_RESULT_IF(
297 pandora::STATUS_CODE_SUCCESS, !=, binaryFileWriter.WriteVariable(static_cast<int>(pLArMCParticle->GetProcess())));
299 else if (pandora::XML == fileWriter.GetFileType())
301 pandora::XmlFileWriter &xmlFileWriter(dynamic_cast<pandora::XmlFileWriter &>(fileWriter));
302 PANDORA_RETURN_RESULT_IF(pandora::STATUS_CODE_SUCCESS, !=, xmlFileWriter.WriteVariable(
"NuanceCode", pLArMCParticle->GetNuanceCode()));
305 PANDORA_RETURN_RESULT_IF(
306 pandora::STATUS_CODE_SUCCESS, !=, xmlFileWriter.WriteVariable(
"Process", static_cast<int>(pLArMCParticle->GetProcess())));
310 return pandora::STATUS_CODE_INVALID_PARAMETER;
313 return pandora::STATUS_CODE_SUCCESS;
unsigned int m_version
The LArMCParticle version.
unsigned int lar_content::LArMCParticleFactory::m_version |
|
private |
The documentation for this class was generated from the following file: