diff options
| author | Thomas Richter <thomas.richter@iis.fraunhofer.de> | 2022-01-28 09:30:55 +0100 |
|---|---|---|
| committer | Thomas Richter <thomas.richter@iis.fraunhofer.de> | 2022-01-28 09:30:55 +0100 |
| commit | 7081231eba80044c0f97d4da5998d65681b94528 (patch) | |
| tree | 550d0ecc45d301663b93cfd34e6c958fa6c5b4c0 /src/UUIDInformation.cpp | |
| parent | d96e461dd7ba5f81ce40979a79bfad105be352de (diff) | |
| parent | 94e66805feeba15e6dd80ec290f04706a1c9dbdc (diff) | |
Merge branch 'master' of github.com:thorfdbg/asdcplib
Diffstat (limited to 'src/UUIDInformation.cpp')
| -rw-r--r-- | src/UUIDInformation.cpp | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/src/UUIDInformation.cpp b/src/UUIDInformation.cpp new file mode 100644 index 0000000..335e532 --- /dev/null +++ b/src/UUIDInformation.cpp @@ -0,0 +1,120 @@ +/* +Copyright (c) 2013-2013, John Hurst +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +/*! \file SyncEncoder.h + \version $Id$ + \brief Implementation of Atmos Sync UUID +*/ + +#include "UUIDInformation.h" +#include <stdlib.h> + +using namespace ASDCP; + +void ASDCP::UUIDSynthesize(LPUUIDINFORMATION pUUID) +{ + INT n; + + for(n = 0; n < 16; n ++){ + pUUID->abyUUIDBytes[n] = (BYTE)(rand() & 0xFF); + } + + pUUID->abyUUIDBytes[6] &= 0x0F; + pUUID->abyUUIDBytes[6] |= 0x40; + + pUUID->abyUUIDBytes[8] &= 0x0F; + pUUID->abyUUIDBytes[8] |= 0xA0; +} + +void ASDCP::UUIDPrint( FILE *pFilePtr, + LPUUIDINFORMATION pUUID) +{ + if(pFilePtr != NULL){ + INT n; + + for(n = 0; n < 16; n ++){ + fprintf(pFilePtr,"%02x",pUUID->abyUUIDBytes[n]); + } + } + else{ + INT n; + + for(n = 0; n < 16; n ++){ + fprintf(stdout,"%02x",pUUID->abyUUIDBytes[n]); + } + } +} + +void ASDCP::UUIDPrintFormated( FILE *pFilePtr, + LPUUIDINFORMATION pUUID) +{ + if(pFilePtr != NULL){ + INT n; + + for(n = 0; n < 4; n ++){ + fprintf(pFilePtr,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(pFilePtr,"-"); + for(n = 4; n < 6; n ++){ + fprintf(pFilePtr,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(pFilePtr,"-"); + for(n = 6; n < 8; n ++){ + fprintf(pFilePtr,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(pFilePtr,"-"); + for(n = 8; n < 10; n ++){ + fprintf(pFilePtr,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(pFilePtr,"-"); + for(n = 10; n < 16; n ++){ + fprintf(pFilePtr,"%02x",pUUID->abyUUIDBytes[n]); + } + } + else{ + INT n; + + for(n = 0; n < 4; n ++){ + fprintf(stdout,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(stdout,"-"); + for(n = 4; n < 6; n ++){ + fprintf(stdout,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(stdout,"-"); + for(n = 6; n < 8; n ++){ + fprintf(stdout,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(stdout,"-"); + for(n = 8; n < 10; n ++){ + fprintf(stdout,"%02x",pUUID->abyUUIDBytes[n]); + } + fprintf(stdout,"-"); + for(n = 10; n < 16; n ++){ + fprintf(stdout,"%02x",pUUID->abyUUIDBytes[n]); + } + } +} |
