summaryrefslogtreecommitdiff
path: root/src/h__Writer.cpp
diff options
context:
space:
mode:
authorjhurst <jhurst@cinecert.com>2008-05-20 22:40:09 +0000
committerjhurst <>2008-05-20 22:40:09 +0000
commit8bf17481fbd360094c04d25023986b38e57205bc (patch)
tree222c85334489434c4bb2177212956c205d2c2a93 /src/h__Writer.cpp
parent71e5dbde64e9186cfd5de462553485612218d6fc (diff)
version reorg, precedence patch for stat check
Diffstat (limited to 'src/h__Writer.cpp')
-rwxr-xr-xsrc/h__Writer.cpp34
1 files changed, 31 insertions, 3 deletions
diff --git a/src/h__Writer.cpp b/src/h__Writer.cpp
index 4517966..fb66b68 100755
--- a/src/h__Writer.cpp
+++ b/src/h__Writer.cpp
@@ -41,6 +41,31 @@ using namespace ASDCP::MXF;
#endif
+static std::vector<int>
+version_split(const char* str)
+{
+ std::vector<int> result;
+
+ const char* pstr = str;
+ const char* r = strchr(pstr, '.');
+
+ while ( r != 0 )
+ {
+ assert(r >= pstr);
+ if ( r > pstr )
+ result.push_back(atoi(pstr));
+
+ pstr = r + 1;
+ r = strchr(pstr, '.');
+ }
+
+ if( strlen(pstr) > 0 )
+ result.push_back(atoi(pstr));
+
+ assert(result.size() == 3);
+ return result;
+}
+
//
ASDCP::h__Writer::h__Writer() :
@@ -124,9 +149,12 @@ ASDCP::h__Writer::InitHeader()
Ident->VersionString = m_Info.ProductVersion.c_str();
Ident->ProductUID.Set(m_Info.ProductUUID);
Ident->Platform = ASDCP_PLATFORM;
- Ident->ToolkitVersion.Major = VERSION_MAJOR;
- Ident->ToolkitVersion.Minor = VERSION_APIMINOR;
- Ident->ToolkitVersion.Patch = VERSION_IMPMINOR;
+
+ std::vector<int> version = version_split(Version());
+
+ Ident->ToolkitVersion.Major = version[0];
+ Ident->ToolkitVersion.Minor = version[1];
+ Ident->ToolkitVersion.Patch = version[2];
Ident->ToolkitVersion.Build = ASDCP_BUILD_NUMBER;
Ident->ToolkitVersion.Release = VersionType::RL_RELEASE;
}