| Line |  | 
|---|
| 1 | // ArchTOIPipe           (C)     CEA/DAPNIA/SPP IN2P3/LAL | 
|---|
| 2 | //                               Eric Aubourg | 
|---|
| 3 | //                               Christophe Magneville | 
|---|
| 4 | //                               Reza Ansari | 
|---|
| 5 | // $Id: ring.cc,v 1.1 2003-05-19 23:31:29 aubourg Exp $ | 
|---|
| 6 |  | 
|---|
| 7 | #include "ring.h" | 
|---|
| 8 | #include "ringphase.h" | 
|---|
| 9 |  | 
|---|
| 10 | Ring::Ring(int ns, double th, double p, double ap, RingPhase* rp) | 
|---|
| 11 | : n(ns), theta(th), phi(p), aperture(ap), ringPhase(rp), ownRingPhase(false), data(new double[ns]) | 
|---|
| 12 | { | 
|---|
| 13 | if (ringPhase == NULL) { | 
|---|
| 14 | ringPhase = new SimpleRingPhase(n); | 
|---|
| 15 | ownRingPhase = true; | 
|---|
| 16 | } | 
|---|
| 17 | } | 
|---|
| 18 |  | 
|---|
| 19 | Ring::~Ring() { | 
|---|
| 20 | if (ownRingPhase) delete ringPhase; | 
|---|
| 21 | delete[] data; | 
|---|
| 22 | } | 
|---|
| 23 |  | 
|---|
| 24 | void Ring::setData(double* d) { | 
|---|
| 25 | memcpy(data, d, n*sizeof(double)); | 
|---|
| 26 | } | 
|---|
| 27 |  | 
|---|
| 28 | void Ring::setData(int i, double d) { | 
|---|
| 29 | data[i] = d; | 
|---|
| 30 | } | 
|---|
| 31 |  | 
|---|
| 32 | const double* Ring::getData() const { | 
|---|
| 33 | return data; | 
|---|
| 34 | } | 
|---|
| 35 |  | 
|---|
| 36 | double Ring::getData(int i) const { | 
|---|
| 37 | return data[i]; | 
|---|
| 38 | } | 
|---|
| 39 |  | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.