public void Clear() { lock (AnnotationsList) AnnotationsList.Clear(); lock (BlocksList) BlocksList.Clear(); }
void Awake() { mainMenu = GameObject.FindGameObjectWithTag("MainMenu").GetComponent <MainMenu>(); serialization = GetComponent <BlocksSerialization>(); blockList = GameObject.FindGameObjectWithTag("BlockList").GetComponent <BlocksList>(); loadTiles(); }
public override List <FlacTagFrame> TagFramesFactory(byte[] rawFramesBytes) { List <FlacTagFrame> tempTagFrames = new List <FlacTagFrame>(); if (BlocksList.Any(b => b.BlockHeader.Type == FlacTagBlockHeader.BlockType.VORBIS_COMMEN)) { var metaBlock = BlocksList.Find(b => b.BlockHeader.Type == FlacTagBlockHeader.BlockType.VORBIS_COMMEN); var metaString = metaBlock.Content; var metaStrArray = metaString.Split(new string[] { "\0\0\0", "\0\0" }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < metaStrArray.Length; i++) { if (metaStrArray[i].Length > 1) { metaStrArray[i] = metaStrArray[i].Remove(metaStrArray[i].Length - 1); } if (!metaStrArray[i].Contains("=")) { continue; } tempTagFrames.Add(new FlacTagFrame(metaStrArray[i])); } } return(tempTagFrames); }
public void InitPictures() { var rawPicList = BlocksList.FindAll(b => b.BlockHeader.Type == FlacTagBlockHeader.BlockType.PICTURE); foreach (var rawPictureBlock in rawPicList) { PictureList.Add(new FlacTagPicture(rawPictureBlock.ToBytes())); } }
void Awake() { game = GameObject.FindGameObjectWithTag("Game"); menu = GameObject.FindGameObjectWithTag("MainMenu"); settings = GameObject.FindGameObjectWithTag("Settings"); endGame = GameObject.FindGameObjectWithTag("Game_end"); blockCreator = GameObject.FindGameObjectWithTag("BlockArchitect").GetComponent <BlocksArchitect>(); blockList = GameObject.FindGameObjectWithTag("BlockList").GetComponent <BlocksList>(); }
public void InitBlocks(BinaryReader br) { for (;;) { FlacTagBlockHeader blockHeader = new FlacTagBlockHeader(br.ReadBytes(4)); byte[] blockContentBytes = br.ReadBytes(blockHeader.BlockSize); BlocksList.Add(new FlacBlock(blockContentBytes, blockHeader)); if (blockHeader.IsLastMetaData) { break; } } }
/// <summary> /// /// </summary> /// <param name="blocks"></param> /// <returns></returns> public bool SpawnBlock(Defs.Blocks[,] blocks) { int posY = 0, posX = 2; if (!IsPlaceBlocks(posX, posY, blocks)) { return(false); } for (int y = 0; y < blocks.GetLength(0); ++y) { for (int x = 0, max = blocks.GetLength(1); x < max; ++x) { FieldBlocks[y + posY, x + posX] = blocks[y, x]; } } ActiveBlocks = new BlocksObject(blocks, 2, 0); BlocksList.Add(blocks); return(true); }
public bool AddBlock(int blockNr, double onset) { Debug.Assert(blockNr >= 0, TALConsts.InvalidBlockIndex); Debug.Assert(double.IsNaN(onset) || (onset >= 0), TALConsts.InvalidBlockOnset); _lastError = TalError.None; DoSetBlocksListCapacity(blockNr); while (blockNr >= BlocksList.Count) { BlocksList.Add(null); } if (BlocksList[blockNr] != null) { Block(blockNr).DataRecOnset = onset; } else { EdfPlusAnnotationDataBlock newBlock = new EdfPlusAnnotationDataBlock(this, blockNr, onset) { Modified = true }; BlocksList[blockNr] = newBlock; } return(Block(blockNr) != null); }
public override void Execute(JobDataMap data, IServiceProvider serviceProvider) { var config = serviceProvider.GetService <IConfiguration>(); var dataExtractor = serviceProvider.GetService <IDataExtractorService>(); var logger = serviceProvider.GetService <ILogger <NodeJob> >(); var mapper = serviceProvider.GetService <IMapper>(); var rpcConfig = GetNodeRpcConfig(config); var cache = serviceProvider.GetService <IMemoryCache>(); var difficultyResult = dataExtractor.RpcCall(rpcConfig, "getdifficulty"); ProcessResult(logger, difficultyResult, diff => { var difficulty = double.Parse(diff, CultureInfo.InvariantCulture); cache.Set(Constants.DifficultyKey, difficulty); }); var networkRateResult = dataExtractor.RpcCall(rpcConfig, "getnetworkhashps"); ProcessResult(logger, networkRateResult, rate => { var networkRate = double.Parse(rate, CultureInfo.InvariantCulture); var networkRateInMh = DenominationHelper.ToMSol(networkRate, Denomination.Sol); cache.Set(Constants.HashRateKey, networkRateInMh); }); var blockCount = config.GetValue <int>("Node:StoreLastBlocks"); var chainTipResult = dataExtractor.RpcCall(rpcConfig, "getbestblockhash"); ProcessResult(logger, chainTipResult, blockHash => { var hasStoredBlocks = cache.TryGetValue(Constants.BlocksInfoKey, out BlocksList storedBlocks); if (!hasStoredBlocks) { storedBlocks = new BlocksList(); } if (storedBlocks.Contains(blockHash)) { // At chain tip return; } ProcessResult(logger, GetBlockInfo(rpcConfig, dataExtractor, mapper, blockHash), (block) => { storedBlocks.Add(block); Func <bool> expr; if (hasStoredBlocks) { expr = () => !storedBlocks.Contains(block.PreviousBlockHash); } else { expr = () => storedBlocks.Count < blockCount; } while (expr()) { ProcessResult(logger, GetBlockInfo(rpcConfig, dataExtractor, mapper, block.PreviousBlockHash), prevBlock => { // We add from tip to genesis TimeSinceLast not present before here storedBlocks.SetTimeSinceLast(block.Hash, block.Time - prevBlock.Time); block = prevBlock; storedBlocks.Add(prevBlock); } ); } }); if (storedBlocks.Count > blockCount) { storedBlocks.RemoveOver(blockCount); } cache.Set(Constants.BlocksInfoKey, storedBlocks); }); }