public Int32 CompareTo(IconImage other) { if (ParentIcon.Type == IconType.Icon) { // sort by color depth first, then size (smallest first) Int32 color = BitCount.CompareTo(other.BitCount); if (color != 0) { return(color); } return(-Size.Width.CompareTo(other.Size.Width)); } else { // sort by size first (largest first), then color depth Int32 size = Size.Width.CompareTo(other.Size.Width); if (size != 0) { return(size); } return(BitCount.CompareTo(other.BitCount));; } }
public bool Write(DAIIO io, bool skiplength = false) { try { if (!skiplength) { io.WriteBits(Length, LengthBits); } io.WriteInt32(Id); io.WriteInt32(DestroyedPartsCount); io.WriteBoolean(KeepInfoOnUnregister); if (PartIds == null) { PartIds = new int[PartIdsCount]; } io.WriteInt16((short)PartIds.Length); foreach (int t in PartIds) { io.WriteInt32(t); } io.WriteInt32(BitCount); if (BitArray == null) { BitArray = new byte[BitCount.NumberOfSetBits() << 2]; } io.Write(BitArray, 0, BitArray.Length); return(true); } catch (Exception) { return(false); } }
protected override IntPtr CreatePixmapHandle(int width, int height, BitCount bitsperpixel) { //Orientation = orient; PixmapOrientation orient = PixmapOrientation.BottomToTop; // Create a bitmap compatible with the screen fBitmapInfo = new BITMAPINFO(); fBitmapInfo.Init(); m_BytesPerRow = GDIPixmap.GetAlignedRowStride(Width, bitsperpixel, Alignment); fBitmapInfo.bmiHeader.biWidth = Width; if (PixmapOrientation.TopToBottom == orient) fBitmapInfo.bmiHeader.biHeight = -Height; // Indicates a top-to-bottom orientation else fBitmapInfo.bmiHeader.biHeight = Height; fBitmapInfo.bmiHeader.biPlanes = 1; fBitmapInfo.bmiHeader.biBitCount = (ushort)bitsperpixel; fBitmapInfo.bmiHeader.biSizeImage = (uint)(m_BytesPerRow * Height); fBitmapInfo.bmiHeader.biClrImportant = 0; fBitmapInfo.bmiHeader.biClrUsed = 0; fBitmapInfo.bmiHeader.biCompression = GDI32.BI_RGB; //fBitmapInfo.bmiColors = IntPtr.Zero; m_pixelPointer = IntPtr.Zero; IntPtr bitmapHandle = GDI32.CreateDIBSection(GDIContext.CreateForDefaultDisplay(), ref fBitmapInfo, GDI32.DIB_RGB_COLORS, ref m_pixelPointer, IntPtr.Zero, 0); return bitmapHandle; }
public void CountBits() { Assert.AreEqual(0, BitCount.CountBits(0)); Assert.AreEqual(1, BitCount.CountBits(4)); Assert.AreEqual(3, BitCount.CountBits(7)); Assert.AreEqual(2, BitCount.CountBits(9)); Assert.AreEqual(2, BitCount.CountBits(10)); }
static void Main(string[] args) { Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); Console.WriteLine(BitCount.CountOnes(1, 1000000000)); stopWatch.Stop(); Console.WriteLine($"Time Taken: {stopWatch.Elapsed}"); }
public Boolean Equals(IconImage other) { if (other == null) { return(false); } return(Size.Equals(other.Size) && BitCount.Equals(other.BitCount) && ColorCount.Equals(other.ColorCount)); }
public static Call Call(MethodSignature mti, IList <Expression> parameters, bool isExternal = false) { BitCount pos = default; foreach (var parameter in parameters) { mti.Parameters.MeetAt(pos, parameter.Type); pos += (BitCount)16; } // start analyzing child //if (mti.Method != null) // mti.ProcessDataFlow(mti.Site.TopSite.ToString()); return(new(mti, parameters, isExternal)); }
public override int GetHashCode() { unchecked // Overflow is fine, just wrap { int hash = 17; // Suitable nullity checks etc, of course :) hash = hash * 23 + Width.GetHashCode(); hash = hash * 23 + Height.GetHashCode(); hash = hash * 23 + ColorCount.GetHashCode(); hash = hash * 23 + ReservedByte.GetHashCode(); hash = hash * 23 + Planes.GetHashCode(); hash = hash * 23 + BitCount.GetHashCode(); hash = hash * 23 + SizeInBytes.GetHashCode(); hash = hash * 23 + FileOffset.GetHashCode(); hash = hash * 23 + (SourceFileName == null ? 1 : SourceFileName.GetHashCode()); hash = hash * 23 + SourceIndex.GetHashCode(); return(hash); } }
public CallBackData Read(DAIIO io) { xLength = io.ReadBit2(LengthBits); Id = io.ReadInt32(); DestroyedPartsCount = io.ReadInt32(); KeepInfoOnUnregister = io.ReadBoolean(); PartIdsCount = io.ReadInt16(); PartIds = new int[PartIdsCount]; for (int i = 0; i < PartIdsCount; i++) { PartIds[i] = io.ReadInt32(); } BitCount = io.ReadInt32(); int x = BitCount.NumberOfSetBits() << 2; BitArray = new byte[x]; io.Read(BitArray, 0, x); return(this); }
protected GDIPixmap(int width, int height, BitCount bitsperpixel) : base(IntPtr.Zero, true) { if (bitsperpixel == BitCount.Bits24) RectInfo = new PixelRectangleInfo(width, height, PixelLayout.Bgr, PixelComponentType.Byte, Alignment); else RectInfo = new PixelRectangleInfo(width, height, PixelLayout.Bgra, PixelComponentType.Byte, Alignment); this.fBitCount = bitsperpixel; GDIContext context = GDIContext.CreateForDefaultDisplay(); IntPtr theHandle = CreatePixmapHandle(Width, Height, bitsperpixel); SetHandle(theHandle); fMemoryContext = GDIContext.CreateForMemory(); m_OldBMHandle = fMemoryContext.SelectObject(this); }
public int CompareTo(IconImage other) { if (ParentIcon.Type == IconType.Icon) { // sort by color depth first, then size (smallest first) var color = BitCount.CompareTo(other.BitCount); if (color != 0) { return(color); } return(-Size.Width.CompareTo(other.Size.Width)); } // sort by size first (largest first), then color depth var size = Size.Width.CompareTo(other.Size.Width); return(size != 0 ? size : BitCount.CompareTo(other.BitCount)); }
public void Read(BinaryReader reader, bool readHeaderSize) { if (readHeaderSize) { this.HeaderSize = reader.ReadUInt32(); //NOTE: Documentation does not clearly defined whether the object size is fixed (12 bytes) or variable //if (this.HeaderSize != 12) //{ // throw new WmfException("HeaderSize field in BitmapCoreHeader Object must be 12!"); //} } this.Width = reader.ReadUInt16(); this.Height = reader.ReadUInt16(); ushort planes = reader.ReadUInt16(); if (planes != this.Planes) { throw new WmfException("Planes field in BitmapCoreHeader Object must be 0x0001!"); } this.BitCount = (BitCount)reader.ReadUInt16(); }
protected abstract IntPtr CreatePixmapHandle(int width, int height, BitCount bitsperpixel);
public Size(BitCount bits) : base(bits, bits) { }
public virtual int PixelBlt(Rectangle srcRect, Rectangle dstRect, IntPtr pixelPtr, BitCount bitsPerPixel) { BITMAPINFO bmInfo = new BITMAPINFO(); bmInfo.Init(); bmInfo.bmiHeader.biWidth = srcRect.Width; bmInfo.bmiHeader.biHeight = srcRect.Height; bmInfo.bmiHeader.biPlanes = 1; bmInfo.bmiHeader.biBitCount = (ushort)bitsPerPixel; bmInfo.bmiHeader.biClrImportant = 0; bmInfo.bmiHeader.biClrUsed = 0; bmInfo.bmiHeader.biCompression = GDI32.BI_RGB; //bmInfo.bmiColors = IntPtr.Zero; int rowsWritten = GDI32.StretchDIBits(this, dstRect.X, dstRect.Y, dstRect.Width, dstRect.Height, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, pixelPtr, ref bmInfo, GDI32.DIB_RGB_COLORS, (uint)TernaryRasterOps.SRCCOPY); return rowsWritten; }
public MySqlFunctionManager(bool allowFuncDefChange) { this.allowFuncDefChange = allowFuncDefChange; parsingStrateg["CAST"] = FunctionParsingStrategy.Cast; parsingStrateg["POSITION"] = FunctionParsingStrategy.Position; parsingStrateg["SUBSTR"] = FunctionParsingStrategy.Substring; parsingStrateg["SUBSTRING"] = FunctionParsingStrategy.Substring; parsingStrateg["TRIM"] = FunctionParsingStrategy.Trim; parsingStrateg["AVG"] = FunctionParsingStrategy.Avg; parsingStrateg["COUNT"] = FunctionParsingStrategy.Count; parsingStrateg["GROUP_CONCAT"] = FunctionParsingStrategy.GroupConcat; parsingStrateg["MAX"] = FunctionParsingStrategy.Max; parsingStrateg["MIN"] = FunctionParsingStrategy.Min; parsingStrateg["SUM"] = FunctionParsingStrategy.Sum; parsingStrateg["ROW"] = FunctionParsingStrategy.Row; parsingStrateg["CHAR"] = FunctionParsingStrategy.Char; parsingStrateg["CONVERT"] = FunctionParsingStrategy.Convert; parsingStrateg["EXTRACT"] = FunctionParsingStrategy.Extract; parsingStrateg["TIMESTAMPADD"] = FunctionParsingStrategy.Timestampadd; parsingStrateg["TIMESTAMPDIFF"] = FunctionParsingStrategy.Timestampdiff; parsingStrateg["GET_FORMAT"] = FunctionParsingStrategy.GetFormat; functionPrototype["ABS"] = new Abs(null); functionPrototype["ACOS"] = new Acos(null); functionPrototype["ADDDATE"] = new Adddate(null); functionPrototype["ADDTIME"] = new Addtime(null); functionPrototype["AES_DECRYPT"] = new AesDecrypt(null); functionPrototype["AES_ENCRYPT"] = new AesEncrypt(null); functionPrototype["ANALYSE"] = new Analyse(null); functionPrototype["ASCII"] = new Ascii(null); functionPrototype["ASIN"] = new Asin(null); functionPrototype["ATAN2"] = new Atan2(null); functionPrototype["ATAN"] = new Atan(null); functionPrototype["BENCHMARK"] = new Benchmark(null); functionPrototype["BIN"] = new Bin(null); functionPrototype["BIT_AND"] = new BitAnd(null); functionPrototype["BIT_COUNT"] = new BitCount(null); functionPrototype["BIT_LENGTH"] = new BitLength(null); functionPrototype["BIT_OR"] = new BitOR(null); functionPrototype["BIT_XOR"] = new BitXor(null); functionPrototype["CEIL"] = new Ceiling(null); functionPrototype["CEILING"] = new Ceiling(null); functionPrototype["CHAR_LENGTH"] = new CharLength(null); functionPrototype["CHARACTER_LENGTH"] = new CharLength(null); functionPrototype["CHARSET"] = new Charset(null); functionPrototype["COALESCE"] = new Coalesce(null); functionPrototype["COERCIBILITY"] = new Coercibility(null); functionPrototype["COLLATION"] = new Collation(null); functionPrototype["COMPRESS"] = new Compress(null); functionPrototype["CONCAT_WS"] = new ConcatWs(null); functionPrototype["CONCAT"] = new Concat(null); functionPrototype["CONNECTION_ID"] = new ConnectionId(null); functionPrototype["CONV"] = new Conv(null); functionPrototype["CONVERT_TZ"] = new ConvertTz(null); functionPrototype["COS"] = new Cos(null); functionPrototype["COT"] = new Cot(null); functionPrototype["CRC32"] = new Crc32(null); functionPrototype["CURDATE"] = new Curdate(); functionPrototype["CURRENT_DATE"] = new Curdate(); functionPrototype["CURRENT_TIME"] = new Curtime(); functionPrototype["CURTIME"] = new Curtime(); functionPrototype["CURRENT_TIMESTAMP"] = new Now(); functionPrototype["CURRENT_USER"] = new CurrentUser(); functionPrototype["CURTIME"] = new Curtime(); functionPrototype["DATABASE"] = new Database(null); functionPrototype["DATE_ADD"] = new DateAdd(null); functionPrototype["DATE_FORMAT"] = new DateFormat(null); functionPrototype["DATE_SUB"] = new DateSub(null); functionPrototype["DATE"] = new Date(null); functionPrototype["DATEDIFF"] = new Datediff(null); functionPrototype["DAY"] = new Dayofmonth(null); functionPrototype["DAYOFMONTH"] = new Dayofmonth(null); functionPrototype["DAYNAME"] = new Dayname(null); functionPrototype["DAYOFWEEK"] = new Dayofweek(null); functionPrototype["DAYOFYEAR"] = new Dayofyear(null); functionPrototype["DECODE"] = new Decode(null); functionPrototype["DEFAULT"] = new Default(null); functionPrototype["DEGREES"] = new Degrees(null); functionPrototype["DES_DECRYPT"] = new DesDecrypt(null); functionPrototype["DES_ENCRYPT"] = new DesEncrypt(null); functionPrototype["ELT"] = new Elt(null); functionPrototype["ENCODE"] = new Encode(null); functionPrototype["ENCRYPT"] = new Encrypt(null); functionPrototype["EXP"] = new Exp(null); functionPrototype["EXPORT_SET"] = new ExportSet(null); // functionPrototype.put("EXTRACT", new Extract(null)); functionPrototype["EXTRACTVALUE"] = new ExtractValue(null); functionPrototype["FIELD"] = new Field(null); functionPrototype["FIND_IN_SET"] = new FindInSet(null); functionPrototype["FLOOR"] = new Floor(null); functionPrototype["FORMAT"] = new Format(null); functionPrototype["FOUND_ROWS"] = new FoundRows(null); functionPrototype["FROM_DAYS"] = new FromDays(null); functionPrototype["FROM_UNIXTIME"] = new FromUnixtime(null); // functionPrototype.put("GET_FORMAT", new GetFormat(null)); functionPrototype["GET_LOCK"] = new GetLock(null); functionPrototype["GREATEST"] = new Greatest(null); functionPrototype["HEX"] = new Hex(null); functionPrototype["HOUR"] = new Hour(null); functionPrototype["IF"] = new IF(null); functionPrototype["IFNULL"] = new IFNull(null); functionPrototype["INET_ATON"] = new InetAton(null); functionPrototype["INET_NTOA"] = new InetNtoa(null); functionPrototype["INSERT"] = new Insert(null); functionPrototype["INSTR"] = new Instr(null); functionPrototype["INTERVAL"] = new Interval(null); functionPrototype["IS_FREE_LOCK"] = new IsFreeLock(null); functionPrototype["IS_USED_LOCK"] = new IsUsedLock(null); functionPrototype["ISNULL"] = new IsNull(null); functionPrototype["LAST_DAY"] = new LastDay(null); functionPrototype["LAST_INSERT_ID"] = new LastInsertId(null); functionPrototype["LCASE"] = new Lower(null); functionPrototype["LEAST"] = new Least(null); functionPrototype["LEFT"] = new Left(null); functionPrototype["LENGTH"] = new Length(null); functionPrototype["LN"] = new Log(null); // Ln(X) equals Log(X) functionPrototype["LOAD_FILE"] = new LoadFile(null); functionPrototype["LOCALTIME"] = new Now(); functionPrototype["LOCALTIMESTAMP"] = new Now(); functionPrototype["LOCATE"] = new Locate(null); functionPrototype["LOG10"] = new Log10(null); functionPrototype["LOG2"] = new Log2(null); functionPrototype["LOG"] = new Log(null); functionPrototype["LOWER"] = new Lower(null); functionPrototype["LPAD"] = new Lpad(null); functionPrototype["LTRIM"] = new Ltrim(null); functionPrototype["MAKE_SET"] = new MakeSet(null); functionPrototype["MAKEDATE"] = new Makedate(null); functionPrototype["MAKETIME"] = new Maketime(null); functionPrototype["MASTER_POS_WAIT"] = new MasterPosWait(null); functionPrototype["MD5"] = new Md5(null); functionPrototype["MICROSECOND"] = new Microsecond(null); functionPrototype["MID"] = new Substring(null); functionPrototype["MINUTE"] = new Minute(null); functionPrototype["MONTH"] = new Month(null); functionPrototype["MONTHNAME"] = new Monthname(null); functionPrototype["NAME_CONST"] = new NameConst(null); functionPrototype["NOW"] = new Now(); functionPrototype["NULLIF"] = new NullIF(null); functionPrototype["OCT"] = new Oct(null); functionPrototype["OCTET_LENGTH"] = new Length(null); functionPrototype["OLD_PASSWORD"] = new OldPassword(null); functionPrototype["ORD"] = new Ord(null); functionPrototype["PASSWORD"] = new Password(null); functionPrototype["PERIOD_ADD"] = new PeriodAdd(null); functionPrototype["PERIOD_DIFF"] = new PeriodDiff(null); functionPrototype["PI"] = new PI(null); functionPrototype["POW"] = new Pow(null); functionPrototype["POWER"] = new Pow(null); functionPrototype["QUARTER"] = new Quarter(null); functionPrototype["QUOTE"] = new Quote(null); functionPrototype["RADIANS"] = new Radians(null); functionPrototype["RAND"] = new Rand(null); functionPrototype["RELEASE_LOCK"] = new ReleaseLock(null); functionPrototype["REPEAT"] = new Repeat(null); functionPrototype["REPLACE"] = new Replace(null); functionPrototype["REVERSE"] = new Reverse(null); functionPrototype["RIGHT"] = new Right(null); functionPrototype["ROUND"] = new Round(null); functionPrototype["ROW_COUNT"] = new RowCount(null); functionPrototype["RPAD"] = new Rpad(null); functionPrototype["RTRIM"] = new Rtrim(null); functionPrototype["SCHEMA"] = new Database(null); functionPrototype["SEC_TO_TIME"] = new SecToTime(null); functionPrototype["SECOND"] = new Second(null); functionPrototype["SESSION_USER"] = new User(null); functionPrototype["SHA1"] = new Sha1(null); functionPrototype["SHA"] = new Sha1(null); functionPrototype["SHA2"] = new Sha2(null); functionPrototype["SIGN"] = new Sign(null); functionPrototype["SIN"] = new Sin(null); functionPrototype["SLEEP"] = new Sleep(null); functionPrototype["SOUNDEX"] = new Soundex(null); functionPrototype["SPACE"] = new Space(null); functionPrototype["SQRT"] = new Sqrt(null); functionPrototype["STD"] = new Std(null); functionPrototype["STDDEV_POP"] = new StdDevPop(null); functionPrototype["STDDEV_SAMP"] = new StdDevSamp(null); functionPrototype["STDDEV"] = new StdDev(null); functionPrototype["STR_TO_DATE"] = new StrToDate(null); functionPrototype["STRCMP"] = new Strcmp(null); functionPrototype["SUBDATE"] = new Subdate(null); functionPrototype["SUBSTRING_INDEX"] = new SubstringIndex(null); functionPrototype["SUBTIME"] = new Subtime(null); functionPrototype["SYSDATE"] = new Sysdate(null); functionPrototype["SYSTEM_USER"] = new User(null); functionPrototype["TAN"] = new Tan(null); functionPrototype["TIME_FORMAT"] = new TimeFormat(null); functionPrototype["TIME_TO_SEC"] = new TimeToSec(null); functionPrototype["TIME"] = new Time(null); functionPrototype["TIMEDIFF"] = new Timediff(null); functionPrototype["TIMESTAMP"] = new Timestamp(null); // functionPrototype.put("TIMESTAMPADD", new Timestampadd(null)); // functionPrototype.put("TIMESTAMPDIFF", new Timestampdiff(null)); functionPrototype["TO_DAYS"] = new ToDays(null); functionPrototype["TO_SECONDS"] = new ToSeconds(null); functionPrototype["TRUNCATE"] = new Truncate(null); functionPrototype["UCASE"] = new Upper(null); functionPrototype["UNCOMPRESS"] = new Uncompress(null); functionPrototype["UNCOMPRESSED_LENGTH"] = new UncompressedLength(null); functionPrototype["UNHEX"] = new Unhex(null); functionPrototype["UNIX_TIMESTAMP"] = new UnixTimestamp(null); functionPrototype["UPDATEXML"] = new UpdateXml(null); functionPrototype["UPPER"] = new Upper(null); functionPrototype["USER"] = new User(null); functionPrototype["UTC_DATE"] = new UtcDate(null); functionPrototype["UTC_TIME"] = new UtcTime(null); functionPrototype["UTC_TIMESTAMP"] = new UtcTimestamp(null); functionPrototype["UUID_SHORT"] = new UuidShort(null); functionPrototype["UUID"] = new Uuid(null); functionPrototype["VALUES"] = new Values(null); functionPrototype["VAR_POP"] = new VarPop(null); functionPrototype["VAR_SAMP"] = new VarSamp(null); functionPrototype["VARIANCE"] = new Variance(null); functionPrototype["VERSION"] = new Version(null); functionPrototype["WEEK"] = new Week(null); functionPrototype["WEEKDAY"] = new Weekday(null); functionPrototype["WEEKOFYEAR"] = new Weekofyear(null); functionPrototype["YEAR"] = new Year(null); functionPrototype["YEARWEEK"] = new Yearweek(null); }
//#region IRenderGDIPixmap //public void CopyPixels(GDIPixmap pixMap, int srcX, int srcY) //{ // Rectangle dstRect = new Rectangle(0, 0, pixMap.Width, pixMap.Height); // DeviceContext.BitBlt(pixMap.DeviceContext, srcX, srcY, dstRect, TernaryRasterOps.SRCCOPY); //} //public void PixBlt(GDIPixmap pixMap, int srcX, int srcY, Rectangle dstRect, TernaryRasterOps rasterOp) //{ // DeviceContext.BitBlt(pixMap.DeviceContext, srcX, srcY, dstRect, rasterOp); //} //public void AlphaBlend(GDIPixmap pixMap, Rectangle srcRect, Rectangle dstRect, byte opacity) //{ // DeviceContext.AlphaBlend(pixMap.DeviceContext, srcRect, dstRect, opacity); //} //#endregion #region Static Helper for Pixel Alignment public static int GetAlignedRowStride(int width, BitCount bitsperpixel, int alignment) { int bytesperpixel = (int)bitsperpixel / 8; int stride = (width * bytesperpixel + (alignment - 1)) & ~(alignment - 1); return stride; }
public override string ToString() { return("Enum: " + Name + ", BitCount: " + BitCount.ToString()); }
public GDIDIBSection(int width, int height, BitCount bitsperpixel) : base(width, height, bitsperpixel) { }