// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4ParticleChangeForMSC.icc,v 1.3 1999/12/15 14:53:55 gunter Exp $
// GEANT4 tag $Name: geant4-02-00 $
//
// 

inline 
 const G4ThreeVector* G4ParticleChangeForMSC::GetMomentumChange() const
{
  return &theMomentumDirectionChange;
}

inline 
 void G4ParticleChangeForMSC::SetMomentumChange(
						G4double Px, 
						G4double Py, 
						G4double Pz	)
{
  theMomentumDirectionChange.setX(Px);
  theMomentumDirectionChange.setY(Py);
  theMomentumDirectionChange.setZ(Pz);
}

inline 
 void G4ParticleChangeForMSC::SetMomentumChange(const G4ThreeVector& P)
{
  theMomentumDirectionChange = P;
}
inline 
 const G4ThreeVector* G4ParticleChangeForMSC::GetMomentumDirectionChange() const
{
  return &theMomentumDirectionChange;
}

inline 
 void G4ParticleChangeForMSC::SetMomentumDirectionChange(
						G4double Px, 
						G4double Py, 
						G4double Pz	)
{
  theMomentumDirectionChange.setX(Px);
  theMomentumDirectionChange.setY(Py);
  theMomentumDirectionChange.setZ(Pz);
}

inline 
 void G4ParticleChangeForMSC::SetMomentumDirectionChange(const G4ThreeVector& P)
{
  theMomentumDirectionChange = P;
}

inline 
 const G4ThreeVector* G4ParticleChangeForMSC::GetPositionChange() const
{
  return &thePositionChange;
}

inline 
 void G4ParticleChangeForMSC::SetPositionChange(const G4ThreeVector& finalPosition)
{
  thePositionChange= finalPosition;
}

inline 
 void G4ParticleChangeForMSC::SetPositionChange(G4double x,G4double y, G4double z)
{
  thePositionChange.setX(x);
  thePositionChange.setY(y);
  thePositionChange.setZ(z);
}

