本文整理汇总了C++中ePipeline类的典型用法代码示例。如果您正苦于以下问题:C++ ePipeline类的具体用法?C++ ePipeline怎么用?C++ ePipeline使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ePipeline类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CreateDefaultProerty
void CSpace::CreateDefaultProerty(ePipeline& Pipe){
Pipe.PushInt(0);
Pipe.PushString(_T(""));
ePipeline Empty;
Pipe.PushPipe(Empty);
//目前只有这些,其它后续再添加
}
示例2: CreateDataInstance
void CMemoryView::ResetData(ePipeline& DataList){
CTitle* Title = (CTitle*)m_ChildList[1];
Title->DeleteAll();
Title->m_ObjectCount=0;
for (int i=0; i<DataList.Size(); i+=2)
{
int64 InstanceID = *(int64*)DataList.GetData(i);
ePipeline* InstanceItem = (ePipeline*)DataList.GetData(i+1);
tstring InstanceName = InstanceItem->GetLabel();
CreateDataInstance(InstanceName);
CTextItem* DataList = (CTextItem*)Title->m_ChildList[Title->m_ObjectCount-1];
for (int j=0; j<InstanceItem->Size(); j++)
{
ePipeline* Data = (ePipeline*)InstanceItem->GetData(j);
CMemoryView::CTextItem* DataItem = Data2Item(j,Data);
if (DataItem==NULL)
{
return;
}
//DataItem->m_State = SPACE_NOTOOLABR;
DataList->PushChild(DataItem);
}
}
Layout();
}
示例3: eINT
void CDebugView::Item2Path(CVSpace2* Item,ePipeline& Path){
assert(Item);
Path.Push_Front(new eINT(Item->m_Alias));
CVSpace2* Parent = Item->m_Parent;
while (Parent != this)
{
Path.Push_Front(new eINT(Parent->m_Alias));
Parent = Parent->m_Parent;
}
}
示例4: SetCurSpaceAddress
void CAddressBar::SetCurSpaceAddress(ePipeline& Addr){
m_CurAddress = _T("");
while (Addr.Size())
{
tstring s = Addr.PopString();
m_CurAddress +=s;
if(Addr.Size()){
m_CurAddress += _T("\\");
}
}
Invalidate();
}
示例5: FindSpace
SpaceAddress FindSpace(ePipeline& Path){
SpaceAddress Addr;
if (Path.Size()==0)
{
Addr.ParentID = ROOT_SPACE;
Addr.ChildID = LOCAL_SPACEID;
return Addr;
}
CppSQLite3Buffer SQL;
int64 ParentID = 0;
int64 ChildID = ROOT_SPACE;
char ParentName[30];
while (Path.Size())
{
tstring Name = Path.PopString();
AnsiString AnsiName = WStoUTF8(Name);
ParentID = ChildID;
ChildID = 0;
int64toa(ParentID,ParentName);
SQL.format("select %s from \"%s\" where %s=\"%s\"",
ITEM_ID,
ParentName,
ITEM_NAME,
AnsiName.c_str()
);
CppSQLite3Query Result = GetWorldDB().execQuery(SQL);
if(!Result.eof()){
ChildID = Result.getInt64Field(0);
Result.nextRow();
}else{
return Addr;
}
}
assert(Path.Size()==0);
Addr.ParentID = ParentID;
Addr.ChildID = ChildID;
return Addr;
}
示例6: RegisterGlobalPeople
void CBrainMemory::RegisterGlobalPeople(ePipeline& PeopleData){
tstring& Name = *(tstring*)PeopleData.GetData(0);
_tcsupr(&Name[0]);
CLock lk(&m_MemoryMutex);
m_GlobalPeopleList[Name] = PeopleData;
};
示例7: GetAllChildList
int32 GetAllChildList(int64 ParentID, ePipeline& ChildList,int64 NotIncludeChildID /*=0*/){
assert(ParentID >0);
ChildList.Clear();
char TableName[30];
int64toa(ParentID,TableName);
if(!GetWorldDB().tableExists(TableName)){
return 0;
}
//ChildList.SetID(ParentID);
CppSQLite3Buffer SQL;
SQL.format("select %s,%s,%s,%s from \"%s\"",
ITEM_ID,
ITEM_NAME,
ITEM_TYPE,
ITEM_FINGERPRINT,
TableName
);
CppSQLite3Query Result = GetWorldDB().execQuery(SQL);
while(!Result.eof()){
int64 ChildID = Result.getInt64Field(0);
if (ChildID !=NotIncludeChildID)
{
AnsiString s = Result.getStringField(1,"");
tstring Name = UTF8toWS(s);
Name = GetFileNoPathName(Name);
Name = GetFileName(Name);
int32 Type = Result.getIntField(2);
AnsiString FingerPrint = Result.getStringField(3,"");
//ChildList.PushInt64(ChildID);
ChildList.PushString(Name);
ChildList.PushInt(Type);
ChildList.PushString(FingerPrint);
}
Result.nextRow();
}
return ChildList.Size()/3;
}
示例8: assert
void CSpace::SetProerty(ePipeline& Pipe){
assert(Size()>5);
assert(Pipe.Size());
assert(GetDataType(4) == TYPE_PIPELINE);
ePipeline* Property = (ePipeline*)GetData(4);
Property->Clear();
*Property << Pipe;
};
示例9: IsEqualAddress
bool IsEqualAddress(ePipeline& Address1,ePipeline& Address2)
{
int32 n = Address1.Size();
if (n != Address2.Size())
{
return FALSE;
}
for (int i=0; i<n; i++)
{
int64& ID1 = *(int64*)Address1.GetData(i);
int64& ID2 = *(int64*)Address2.GetData(i);
if (ID1 != ID2)
{
return FALSE;
}
}
return TRUE;
}
示例10: while
void CDebugView::MassItem::Init(ePipeline& Pipe){
m_Alias = Pipe.GetID();
m_Name = Pipe.GetLabel();
int64 Type = Pipe.PopInt();
m_Type = Type;
if (m_Type == MASS_ELEMENT)
{
while(Pipe.Size()){
eElectron E;
Pipe.Pop(&E);
ePipeline* ChildPipe = (ePipeline*)E.Value();
MassItem* ChildItem = new MassItem();
PushChild(ChildItem);
ChildItem->Init(*ChildPipe);
}
}
}
示例11: Object
void CSpacePortal::OnRequestUseObject(int64 SourceID,ePipeline& RequestInfo){
int64 EventID = RequestInfo.PopInt();
ePipeline* ObjectInfo = (ePipeline*)RequestInfo.GetData(0);
ePipeline* ExePipe = (ePipeline*)RequestInfo.GetData(1);
CObjectData Object(*ObjectInfo);
int64 ExecuterID = Object.m_ID;
CLinker ExecuterLinker;
GetLinker(ExecuterID,ExecuterLinker);
if (!ExecuterLinker.IsValid())
{
ExePipe->GetLabel() = Format1024(_T("Error: Executer not started."));
ExePipe->SetID(RETURN_ERROR);
CLinker Requester;
GetLinker(SourceID,Requester);
if (Requester.IsValid())
{
CMsg FeedbackMsg(MSG_TASK_FEEDBACK,NULL,EventID);
ePipeline& Letter = FeedbackMsg.GetLetter();
Letter.PushPipe(*ExePipe);
Requester().PushMsgToSend(FeedbackMsg);
}
return;
}
PushExecuterEvent(ExecuterID,SourceID,EventID);
WriteLogDB(_T("Use Object Event:%I64ld"),EventID);
CMsg NewMsg(MSG_OBJECT_RUN,NULL,EventID);
ePipeline& NewLetter = NewMsg.GetLetter();
NewLetter.PushPipe(*ExePipe);
ExecuterLinker().PushMsgToSend(NewMsg);
};
示例12: assert
//以下函数内部使用无需加锁
//////////////////////////////////////////////////////////////////////////
bool CLinkerPipe::ReceiverID2LocalAddress(ePipeline& Receiver,ePipeline& LocalAddress){
int64 ReceiverID = Receiver.PopInt();
if (ReceiverID==SYSTEM_SOURCE)
{
LocalAddress.PushInt(ReceiverID);
LocalAddress<<Receiver; //可能还有其它地址
return TRUE;
}
assert(Receiver.Size()==0); //其它情况应该没有多余地址
map<int64,ePipeline>::iterator It = m_LocalAddressList.find(ReceiverID);
if(It != m_LocalAddressList.end()){
ePipeline& Pipe = It->second;
LocalAddress = Pipe;
return TRUE;
}
return FALSE;
}
示例13: DeleteAll
void CDebugView::Reset(ePipeline& ItemList){
DeleteAll();
m_Toolbar.m_Owner = NULL;
m_SpaceFocused = NULL;
Layout();
m_TaskTimeStamp = ItemList.GetID();
if(ItemList.Size()==0){
return;
};
ePipeline* TaskPipe = (ePipeline*)ItemList.GetData(0);
MassItem* Task = new MassItem;
PushChild(Task);
Task->Init(*TaskPipe);
Task->m_Alias = 1; //任务ID是一个64位整数,显示不方便,这里改为1
Layout();
return ;
};
示例14: _tcslwr
void CBrainMemory::RegisterGlobalObject(ePipeline& ObjectData){
tstring& Name = *(tstring*)ObjectData.GetData(0);
// tstring& Fingerprint = *(tstring*)ObjectData.GetData(2);
_tcslwr(&Name[0]);
// _tcsupr(&Fingerprint[0]);
CLock lk(&m_MemoryMutex);
map<tstring,ePipeline>::iterator It = m_GlobalObjectList.find(Name);
if(It!=m_GlobalObjectList.end()){
return;
};
m_GlobalObjectList[Name] = ObjectData;
};
示例15: RegisterGlobalLogic
void CBrainMemory::RegisterGlobalLogic(tstring& Name, const tstring& LogicText, ePipeline& LogicData, uint32 State,
tstring LogicMeaning /*=""*/, tstring InputDescrip /*=""*/, tstring OutputDescrip /*=""*/ )
{
ePipeline LogicItem;
LogicItem.SetLabel(Name.c_str());
LogicItem.PushInt(State);
LogicItem.PushString(LogicText);
LogicItem.PushString(LogicMeaning);
LogicItem.PushString(InputDescrip);
LogicItem.PushString(OutputDescrip);
LogicItem.Push_Directly(LogicData.Clone());
ePipeline RefList;
LogicItem.PushPipe(RefList); //引用名:谁引用,字符串成对保存
CLock lk(&m_MemoryMutex);
m_GlobalLogicList.PushPipe(LogicItem);
};