Fix typo.
[asdcplib.git] / src / AS_DCP_internal.h
index 86ccc20cf4af1dcb6c81a6d0e86cf27e0f3fc952..ed9eec7e92dbd9d0878ba1bd60a942475a3beca1 100755 (executable)
@@ -90,6 +90,23 @@ namespace ASDCP
   Result_t EncryptFrameBuffer(const ASDCP::FrameBuffer&, ASDCP::FrameBuffer&, AESEncContext*);
   Result_t DecryptFrameBuffer(const ASDCP::FrameBuffer&, ASDCP::FrameBuffer&, AESDecContext*);
 
+  //
+ class KLReader : public ASDCP::KLVPacket
+    {
+      ASDCP_NO_COPY_CONSTRUCT(KLReader);
+      byte_t m_KeyBuf[SMPTE_UL_LENGTH*2];
+
+    public:
+      KLReader() {}
+      ~KLReader() {}
+
+      inline const byte_t* Key() { return m_KeyBuf; }
+      inline const ui64_t  Length() { return m_ValueLength; }
+      inline const ui64_t  KLLength() { return m_KLLength; }
+      
+      Result_t ReadKLFromFile(Kumu::FileReader& Reader);
+    };
+
   //
   class h__Reader
     {
@@ -117,7 +134,7 @@ namespace ASDCP
                             const byte_t* EssenceUL, AESDecContext* Ctx, HMACContext* HMAC);
 
       // reads from current position
-      Result_t ReadEKLVPacket(ui32_t FrameNum, ASDCP::FrameBuffer& FrameBuf,
+      Result_t ReadEKLVPacket(ui32_t FrameNum, ui32_t SequenceNum, ASDCP::FrameBuffer& FrameBuf,
                              const byte_t* EssenceUL, AESDecContext* Ctx, HMACContext* HMAC);
       void     Close();
     };
@@ -177,7 +194,7 @@ namespace ASDCP
       SourcePackage*     m_FilePackage;
 
       FileDescriptor*    m_EssenceDescriptor;
-      std::list<FileDescriptor*> m_EssenceSubDescriptorList;
+      std::list<InterchangeObject*> m_EssenceSubDescriptorList;
 
       ui32_t             m_FramesWritten;
       ui64_t             m_StreamOffset;