All These Things That I've Done

Apply the programming model to everyday programming problems
posts - 83, comments - 71, trackbacks - 4

My Links

News


View Gianluca Carucci's profile on LinkedIn

Tag Cloud

Archives

Post Categories

Image Galleries

Blogs

Links

C++

Scrivere un render custom per il Video in WPF

Partiamo dal problema. Il controllo MediaElement (così come il controllo MediaPlayer e DrawingVideo) ha il grosso limite di utilizzare come sorgente video solo una sorgente conosciuta proveniente da un Uri. Per conosciuta si intende una sorgente, il cui protocol handler è registrato nel sistema (client). Come faccio a riprodurre un flusso video proveniente da una sorgente custom (scheda di acquisizione video, piuttosto che un protocollo di streaming custom) e/o codificato con un codec proprietario? Cristian, in questo articolo, spiega chiaramente il problema e propone un paio di soluzioni basate su l'interoperabilità tra Win32/WinForm e WPF la prima e...

posted @ venerdì 25 gennaio 2008 11:52 | Feedback (2) | Filed Under [ C++ Multimedia ]

Pensate come sarebbe brutto C# se...

il compilatore restituisse un errore nel caso in cui non gli piaccia l'ordine dei namespace dichiarati a inizio file. Oppure se... il compilatore restituisse un errore nel caso in cui non gli piaccia l'ordine delle classi/delegati/enumerazioni all'interno di un file. O ancora peggio se... il compilatore restituisse un errore nel caso in cui non gli piaccia l'ordine dei file da compilare. Ma anche se... con tanta fatica (e fortuna) riusciamo a trovare la giusta combinazione, ma un piccolo flag - fondamentale per la buona riuscita della compilazione - all'interno della configurazione del nostro progetto,...

