本文整理汇总了C++中FUNCTION函数的典型用法代码示例。如果您正苦于以下问题:C++ FUNCTION函数的具体用法?C++ FUNCTION怎么用?C++ FUNCTION使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了FUNCTION函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: FUNCTION
void
VideoProducer::Connect(status_t error, const media_source& source,
const media_destination& destination, const media_format& format,
char* _name)
{
FUNCTION("Connect() %ldx%ld\n",
format.u.raw_video.display.line_width,
format.u.raw_video.display.line_count);
if (fConnected) {
ERROR("Connect() - already connected.\n");
return;
}
if (source != fOutput.source) {
ERROR("Connect() - wrong source.\n");
return;
}
if (error != B_OK) {
ERROR("Connect() - consumer error: %s\n", strerror(error));
return;
}
if (!const_cast<media_format*>(&format)->Matches(&fOutput.format)) {
ERROR("Connect() - format mismatch.\n");
return;
}
fOutput.destination = destination;
strcpy(_name, fOutput.name);
fConnectedFormat = format.u.raw_video;
fBufferDuration = 20000;
if (fConnectedFormat.field_rate != 0.0f) {
fPerformanceTimeBase = fPerformanceTimeBase
+ (bigtime_t)((fFrame - fFrameBase)
* 1000000LL / fConnectedFormat.field_rate);
fFrameBase = fFrame;
fBufferDuration = bigtime_t(1000000LL / fConnectedFormat.field_rate);
}
if (fConnectedFormat.display.bytes_per_row == 0) {
ERROR("Connect() - connected format still has BPR wildcard!\n");
fConnectedFormat.display.bytes_per_row
= 4 * fConnectedFormat.display.line_width;
}
// Create the buffer group
if (fUsedBufferGroup == NULL) {
fBufferGroup = new BBufferGroup(fConnectedFormat.display.bytes_per_row
* fConnectedFormat.display.line_count, BUFFER_COUNT);
status_t err = fBufferGroup->InitCheck();
if (err < B_OK) {
delete fBufferGroup;
fBufferGroup = NULL;
ERROR("Connect() - buffer group error: %s\n", strerror(err));
return;
}
fUsedBufferGroup = fBufferGroup;
}
// get the latency
fBufferLatency = (BUFFER_COUNT - 1) * fBufferDuration;
int32 bufferCount;
if (fUsedBufferGroup->CountBuffers(&bufferCount) == B_OK) {
// recompute the latency
fBufferLatency = (bufferCount - 1) * fBufferDuration;
}
bigtime_t latency = 0;
media_node_id tsID = 0;
FindLatencyFor(fOutput.destination, &latency, &tsID);
SetEventLatency(latency + fBufferLatency);
fConnected = true;
fEnabled = true;
// Tell frame generation thread to recalculate delay value
release_sem(fFrameSync);
}
开发者ID:veer77,项目名称:Haiku-services-branch,代码行数:80,代码来源:VideoProducer.cpp
示例2: FUNCTION
double
FUNCTION(gsl_stats,wabsdev) (const BASE w[], const size_t wstride, const BASE data[], const size_t stride, const size_t n)
{
const double wmean = FUNCTION(gsl_stats,wmean)(w, wstride, data, stride, n);
return FUNCTION(gsl_stats,wabsdev_m)(w, wstride, data, stride, n, wmean);
}
开发者ID:lemahdi,项目名称:mglib,代码行数:6,代码来源:wabsdev_source.c
示例3: FUNCTION
"gpio86", "gpio87", "gpio88", "gpio89", "gpio90"
};
static const char * const tsif1_groups[] = {
"gpio82", "gpio83", "gpio84", "gpio85", "gpio86"
};
static const char * const tsif2_groups[] = {
"gpio91", "gpio95", "gpio96", "gpio97", "gpio101"
};
static const char * const uim_groups[] = {
"gpio130", "gpio131", "gpio132", "gpio133"
};
static const char * const uim_batt_alarm_groups[] = {
"gpio102"
};
static const struct msm_function apq8084_functions[] = {
FUNCTION(adsp_ext),
FUNCTION(audio_ref),
FUNCTION(blsp_i2c1),
FUNCTION(blsp_i2c2),
FUNCTION(blsp_i2c3),
FUNCTION(blsp_i2c4),
FUNCTION(blsp_i2c5),
FUNCTION(blsp_i2c6),
FUNCTION(blsp_i2c7),
FUNCTION(blsp_i2c8),
FUNCTION(blsp_i2c9),
FUNCTION(blsp_i2c10),
FUNCTION(blsp_i2c11),
FUNCTION(blsp_i2c12),
FUNCTION(blsp_spi1),
FUNCTION(blsp_spi1_cs1),
开发者ID:3null,项目名称:linux,代码行数:31,代码来源:pinctrl-apq8084.c
示例4: FUNCTION
void
FUNCTION (test, func) (const size_t M, const size_t N)
{
TYPE (gsl_vector) * v;
size_t i, j;
size_t k = 0;
TYPE (gsl_matrix) * m = FUNCTION (gsl_matrix, alloc) (M, N);
gsl_test (m->data == 0, NAME (gsl_matrix) "_alloc returns valid pointer");
gsl_test (m->size1 != M, NAME (gsl_matrix) "_alloc returns valid size1");
gsl_test (m->size2 != N, NAME (gsl_matrix) "_alloc returns valid size2");
gsl_test (m->tda != N, NAME (gsl_matrix) "_alloc returns valid tda");
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
{
k++;
FUNCTION (gsl_matrix, set) (m, i, j, (BASE) k);
}
}
{
status = 0;
k = 0;
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
{
k++;
if (m->data[i * N + j] != (BASE) k)
status = 1;
};
};
gsl_test (status, NAME (gsl_matrix) "_set writes into array");
}
{
status = 0;
k = 0;
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
{
k++;
if (FUNCTION (gsl_matrix, get) (m, i, j) != (BASE) k)
status = 1;
};
};
gsl_test (status, NAME (gsl_matrix) "_get reads from array");
}
FUNCTION (gsl_matrix, free) (m); /* free whatever is in m */
m = FUNCTION (gsl_matrix, calloc) (M, N);
v = FUNCTION (gsl_vector, calloc) (N);
{
int status = (FUNCTION(gsl_matrix,isnull)(m) != 1);
TEST (status, "_isnull" DESC " on calloc matrix");
status = (FUNCTION(gsl_matrix,ispos)(m) != 0);
TEST (status, "_ispos" DESC " on calloc matrix");
status = (FUNCTION(gsl_matrix,isneg)(m) != 0);
TEST (status, "_isneg" DESC " on calloc matrix");
status = (FUNCTION(gsl_matrix,isnonneg)(m) != 1);
TEST (status, "_isnonneg" DESC " on calloc matrix");
}
k = 0;
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
{
k++;
FUNCTION (gsl_matrix, set) (m, i, j, (BASE) k);
}
}
{
status = 0;
k = 0;
for (i = 0; i < M; i++)
{
FUNCTION (gsl_matrix, get_row) (v, m, i);
for (j = 0; j < N; j++)
{
k++;
if (v->data[j] != (BASE) k)
status = 1;
}
}
//.........这里部分代码省略.........
开发者ID:hironics,项目名称:GSL,代码行数:101,代码来源:test_source.c
示例5: FUNCTION
};
static const char * const icllp_spi0_groups[] = { "spi0_grp" };
static const char * const icllp_spi1_groups[] = { "spi1_grp" };
static const char * const icllp_spi2_groups[] = { "spi2_grp" };
static const char * const icllp_i2c0_groups[] = { "i2c0_grp" };
static const char * const icllp_i2c1_groups[] = { "i2c1_grp" };
static const char * const icllp_i2c2_groups[] = { "i2c2_grp" };
static const char * const icllp_i2c3_groups[] = { "i2c3_grp" };
static const char * const icllp_i2c4_groups[] = { "i2c4_grp" };
static const char * const icllp_uart0_groups[] = { "uart0_grp" };
static const char * const icllp_uart1_groups[] = { "uart1_grp" };
static const char * const icllp_uart2_groups[] = { "uart2_grp" };
static const struct intel_function icllp_functions[] = {
FUNCTION("spi0", icllp_spi0_groups),
FUNCTION("spi1", icllp_spi1_groups),
FUNCTION("spi2", icllp_spi2_groups),
FUNCTION("i2c0", icllp_i2c0_groups),
FUNCTION("i2c1", icllp_i2c1_groups),
FUNCTION("i2c2", icllp_i2c2_groups),
FUNCTION("i2c3", icllp_i2c3_groups),
FUNCTION("i2c4", icllp_i2c4_groups),
FUNCTION("uart0", icllp_uart0_groups),
FUNCTION("uart1", icllp_uart1_groups),
FUNCTION("uart2", icllp_uart2_groups),
};
static const struct intel_pinctrl_soc_data icllp_soc_data = {
.pins = icllp_pins,
.npins = ARRAY_SIZE(icllp_pins),
开发者ID:AlexShiLucky,项目名称:linux,代码行数:31,代码来源:pinctrl-icelake.c
示例6: return
{
return (display.flag.update_acceleration);
}
// *************************************************************************************************
// User navigation ( [____] = default menu item after reset )
//
// LINE1: [Time] -> Alarm -> Temperature -> Altitude -> Heart rate -> Speed -> Acceleration
//
// LINE2: [Date] -> Stopwatch -> Battery -> ACC -> PPT -> SYNC -> Calories/Distance --> RFBSL
// *************************************************************************************************
// Line1 - Time
const struct menu menu_L1_Time =
{
FUNCTION(sx_time), // direct function
FUNCTION(mx_time), // sub menu function
FUNCTION(display_time), // display function
FUNCTION(update_time), // new display data
&menu_L1_Alarm,
};
// Line1 - Alarm
const struct menu menu_L1_Alarm =
{
FUNCTION(sx_alarm), // direct function
FUNCTION(mx_alarm), // sub menu function
FUNCTION(display_alarm), // display function
FUNCTION(update_alarm), // new display data
&menu_L1_Temperature,
};
// Line1 - Temperature
开发者ID:aschoonen,项目名称:OpenChronos,代码行数:31,代码来源:menu.c
示例7: FUNCTION
status_t
DirEntryTree::LookupEntry(const char* name, uint64& _blockIndex)
{
FUNCTION("name: \"%s\"\n", name);
status_t error = _InitReadOnly();
if (error != B_OK)
RETURN_ERROR(error);
size_t nameLength = strlen(name);
if (nameLength > kCheckSumFSNameLength)
RETURN_ERROR(B_ENTRY_NOT_FOUND);
uint32 depth = _Depth();
DirEntryBlock entryBlock(fRootEntryBlock, fRootEntryBlockSize);
ASSERT(entryBlock.Check());
Block block;
for (uint32 level = 0; level <= depth; level++) {
if (entryBlock.EntryCount() == 0)
RETURN_ERROR(level == 0 ? B_ENTRY_NOT_FOUND : B_BAD_DATA);
bool exactMatch;
int32 index = entryBlock.FindInsertionIndex(name, nameLength,
exactMatch);
// If we haven't found an exact match, the index points to the first
// entry that is greater or after the last entry.
if (!exactMatch) {
if (index == 0) {
// The first entry is already greater, so the branch doesn't
// contain the entry we're looking for.
RETURN_ERROR(B_ENTRY_NOT_FOUND);
}
index--;
}
PRINT(" level %" B_PRId32 " -> index: %" B_PRId32 " %sexact\n", level,
index, exactMatch ? "" : " not ");
uint64 blockIndex = entryBlock.BlockIndexAt(index);
if (level == depth) {
// final level -- here we should have an exact match
if (!exactMatch)
RETURN_ERROR(B_ENTRY_NOT_FOUND);
_blockIndex = blockIndex;
return B_OK;
}
// not the final level -- load the block and descend to the next
// level
if (!block.GetReadable(fDirectory->GetVolume(), blockIndex))
RETURN_ERROR(B_ERROR);
entryBlock.SetTo((checksumfs_dir_entry_block*)block.Data(),
B_PAGE_SIZE);
ASSERT(entryBlock.Check());
}
// cannot get here, but keep the compiler happy
RETURN_ERROR(B_ENTRY_NOT_FOUND);
}
开发者ID:SummerSnail2014,项目名称:haiku,代码行数:67,代码来源:Directory.cpp
示例8: FUNCTION
};
static const char * const audio_ref_clk_groups[] = { "gpio69" };
static const char * const bt_groups[] = { "gpio35", "gpio43", "gpio44" };
static const char * const fm_groups[] = { "gpio41", "gpio42" };
static const char * const wlan_groups[] = {
"gpio36", "gpio37", "gpio38", "gpio39", "gpio40"
};
static const char * const slimbus_groups[] = { "gpio70", "gpio71" };
static const struct msm_function msm8x74_functions[] = {
FUNCTION(gpio),
FUNCTION(cci_i2c0),
FUNCTION(cci_i2c1),
FUNCTION(uim1),
FUNCTION(uim2),
FUNCTION(uim_batt_alarm),
FUNCTION(blsp_uim1),
FUNCTION(blsp_uim2),
FUNCTION(blsp_uim3),
FUNCTION(blsp_uim4),
FUNCTION(blsp_uim5),
FUNCTION(blsp_uim6),
FUNCTION(blsp_uim7),
FUNCTION(blsp_uim8),
FUNCTION(blsp_uim9),
FUNCTION(blsp_uim10),
开发者ID:AkyZero,项目名称:wrapfs-latest,代码行数:31,代码来源:pinctrl-msm8x74.c
示例9: FUNCTION
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
int
FUNCTION (gsl_vector, fread) (FILE * stream, TYPE (gsl_vector) * v)
{
int status = FUNCTION (gsl_block, raw_fread) (stream,
v->data,
v->size,
v->stride);
return status;
}
int
FUNCTION (gsl_vector, fwrite) (FILE * stream, const TYPE (gsl_vector) * v)
{
int status = FUNCTION (gsl_block, raw_fwrite) (stream,
v->data,
v->size,
v->stride);
return status;
}
#if !(defined(USES_LONGDOUBLE) && !defined(HAVE_PRINTF_LONGDOUBLE))
开发者ID:ICML14MoMCompare,项目名称:spectral-learn,代码行数:32,代码来源:file_source.c
示例10: FUNCTION
"gpio20",
"gpio22", "gpio23", "gpio24", "gpio25",
"gpio26", "gpio27", "gpio28", "gpio29",
"gpio30", "gpio31", "gpio32", "gpio33",
"gpio34"
};
#define FUNCTION(_name, _gr) \
{ \
.name = #_name, \
.groups = oxnas_##_gr##_group, \
.ngroups = ARRAY_SIZE(oxnas_##_gr##_group), \
}
static const struct oxnas_function oxnas_functions[] = {
FUNCTION(gpio, fct0),
FUNCTION(fct3, fct3),
};
#define OXNAS_PINCTRL_GROUP(_pin, _name, ...) \
{ \
.name = #_name, \
.pin = _pin, \
.bank = _pin / PINS_PER_BANK, \
.functions = (struct oxnas_desc_function[]){ \
__VA_ARGS__, { } }, \
}
#define OXNAS_PINCTRL_FUNCTION(_name, _fct) \
{ \
.name = #_name, \
开发者ID:AK101111,项目名称:linux,代码行数:31,代码来源:pinctrl-oxnas.c
示例11: FUNCTION
static const char * const sptlp_spi1_groups[] = { "spi0_grp" };
static const char * const sptlp_uart0_groups[] = { "uart0_grp" };
static const char * const sptlp_uart1_groups[] = { "uart1_grp" };
static const char * const sptlp_uart2_groups[] = { "uart2_grp" };
static const char * const sptlp_i2c0_groups[] = { "i2c0_grp" };
static const char * const sptlp_i2c1_groups[] = { "i2c1_grp" };
static const char * const sptlp_i2c2_groups[] = { "i2c2_grp" };
static const char * const sptlp_i2c3_groups[] = { "i2c3_grp" };
static const char * const sptlp_i2c4_groups[] = { "i2c4_grp", "i2c4b_grp" };
static const char * const sptlp_i2c5_groups[] = { "i2c5_grp" };
static const char * const sptlp_ssp2_groups[] = { "ssp2_grp" };
static const char * const sptlp_emmc_groups[] = { "emmc_grp" };
static const char * const sptlp_sd_groups[] = { "sd_grp" };
static const struct intel_function sptlp_functions[] = {
FUNCTION("spi0", sptlp_spi0_groups),
FUNCTION("spi1", sptlp_spi1_groups),
FUNCTION("uart0", sptlp_uart0_groups),
FUNCTION("uart1", sptlp_uart1_groups),
FUNCTION("uart2", sptlp_uart2_groups),
FUNCTION("i2c0", sptlp_i2c0_groups),
FUNCTION("i2c1", sptlp_i2c1_groups),
FUNCTION("i2c2", sptlp_i2c2_groups),
FUNCTION("i2c3", sptlp_i2c3_groups),
FUNCTION("i2c4", sptlp_i2c4_groups),
FUNCTION("i2c5", sptlp_i2c5_groups),
FUNCTION("ssp2", sptlp_ssp2_groups),
FUNCTION("emmc", sptlp_emmc_groups),
FUNCTION("sd", sptlp_sd_groups),
};
开发者ID:AshishNamdev,项目名称:linux,代码行数:30,代码来源:pinctrl-sunrisepoint.c
示例12: PcdComMF522
char PcdComMF522(uint8_t Command,
uint8_t *pIn ,
uint8_t InLenByte,
uint8_t *pOut ,
uint8_t *pOutLenBit)
{
FUNCTION() ;
char status = TAG_ERR;
uint8_t irqEn = 0x00;
uint8_t waitFor = 0x00;
uint8_t lastBits;
uint8_t n;
uint32_t i;
uint8_t PcdErr;
// printf("CMD %02x\n",pIn[0]);
switch (Command)
{
case PCD_AUTHENT:
irqEn = 0x12;
waitFor = 0x10;
break;
case PCD_TRANSCEIVE:
irqEn = 0x77;
waitFor = 0x30;
break;
default:
break;
}
WriteRawRC(ComIEnReg,irqEn|0x80);
// WriteRawRC(ComIEnReg,irqEn);
ClearBitMask(ComIrqReg,0x80);
SetBitMask(FIFOLevelReg,0x80);
WriteRawRC(CommandReg,PCD_IDLE);
for (i=0; i<InLenByte; i++) {
WriteRawRC(FIFODataReg, pIn [i]);
}
WriteRawRC(CommandReg, Command);
if (Command == PCD_TRANSCEIVE) {
SetBitMask(BitFramingReg,0x80);
}
//i = 600;//���ʱ��Ƶ�ʵ������M1�����ȴ�ʱ��25ms
i = 150;
do
{
usleep(200);
// bcm2835_delayMicroseconds(200);
n = ReadRawRC(ComIrqReg);
i--;
}
while ((i!=0) && (!(n&0x01)) && (!(n&waitFor)));
ClearBitMask(BitFramingReg,0x80);
if (i!=0)
{
PcdErr=ReadRawRC(ErrorReg);
if (!(PcdErr & 0x11))
{
status = TAG_OK;
if (n & irqEn & 0x01) {status = TAG_NOTAG;}
if (Command == PCD_TRANSCEIVE) {
n = ReadRawRC(FIFOLevelReg);
lastBits = ReadRawRC(ControlReg) & 0x07;
if (lastBits) {*pOutLenBit = (n-1)*8 + lastBits;}
else {*pOutLenBit = n*8;}
if (n == 0) {n = 1;}
if (n > MAXRLEN) {n = MAXRLEN;}
for (i=0; i<n; i++) {
pOut [i] = ReadRawRC(FIFODataReg);
// printf (".%02X ",pOut[i]);
}
}
}
else {
// fprintf (stderr,"Err %02x\n",PcdErr);
status = TAG_ERR;}
if (PcdErr&0x08) {
if (debug) fprintf (stderr,"COllision \n");
status = TAG_COLLISION;
}
}
// SetBitMask(ControlReg,0x80); // stop timer now
// WriteRawRC(CommandReg,PCD_IDLE); ???????
// printf ("PCD Err %02x\n",PcdErr);
return status;
}
开发者ID:boyisgood86,项目名称:A20-spi-rc522,代码行数:99,代码来源:rc522.cpp
示例13: PcdAntennaOff
void PcdAntennaOff(void)
{
FUNCTION() ;
ClearBitMask(TxControlReg, 0x03);
}
开发者ID:boyisgood86,项目名称:A20-spi-rc522,代码行数:5,代码来源:rc522.cpp
示例14: setTitle
FileWindow::FileWindow(std::string path) : Motif::Window("fileWindow")
{
ini.reset(new OpenCDE::Ini(OpenCDE::Environment::getHome() + "/.opencde/dtfile/filetypes.ini"));
setTitle("File Manager - /some/path");
setIconName("path");
setIconPixmap(OpenCDE::Environment::getPrefix() + "/share/opencde/pixmaps/Fphome.l.pm");
setWidth(450);
setHeight(350);
setCloseFunction(FUNCTION(FileWindow::onClose));
menuBar.reset(new Motif::MenuBar("menuBar", getContentPanel()));
menuBar->setLeftAttachment(Motif::Attachment::FORM);
menuBar->setRightAttachment(Motif::Attachment::FORM);
menuBar->setTopAttachment(Motif::Attachment::FORM);
filePulldownMenu.reset(new Motif::PulldownMenu("filePulldownMenu", menuBar.get()));
filePulldownMenu->setText("File");
newFolderButton.reset(new Motif::Button("newFolderButton", filePulldownMenu.get()));
newFolderButton->setText("New Folder");
newFileButton.reset(new Motif::Button("newFileButton", filePulldownMenu.get()));
newFileButton->setText("New File");
separators.add(new Motif::Separator("separator", filePulldownMenu.get()));
instanceButton.reset(new Motif::Button("instanceButton", filePulldownMenu.get()));
instanceButton->setText("New Window");
instanceButton->setAccelerator("Ctrl<Key>w");
instanceButton->setAcceleratorText("Ctrl+W");
instanceButton->setActivateFunction(FUNCTION(FileWindow::onInstanceButtonClicked));
terminalButton.reset(new Motif::Button("terminalButton", filePulldownMenu.get()));
terminalButton->setText("Open Terminal");
terminalButton->setAccelerator("Ctrl<Key>t");
terminalButton->setAcceleratorText("Ctrl+T");
terminalButton->setActivateFunction(FUNCTION(FileWindow::onTerminalButtonClicked));
separators.add(new Motif::Separator("separator", filePulldownMenu.get()));
closeButton.reset(new Motif::Button("closeButton", filePulldownMenu.get()));
closeButton->setText("Close");
closeButton->setActivateFunction(FUNCTION(FileWindow::onClose));
//closeButton->setAccelerator("Alt<Key>f4");
closeButton->setAcceleratorText("Alt+F4");
//closeButton->setSensitive(false);
selectedPulldownMenu.reset(new Motif::PulldownMenu("editPulldownMenu", menuBar.get()));
selectedPulldownMenu->setText("Selected");
viewPulldownMenu.reset(new Motif::PulldownMenu("optionsPulldownMenu", menuBar.get()));
viewPulldownMenu->setText("View");
helpPulldownMenu.reset(new Motif::PulldownMenu("helpPulldownMenu", menuBar.get()));
helpPulldownMenu->setText("Help");
menuBar->setHelpMenu(helpPulldownMenu.get());
helpButton.reset(new Motif::Button("helpButton", helpPulldownMenu.get()));
helpButton->setText("File Manager Help");
//helpButton->setActivateFunction(FUNCTION(FileWindow::onClose));
separators.add(new Motif::Separator("separator", helpPulldownMenu.get()));
aboutButton.reset(new Motif::Button("aboutButton", helpPulldownMenu.get()));
aboutButton->setText("About File Manager");
//aboutButton->setActivateFunction(FUNCTION(FileWindow::onClose));
statusPanel.reset(new Motif::Panel("statusPanel", getContentPanel()));
statusPanel->setLeftAttachment(Motif::Attachment::FORM);
statusPanel->setRightAttachment(Motif::Attachment::FORM);
statusPanel->setBottomAttachment(Motif::Attachment::FORM);
statusPanel->setHeight(25);
statusPanel->setShadowThickness(1);
mainPanel.reset(new Motif::Panel("mainPanel", getContentPanel()));
mainPanel->setLeftAttachment(Motif::Attachment::FORM);
mainPanel->setRightAttachment(Motif::Attachment::FORM);
mainPanel->setTopAttachment(Motif::Attachment::WIDGET);
mainPanel->setBottomAttachment(Motif::Attachment::WIDGET);
mainPanel->setLeftOffset(0);
mainPanel->setRightOffset(0);
mainPanel->setTopWidget(menuBar.get());
mainPanel->setBottomWidget(statusPanel.get());
mainPanel->setShadowThickness(1);
filePanel.reset(new Motif::Panel("filePanel", mainPanel.get()));
filePanel->setLeftAttachment(Motif::Attachment::FORM);
filePanel->setLeftOffset(5);
filePanel->setRightAttachment(Motif::Attachment::FORM);
filePanel->setRightOffset(25);
filePanel->setTopAttachment(Motif::Attachment::FORM);
filePanel->setTopOffset(5);
filePanel->setBottomAttachment(Motif::Attachment::FORM);
filePanel->setBottomOffset(5);
filePanel->setShadowThickness(2);
filePanel->setShadowType(Motif::ShadowType::IN);
statusLabel.reset(new Motif::Label("statusLabel", statusPanel.get()));
statusLabel->setTopAttachment(Motif::Attachment::FORM);
statusLabel->setTopOffset(1);
statusLabel->setBottomAttachment(Motif::Attachment::FORM);
statusLabel->setBottomOffset(1);
statusLabel->setLeftAttachment(Motif::Attachment::FORM);
statusLabel->setLeftOffset(1);
statusLabel->setText("99 Items 99 Hidden");
fileScroll.reset(new Motif::ScrollBar("fileScroll", mainPanel.get()));
fileScroll->setTopAttachment(Motif::Attachment::FORM);
fileScroll->setTopOffset(5);
fileScroll->setBottomAttachment(Motif::Attachment::FORM);
fileScroll->setBottomOffset(5);
fileScroll->setRightAttachment(Motif::Attachment::FORM);
fileScroll->setRightOffset(5);
fileScroll->setLeftAttachment(Motif::Attachment::NONE);
//.........这里部分代码省略.........
开发者ID:GHackAnonymous,项目名称:opencde,代码行数:101,代码来源:FileWindow.cpp
示例15: FUNCTION
int
FUNCTION(gsl_fft_real,radix2_transform) (BASE data[], const size_t stride, const size_t n)
{
int result ;
size_t p, p_1, q;
size_t i;
size_t logn = 0;
int status;
if (n == 1) /* identity operation */
{
return 0 ;
}
/* make sure that n is a power of 2 */
result = fft_binary_logn(n) ;
if (result == -1)
{
GSL_ERROR ("n is not a power of 2", GSL_EINVAL);
}
else
{
logn = result ;
}
/* bit reverse the ordering of input data for decimation in time algorithm */
status = FUNCTION(fft_real,bitreverse_order)(data, stride, n, logn) ;
/* apply fft recursion */
p = 1; q = n ;
for (i = 1; i <= logn; i++)
{
size_t a, b;
p_1 = p ;
p = 2 * p ;
q = q / 2 ;
/* a = 0 */
for (b = 0; b < q; b++)
{
ATOMIC t0_real = VECTOR(data,stride,b*p) + VECTOR(data,stride,b*p + p_1) ;
ATOMIC t1_real = VECTOR(data,stride,b*p) - VECTOR(data,stride,b*p + p_1) ;
VECTOR(data,stride,b*p) = t0_real ;
VECTOR(data,stride,b*p + p_1) = t1_real ;
}
/* a = 1 ... p_{i-1}/2 - 1 */
{
ATOMIC w_real = 1.0;
ATOMIC w_imag = 0.0;
const double theta = - 2.0 * M_PI / p;
const ATOMIC s = sin (theta);
const ATOMIC t = sin (theta / 2.0);
const ATOMIC s2 = 2.0 * t * t;
for (a = 1; a < (p_1)/2; a++)
{
/* trignometric recurrence for w-> exp(i theta) w */
{
const ATOMIC tmp_real = w_real - s * w_imag - s2 * w_real;
const ATOMIC tmp_imag = w_imag + s * w_real - s2 * w_imag;
w_real = tmp_real;
w_imag = tmp_imag;
}
for (b = 0; b < q; b++)
{
ATOMIC z0_real = VECTOR(data,stride,b*p + a) ;
ATOMIC z0_imag = VECTOR(data,stride,b*p + p_1 - a) ;
ATOMIC z1_real = VECTOR(data,stride,b*p + p_1 + a) ;
ATOMIC z1_imag = VECTOR(data,stride,b*p + p - a) ;
/* t0 = z0 + w * z1 */
ATOMIC t0_real = z0_real + w_real * z1_real - w_imag * z1_imag;
ATOMIC t0_imag = z0_imag + w_real * z1_imag + w_imag * z1_real;
/* t1 = z0 - w * z1 */
ATOMIC t1_real = z0_real - w_real * z1_real + w_imag * z1_imag;
ATOMIC t1_imag = z0_imag - w_real * z1_imag - w_imag * z1_real;
VECTOR(data,stride,b*p + a) = t0_real ;
VECTOR(data,stride,b*p + p - a) = t0_imag ;
VECTOR(data,stride,b*p + p_1 - a) = t1_real ;
VECTOR(data,stride,b*p + p_1 + a) = -t1_imag ;
}
//.........这里部分代码省略.........
开发者ID:CNMAT,项目名称:CNMAT-Externs,代码行数:101,代码来源:real_radix2.c
示例16: FUNCTION
void
FUNCTION (test, func) (size_t stride, size_t N)
{
TYPE (gsl_vector) * v0;
TYPE (gsl_vector) * v;
QUALIFIED_VIEW(gsl_vector,view) view;
size_t i, j;
if (stride == 1)
{
v = FUNCTION (gsl_vector, calloc) (N);
TEST(v->data == 0, "_calloc pointer");
TEST(v->size != N, "_calloc size");
TEST(v->stride != 1, "_calloc stride");
{
int status = (FUNCTION(gsl_vector,isnull)(v) != 1);
TEST (status, "_isnull" DESC " on calloc vector");
}
FUNCTION (gsl_vector, free) (v); /* free whatever is in v */
}
if (stride == 1)
{
v = FUNCTION (gsl_vector, alloc) (N);
TEST(v->data == 0, "_alloc pointer");
TEST(v->size != N, "_alloc size");
TEST(v->stride != 1, "_alloc stride");
FUNCTION (gsl_vector, free) (v); /* free whatever is in v */
}
if (stride == 1)
{
v0 = FUNCTION (gsl_vector, alloc) (N);
view = FUNCTION (gsl_vector, subvector) (v0, 0, N);
v = &view.vector;
}
else
{
v0 = FUNCTION (gsl_vector, alloc) (N * stride);
for (i = 0; i < N*stride; i++)
{
BASE x = ZERO;
GSL_REAL (x) = (ATOMIC)i;
GSL_IMAG (x) = (ATOMIC)(i + 1234);
FUNCTION (gsl_vector, set) (v0, i, x);
}
view = FUNCTION (gsl_vector, subvector_with_stride) (v0, 0, stride, N);
v = &view.vector;
}
{
int status = 0;
for (i = 0; i < N; i++)
{
BASE x = ZERO;
GSL_REAL (x) = (ATOMIC)i;
GSL_IMAG (x) = (ATOMIC)(i + 1234);
FUNCTION (gsl_vector, set) (v, i, x);
}
for (i = 0; i < N; i++)
{
if (v->data[2*i*stride] != (ATOMIC) (i) || v->data[2 * i * stride + 1] != (ATOMIC) (i + 1234))
status = 1;
};
TEST(status,"_set" DESC " writes into array");
}
{
int status = 0;
for (i = 0; i < N; i++)
{
BASE x, y;
GSL_REAL (x) = (ATOMIC)i;
GSL_IMAG (x) = (ATOMIC)(i + 1234);
y = FUNCTION (gsl_vector, get) (v, i);
if (!GSL_COMPLEX_EQ (x, y))
status = 1;
};
TEST (status, "_get" DESC " reads from array");
}
{
int status = 0;
for (i = 0; i < N; i++)
{
//.........这里部分代码省略.........
开发者ID:CNMAT,项目名称:CNMAT-Externs,代码行数:101,代码来源:test_complex_source.c
示例17: FUNCTION
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
int
FUNCTION(gsl_fft_complex,radix2_forward) (TYPE(gsl_complex_packed_array) data,
const size_t stride, const size_t n)
{
gsl_fft_direction sign = forward;
int status = FUNCTION(gsl_fft_complex,radix2_transform) (data, stride, n, sign);
return status;
}
int
FUNCTION(gsl_fft_complex,radix2_backward) (TYPE(gsl_complex_packed_array) data,
const size_t stride, const size_t n)
{
gsl_fft_direction sign = backward;
int status = FUNCTION(gsl_fft_complex,radix2_transform) (data, stride, n, sign);
return status;
}
int
FUNCTION(gsl_fft_complex,radix2_inverse) (TYPE(gsl_complex_packed_array) data,
const size_t stride, const size_t n)
开发者ID:tommyliu,项目名称:visionPJ1,代码行数:31,代码来源:c_radix2.c
示例18: FUNCTION
void
FUNCTION (test, func) (const size_t stridea, const size_t strideb)
{
/* sample sets of doubles */
size_t i;
const size_t na = 14, nb = 14;
const double rawa[] =
{.0421, .0941, .1064, .0242, .1331,
.0773, .0243, .0815, .1186, .0356,
.0728, .0999, .0614, .0479};
const double rawb[] =
{.1081, .0986, .1566, .1961, .1125,
.1942, .1079, .1021, .1583, .1673,
.1675, .1856, .1688, .1512};
const double raww[] =
{.0000, .0000, .0000, 3.000, .0000,
1.000, 1.000, 1.000, 0.000, .5000,
7.000, 5.000, 4.000, 0.123};
BASE * sorted ;
BASE * groupa = (BASE *) malloc (stridea * na * sizeof(BASE));
BASE * groupb = (BASE *) malloc (strideb * nb * sizeof(BASE));
BASE * w = (BASE *) malloc (strideb * na * sizeof(BASE));
#ifdef BASE_FLOAT
double rel = 1e-6;
#else
double rel = 1e-10;
#endif
for (i = 0 ; i < na ; i++)
groupa[i * stridea] = (BASE) rawa[i] ;
for (i = 0 ; i < na ; i++)
w[i * strideb] = (BASE) raww[i] ;
for (i = 0 ; i < nb ; i++)
groupb[i * strideb] = (BASE) rawb[i] ;
{
double mean = FUNCTION(gsl_stats,mean) (groupa, stridea, na);
double expected = 0.0728;
gsl_test_rel (mean, expected, rel, NAME(gsl_stats) "_mean");
}
{
double mean = FUNCTION(gsl_stats,mean) (groupa, stridea, na);
double var = FUNCTION(gsl_stats,variance_with_fixed_mean) (groupa, stridea, na, mean);
double expected = 0.00113837428571429;
gsl_test_rel (var, expected, rel, NAME(gsl_stats) "_variance_with_fixed_mean");
}
{
double mean = FUNCTION(gsl_stats,mean) (groupa, stridea, na);
double var = FUNCTION(gsl_stats,sd_with_fixed_mean) (groupa, stridea, na, mean);
double expected = 0.0337398026922845;
gsl_test_rel (var, expected, rel, NAME(gsl_stats) "_sd_with_fixed_mean");
}
{
double var = FUNCTION(gsl_stats,variance) (groupb, strideb, nb);
double expected = 0.00124956615384615;
gsl_test_rel (var, expected, rel, NAME(gsl_stats) "_variance");
}
{
double sd = FUNCTION(gsl_stats,sd) (groupa, stridea, na);
double expected = 0.0350134479659107;
gsl_test_rel (sd, expected, rel, NAME(gsl_stats) "_sd");
}
{
double absdev = FUNCTION(gsl_stats,absdev) (groupa, stridea, na);
double expected = 0.0287571428571429;
gsl_test_rel (absdev, expected, rel, NAME(gsl_stats) "_absdev");
}
{
double skew = FUNCTION(gsl_stats,skew) (groupa, stridea, na);
double expected = 0.0954642051479004;
gsl_test_rel (skew, expected, rel, NAME(gsl_stats) "_skew");
}
{
double kurt = FUNCTION(gsl_stats,kurtosis) (groupa, stridea, na);
double expected = -1.38583851548909 ;
gsl_test_rel (kurt, expected, rel, NAME(gsl_stats) "_kurtosis");
}
{
double wmean = FUNCTION(gsl_stats,wmean) (w, strideb, groupa, stridea, na);
double expected = 0.0678111523670601;
gsl_test_rel (wmean, expected, rel, NAME(gsl_stats) "_wmean");
//.........这里部分代码省略.........
开发者ID:tommyliu,项目名称:visionPJ1,代码行数:101,代码来源:test_float_source.c
示例19: FUNCTION
double
FUNCTION(gsl_stats,variance_with_fixed_mean) (const BASE data[], const size_t stride, const size_t n, const double mean)
{
const double variance = FUNCTION(compute,variance) (data, stride, n, mean);
return variance;
}
开发者ID:lemahdi,项目名称:mglib,代码行数:6,代码来源:variance_source.c
示例20: FUNCTION
void
TVideoPreviewView::DisplayThread()
{
FUNCTION("TVideoPreviewView::DisplayThread\n");
bigtime_t timeout = 5000;
bigtime_t realTimeNow = 0;
bigtime_t perfTimeNow = 0;
bigtime_t halfPeriod = (bigtime_t) (500000./29.97);
bool timeSourceRunning = false;
while (!mDisplayQuit) {
if (acquire_sem(mServiceLock) == B_NO_ERROR) {
timeSourceRunning = TimeSource()->IsRunning();
realTimeNow = BTimeSource::RealTime();
perfTimeNow = TimeSource()->Now();
release_sem(mServiceLock);
}
snooze(timeout);
if (timeSourceRunning) {
// if we received a Stop, deal with it
if (mStopping) {
PROGRESS("VidConsumer::DisplayThread - STOP\n");
if (perfTimeNow >= mStopTime) {
mRunning = false;
mStopping = false;
// deal with any pending Seek
if (mSeeking)
mSeeking = false;
//if (mConnected)
// SendDataStatus(B_DATA_NOT_AVAILABLE, mConnections[0], mStopTime);
continue;
}
}
// if we received a Seek, deal with it
if (mSeeking) {
PROGRESS("VidConsumer::DisplayThread - SEEK\n");
if (perfTimeNow >= mSeekTime) {
PROGRESS("VidConsumer::DisplayThread - DO SEEK\n");
mSeeking = false;
mDeltaTime = mMediaTime;
continue;
}
}
// if we received a Start, deal with it
if (mStarting) {
PROGRESS("BBt848Controllable::CaptureRun mStartTime = %.4f TimeNow = %.4f\n", (double)mStartTime/M1, (double)perfTimeNow/M1);
if (perfTimeNow >= mStartTime) {
mRunning = true;
mStarting = false;
mDeltaTime = mStartTime;
//if (mConnected)
// SendDataStatus(B_DATA_AVAILABLE, mConnections[0], mStartTime);
continue;
}
}
if (mRunning) {
// check for buffer available.
status_t err = acquire_sem_etc(mBufferAvailable, 1, B_TIMEOUT, halfPeriod * 2);
if (err == B_TIMED_OUT || !mConnected) {
ERROR("VidConsumer::DisplayThread - Error from acquire_sem_etc: 0x%lx\n", err);
continue;
}
BBuffer* buffer = mBufferQueue->PopFirstBuffer(0);
LOOP("Popped buffer %08x, Start time: %.4f, system time: %.4f diff: %.4f\n",
buffer,
(double) buffer->Header()->start_time/M1,
(double) perfTimeNow/M1,
(double) (buffer->Header()->start_time - perfTimeNow)/M1);
// Display frame if we're in B_OFFLINE mode or
// within +/- a half frame time of start time
if ( (mRunMode == B_OFFLINE) ||
((perfTimeNow > (buffer->Header()->start_time - halfPeriod)) &&
(perfTimeNow < (buffer->Header()->start_time + halfPeriod))) ) {
uint32 bpp = (mColorspace == B_RGB32 ? 4 : 2);
memcpy(m_Bitmap->Bits(), buffer->Data(), mRowBytes * mYSize * bpp);
buffer->Header()->start_time = system_time();
buffer->Recycle();
bigtime_t t1 = system_time();
// Update view
if (LockLooper()) {
DrawBitmap(m_Bitmap, Bounds());
UnlockLooper();
//.........这里部分代码省略.........
开发者ID:Barrett17,项目名称:UltraDV,代码行数:101,代码来源:TVideoPreviewView.cpp
注:本文中的FUNCTION函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论