1 // $Id: traitmodel_interface.h,v 1.5 2011/03/07 06:08:53 bobgian Exp $ 2 3 /* 4 * Copyright 2002 Peter Beerli, 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 12 #ifndef TRAITMODEL_INTERFACE_H 13 #define TRAITMODEL_INTERFACE_H 14 15 #include <string> 16 #include "setget.h" 17 #include "rangex.h" 18 19 class UIVars; 20 21 class uiTraitModelName : public GetString 22 { 23 public: 24 uiTraitModelName(); 25 virtual ~uiTraitModelName(); 26 virtual std::string Get(UIVars& vars, UIId id); 27 }; 28 29 class SetRangepair : public SetGetTemplate<rangepair> 30 { 31 public: 32 SetRangepair(const string& key); 33 virtual ~SetRangepair(); 34 virtual rangepair Get(UIVars& vars, UIId id); //throws 35 virtual rangepair GetValFromString(UIVars& vars, string val); 36 }; 37 38 class uiAddRangeForTraitModel : public SetRangepair 39 { 40 public: 41 uiAddRangeForTraitModel(); 42 virtual ~uiAddRangeForTraitModel(); 43 virtual void Set(UIVars& vars, UIId id, rangepair val); 44 }; 45 46 class uiRemoveRangeForTraitModel : public SetRangepair 47 { 48 public: 49 uiRemoveRangeForTraitModel(); 50 virtual ~uiRemoveRangeForTraitModel(); 51 virtual void Set(UIVars& vars, UIId id, rangepair val); 52 }; 53 54 class uiSetTraitModelRangeToPoint : public SetGetLong 55 { 56 public: 57 uiSetTraitModelRangeToPoint(); 58 virtual ~uiSetTraitModelRangeToPoint(); 59 virtual void Set(UIVars& vars, UIId id, long val); 60 virtual long Get(UIVars& vars, UIId id); //throws! 61 }; 62 63 class uiValidMovingLoci : public GetUIIdVec1d 64 { 65 public: 66 uiValidMovingLoci(); 67 virtual ~uiValidMovingLoci(); 68 virtual UIIdVec1d Get(UIVars& vars, UIId id); 69 }; 70 71 class uiTraitModelFloat : public SetGetNoval 72 { 73 public: 74 uiTraitModelFloat(); 75 virtual ~uiTraitModelFloat(); 76 virtual void Set(UIVars& vars, UIId id, noval val); 77 }; 78 79 class uiTraitModelJump : public SetGetNoval 80 { 81 public: 82 uiTraitModelJump(); 83 virtual ~uiTraitModelJump(); 84 virtual void Set(UIVars& vars, UIId id, noval val); 85 }; 86 87 class uiTraitModelData : public SetGetNoval 88 { 89 public: 90 uiTraitModelData(); 91 virtual ~uiTraitModelData(); 92 virtual void Set(UIVars& vars, UIId id, noval val); 93 }; 94 95 class uiTraitModelPartition : public SetGetNoval 96 { 97 public: 98 uiTraitModelPartition(); 99 virtual ~uiTraitModelPartition(); 100 virtual void Set(UIVars& vars, UIId id, noval val); 101 }; 102 103 #endif // DATAMODEL_INTERFACE_H 104 105 //____________________________________________________________________________________ 106