posted @ martedì 30 ottobre 2007 16:11 | Feedback (2) | Filed Under [ C++ C# ]

Nuovo ma già obsoleto?!?!?

Ogni tanto, leggendo l'msdn, escono cose simpatiche:) Tratto dalla documentazione del metodo CppCodeProvider.CreateCompiler su MSDN Library:   " .NET Framework Class Library  CppCodeProvider.CreateCompiler Method  Note: This method is new in the .NET Framework version 2.0. NOTE: This method is now obsolete. Creates an instance of the C++ code compiler. Namespace: Microsoft.VisualCAssembly: CppCodeProvider (in cppcodeprovider.dll) " Non bastasse, l'implementazione del metodo restituisce un NotImplementedException....Technorati tags: Msdn, Codedom

posted @ giovedì 31 agosto 2006 11:07 | Feedback (0) | Filed Under [ C++ C# ]

Media Foundation: DirectShow avrà un successore?

Finalmente oltre a un nuovo motore grafico (WPF), un nuovo motore di Workflow (WWF) e un nuovo layer di comunicazione (WCF), Vista ha anche un nuovo motore per applicazioni multimediali chiamato Media Foundation (che fantasia). L'obbiettivo è quello di offrire una piattaforma capace di supportare pienamente l'alta definizione e di permettere una adeguata protezione dei contenuti multimediali manipolati. Nonostante DirectShow sia una piattaforma molto versatile, comincia a risentire della sua decennale età. Media Foundation promette di introdurre una architettura più accessibile e soprattutto più in linea con i progressi fatti negli ultimi anni nel campo del multimedia. Se vi aspettate che Media Foundation si...

posted @ mercoledì 9 agosto 2006 13:31 | Feedback (0) | Filed Under [ C++ Multimedia ]

Region in C++/CLI

Tutti ormai sanno che la direttiva #region di C# aiuta ad aumentare la leggibilità del codice e che la direttiva stessa non esiste direttamente in c++. Quello che forse non si sa è che le region sono utilizzabili con il C++ dal VS2005, attraverso la direttiva pragma. Ecco un piccolo snippet: #pragma region Main int main(array ^args) { Console::WriteLine(L"Hello World"); return 0; } #pragma endregion Adesso non si hanno più scuse per non usare il c++/cli :)

posted @ domenica 29 gennaio 2006 10:52 | Feedback (2) | Filed Under [ C++ ]

Generics e alias

In c++, quando utilizziamo un template (prendiamo ad esempio il tipo std::vector), è pratica abbastanza diffusa definire un nuovo tipo del template specializzato. Qualcosa di questo tipo per intenderci: typedef std::vector  IntVector; Come sappiamo  usare un template (o un tipo generico del framework) allunga incredibilmente il nome del tipo e risulta molto scomodo dover ripetere lo stesso nome per intero ad ogni cast, istanziazione etc etc. Esiste qualcosa di simile al tipedef anche in C#? La risposta è si, ma tenendo ben presente l'aggettivo SIMILE. In C# possiamo definire un alias utilizzando la key using. La "dichiarazione duale del tipo IntVector di c++, in c# sarebbe: using IntList = System.Collection.Generic.List; Leggere...

posted @ venerdì 23 dicembre 2005 12:41 | Feedback (0) | Filed Under [ C++ C# ]

Per chi pensa che C# sia un mostro cattivo...

... e voglia portarsi via tutte le nostre vecchie e robuste applicazioni unmanaged, una frase (e un articolo) che chiarifica alcuni preconcetti: "Some have speculated that C# is a replacement for C++, but it most certainly is not. C# is a language that is easier to learn than C++, and provides access to the functionality of the CLR. For those who already know C++, there's no need to learn anything to gain access to the functionality of the CLR, and C++ has features that are not in C#, so moving would actually involve giving up some power." La frase è presa dall'articolo...

posted @ lunedì 25 ottobre 2004 11:49 | Feedback (0) | Filed Under [ Links C++ C# ]

I Tempi che furono....

Ancora per poco, sfogliando l'msdn alla voce "Visual c++ Compiler Options: /Z7, /Zd, /Zi, /ZI (Debug Information Format)" possiamo trovare: /ZI:  "Produces a program database, as described above, in a format that supports the Edit and Continue feature. If you want to use Edit and Continue debugging, you must use this option. Because most optimizations are incompatible with Edit and Continue, using /ZI disables any #pragma optimize statements in your code. /ZI causes /Gy to be used in your compilation. /ZI is not compatible with /clr." Sarà ancora così anche x il CLR 2.0? C# 2.0 ha ceduto, non ci resta che sperare...

posted @ mercoledì 20 ottobre 2004 13:51 | Feedback (0) | Filed Under [ Community C++ ]

Initializer nei costruttori: C++ Vs C#

Spesso, programmando in c++, mi scontro con diversità nell'interpretazione (ed effettiva implementazione) della programmazione a oggetti rispetto al c#. Quando mi trovo in queste situazioni mi viene da pensare il motivo di questa differenza e perchè in fase di progettazione dei due linguaggi Straustrup e Hejlsberg sono arrivati a due conclusioni differenti. L'esempio più eclatante riguarda sicuramente la diatriba sull'ereditarietà multipla. In questo post invece mi volevo soffermare su un problema molto meno rilevante dell'esempio appena citato: l'initializer nei costruttori e in particolare richiamare nell'initializer un'altra versione del costruttore della classe. In entrambi i linguaggi l'initializer è opzionale e in c# accetta solo costruttori,...

posted @ venerdì 3 settembre 2004 17:51 | Feedback (1) | Filed Under [ C++ C# OOP ]

Non è Eric Gunnerson ma...

può essere interessante lo stesso:) Per chi è appassionato del mondo dei videogiochi propongo un'interessante intervista fatta da Multiplayer.it... Bhè non vi svelo nulla:) Il link è http://pc.multiplayer.it/articoli.php3?id=9484

posted @ mercoledì 19 novembre 2003 12:48 | Feedback (0) | Filed Under [ Links C++ ]

Full C++ Archive

Powered by:
Powered By Subtext Powered By ASP.NET