<commit_before>/* 
 *	info≈
 *	External object for Max/MSP to get information about TTAudioSignals from a Jamoma AudioGraph dsp chain.
 *	Copyright © 2008 by <NAME>
 * 
 * License: This code is licensed under the terms of the "New BSD License"
 * http://creativecommons.org/licenses/BSD/
 */

#include "maxAudioGraph.h"


// Data Structure for this object
struct Info {
    t_object				obj;
	TTAudioGraphObjectPtr	audioGraphObject;	// we wrap a simple 'thru' audiograph object
	TTPtr					outletSmartSignal;	// outlet for passing the input to the output, and so we can be pulled
	TTPtr					outletSampleRate;
	TTPtr					outletVectorSize;
	TTPtr					outletNumChannels;
	long					audioSourceOutlet;	// number of the outlet connected to our inlet
	long					maxNumChannels;		// the number of inlets or outlets, which is an argument at instantiation
	long					numChannels;		// the actual number of channels to use, set by the dsp method
	long					vectorSize;			// cached by the DSP method
	TTPtr					qelem;				// a queue for deferring 'bang' calls
};
typedef Info* InfoPtr;


// Prototypes for methods
InfoPtr	InfoNew(SymbolPtr msg, AtomCount argc, AtomPtr argv);
void	InfoFree(InfoPtr self);
void	InfoAssist(InfoPtr self, void* b, long msg, long arg, char* dst);
void	InfoBang(InfoPtr self);
void	InfoQfn(InfoPtr self);
TTErr	InfoConnect(InfoPtr self, TTAudioGraphObjectPtr audioSourceObject, long sourceOutletNumber);


// Globals
static ClassPtr sInfoClass;

<commit_msg>fixes #776<commit_after>/* 
 *	info≈
 *	External object for Max/MSP to get information about TTAudioSignals from a Jamoma AudioGraph dsp chain.
 *	Copyright © 2008 by <NAME>
 * 
 * License: This code is licensed under the terms of the "New BSD License"
 * http://creativecommons.org/licenses/BSD/
 */

#include "maxAudioGraph.h"


// Data Structure for this object
struct Info {
    t_object				obj;
	TTAudioGraphObjectPtr	audioGraphObject;	// we wrap a simple 'thru' audiograph object
	TTPtr					outletSmartSignal;	// outlet for passing the input to the output, and so we can be pulled
	TTPtr					unused;				// this is an unused ptr, always set to NULL, to signal the end of the JAG outlets
	TTPtr					outletSampleRate;
	TTPtr					outletVectorSize;
	TTPtr					outletNumChannels;
	long					audioSourceOutlet;	// number of the outlet connected to our inlet
	long					maxNumChannels;		// the number of inlets or outlets, which is an argument at instantiation
	long					numChannels;		// the actual number of channels to use, set by the dsp method
	long					vectorSize;			// cached by the DSP method
	TTPtr					qelem;				// a queue for deferring 'bang' calls
};
typedef Info* InfoPtr;


// Prototypes for methods
InfoPtr	InfoNew(SymbolPtr msg, AtomCount argc, AtomPtr argv);
void	InfoFree(InfoPtr self);
void	InfoAssist(InfoPtr self, void* b, long msg, long arg, char* dst);
void	InfoBang(InfoPtr self);
void	InfoQfn(InfoPtr self);
TTErr	InfoConnect(InfoPtr self, TTAudioGraphObjectPtr audioSourceObject, long sourceOutletNumber);


// Globals
static ClassPtr sInfoClass;


{'fraction_non_alphanumeric': 0.07114624505928854, 'fraction_numerical': 0.0036231884057971015, 'mean_word_length': 3.7751572327044025, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5702235', 'n_tokens_mistral': 1078, 'n_tokens_neox': 956, 'n_words': 370}