示例#1
0
        /// <summary>
        /// Add a generic data chunk, providing a name for easier access
        /// Additional functonality for adding/subtracting value
        /// </summary>
        /// <param name="dataFormat">the expected format of the data</param>
        /// <param name="description">a brief written description of what the data is</param>
        /// <param name="offset">the offset to begin processing at</param>
        /// <param name="dataLength">the length of the data in bytes</param>
        /// <param name="addToValue">the byte value to add (or subtract) from each byte read</param>
        /// <param name="dataChunkName">name of the data chunk for easy access</param>
        public DataChunk AddDataChunk(DataChunk.DataFormatType dataFormat, string description, int offset, int dataLength, byte addToValue, T dataChunkName)
        {
            // create the data chunk
            DataChunk chunk = new DataChunk(dataFormat, description, FileByteList, offset, dataLength, addToValue);

            // all data chunks get added to the chunk list
            AddDataChunk(chunk);

            // if the datachunk is not classified as unused then add it to the chunk map for quick reference
            if (!dataChunkName.Equals(unusedValue))
            {
                chunkMap.Add(dataChunkName, chunk);
            }
            return(chunk);
        }
示例#2
0
 /// <summary>
 /// Extracts a data chunk from the raw bytes
 /// </summary>
 /// <param name="dataType">format is the data in</param>
 /// <param name="description">a brief description of the data</param>
 /// <param name="offset">which offset to begin reading at</param>
 /// <param name="length">the number of bytes to read</param>
 /// <returns></returns>
 public DataChunk GetDataChunk(DataChunk.DataFormatType dataType, string description, int offset, int length)
 {
     return(new DataChunk(dataType, description, dataChunks.FileByteList, offset, length));
 }
示例#3
0
 /// <summary>
 /// Add a new generic data chunk (un-named)
 /// </summary>
 /// <param name="dataFormat">the expected format of the data</param>
 /// <param name="description">a brief written description of what the data is</param>
 /// <param name="offset">the offset to begin processing at</param>
 /// <param name="dataLength">the length of the data in bytes</param>
 public DataChunk AddDataChunk(DataChunk.DataFormatType dataFormat, string description, int offset, int dataLength)
 {
     return(AddDataChunk(dataFormat, description, offset, dataLength, 0x00, unusedValue));
 }
示例#4
0
 /// <summary>
 /// Add a new generic data chunk (un-named)
 /// Additional functionality for adding/subtracting value
 /// </summary>
 /// <param name="dataFormat">the expected format of the data</param>
 /// <param name="description">a brief written description of what the data is</param>
 /// <param name="offset">the offset to begin processing at</param>
 /// <param name="dataLength">the length of the data in bytes</param>
 /// <param name="addToValue">the byte value to add (or subtract) from each byte read</param>
 public DataChunk AddDataChunk(DataChunk.DataFormatType dataFormat, string description, int offset, int dataLength, byte addToValue)
 {
     return(AddDataChunk(dataFormat, description, offset, dataLength, addToValue, _unusedValue));
 }