1 // $Id: gc_trait_allele.cpp,v 1.4 2011/03/08 19:22:00 bobgian Exp $ 2 3 /* 4 Copyright 2002 Mary Kuhner, Jon Yamato, and Joseph Felsenstein 5 6 This software is distributed free of charge for non-commercial use 7 and is copyrighted. Of course, we do not guarantee that the software 8 works, and are not responsible for any damage you may cause or have. 9 */ 10 11 #include <cassert> 12 13 #include "gc_default.h" 14 #include "gc_trait_allele.h" 15 #include "gc_trait_err.h" 16 17 //------------------------------------------------------------------------------------ 18 gcTraitAllele()19gcTraitAllele::gcTraitAllele() 20 : 21 m_hasTraitId(false), 22 m_traitId(gcdefault::badIndex) 23 { 24 } 25 ~gcTraitAllele()26gcTraitAllele::~gcTraitAllele() 27 { 28 } 29 30 bool HasTraitId() const31gcTraitAllele::HasTraitId() const 32 { 33 return m_hasTraitId; 34 } 35 36 size_t GetTraitId() const37gcTraitAllele::GetTraitId() const 38 { 39 assert(HasTraitId()); 40 return m_traitId; 41 } 42 43 void SetTraitId(size_t traitId)44gcTraitAllele::SetTraitId(size_t traitId) 45 { 46 m_hasTraitId = true; 47 m_traitId = traitId; 48 } 49 50 void UnsetTraitId()51gcTraitAllele::UnsetTraitId() 52 { 53 m_hasTraitId = false; 54 } 55 56 void SetName(wxString alleleName)57gcTraitAllele::SetName(wxString alleleName) 58 { 59 if(alleleName.Find(' ') != wxNOT_FOUND) 60 { 61 throw gc_trait_allele_name_spaces(alleleName); 62 } 63 GCQuantum::SetName(alleleName); 64 } 65 66 //____________________________________________________________________________________ 67