00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 #include "stdafx.h"
00036 #include ".\cliptag.h"
00037
00038 namespace illiminable {
00039 namespace libCMMLTagsDotNET {
00040
00041 ClipTag::ClipTag(void)
00042 {
00043 mBaseClass = new C_ClipTag;
00044 mDeleteBase = true;
00045 }
00046
00047 ClipTag::ClipTag(C_ClipTag* inTag, bool inDeleteBase) {
00048 mBaseClass = inTag;
00049 mDeleteBase = inDeleteBase;
00050 }
00051
00052 ClipTag* ClipTag::clone()
00053 {
00054 return new ClipTag(getMe()->clone(), true);
00055 }
00056 ClipTag::~ClipTag(void)
00057 {
00058 if (mDeleteBase) {
00059 delete mBaseClass;
00060 }
00061 mBaseClass = NULL;
00062 }
00063
00064 C_ClipTag* ClipTag::getMe() {
00065 return (C_ClipTag*)mBaseClass;
00066 }
00067
00068
00069 String* ClipTag::track() {
00070 return Wrappers::WStrToNetStr( getMe()->track().c_str() );
00071 }
00072 MetaTagList* ClipTag::metaList() {
00073 return new MetaTagList(getMe()->metaList(), false);
00074 }
00075 AnchorTag* ClipTag::anchor() {
00076 C_AnchorTag* locAnchor = getMe()->anchor();
00077 if (locAnchor != NULL) {
00078 return new AnchorTag(locAnchor,false);
00079 } else {
00080 return NULL;
00081 }
00082 }
00083 ImageTag* ClipTag::image() {
00084 C_ImageTag* locImage = getMe()->image();
00085 if (locImage != NULL) {
00086 return new ImageTag(locImage, false);
00087 } else {
00088 return NULL;
00089 }
00090 }
00091 DescTag* ClipTag::desc() {
00092 C_DescTag* locDesc = getMe()->desc();
00093 if (locDesc != NULL) {
00094 return new DescTag(locDesc, false);
00095 } else {
00096 return NULL;
00097 }
00098 }
00099
00100 String* ClipTag::start() {
00101 return Wrappers::WStrToNetStr( getMe()->start().c_str() );
00102
00103 }
00104 String* ClipTag::end() {
00105 return Wrappers::WStrToNetStr( getMe()->end().c_str() );
00106
00107 }
00108
00109
00110
00111 void ClipTag::setTrack(String* inTrack) {
00112 wchar_t* tc = Wrappers::netStrToWStr( inTrack );
00113 wstring locStr = tc;
00114 getMe()->setTrack( locStr );
00115 Wrappers::releaseWStr( tc );
00116 }
00117 void ClipTag::setAnchor(AnchorTag* inAnchor) {
00118 if (inAnchor != NULL) {
00119 getMe()->setAnchor(inAnchor->getMe()->clone());
00120 } else {
00121 getMe()->setAnchor(NULL);
00122 }
00123 }
00124 void ClipTag::setImage(ImageTag* inImage) {
00125 if (inImage != NULL) {
00126 getMe()->setImage(inImage->getMe()->clone());
00127 } else {
00128 getMe()->setImage(NULL);
00129 }
00130 }
00131 void ClipTag::setDesc(DescTag* inDesc) {
00132 if (inDesc != NULL) {
00133 getMe()->setDesc(inDesc->getMe()->clone());
00134 } else {
00135 getMe()->setDesc(NULL);
00136 }
00137 }
00138
00139 void ClipTag::setStart(String* inStart) {
00140 wchar_t* tc = Wrappers::netStrToWStr( inStart );
00141 wstring locStr = tc;
00142 getMe()->setStart( locStr );
00143 Wrappers::releaseWStr( tc );
00144 }
00145 void ClipTag::setEnd(String* inEnd) {
00146 wchar_t* tc = Wrappers::netStrToWStr( inEnd );
00147 wstring locStr = tc;
00148 getMe()->setEnd( locStr );
00149 Wrappers::releaseWStr( tc );
00150 }
00151
00152
00153
00154 String* ClipTag::toString() {
00155 return Wrappers::WStrToNetStr( getMe()->toString().c_str() );
00156
00157 }
00158
00159 }
00160 }