2010-01-25 05:52:17 +01:00
|
|
|
/*
|
2010-02-28 01:08:10 +01:00
|
|
|
* This file is a part of Winix
|
2010-01-25 05:52:17 +01:00
|
|
|
* and is not publicly distributed
|
|
|
|
*
|
2010-02-28 22:33:06 +01:00
|
|
|
* Copyright (c) 2008-2010, Tomasz Sowa
|
2010-01-25 05:52:17 +01:00
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
2010-09-29 23:24:34 +02:00
|
|
|
#ifndef headerfile_winix_plugins_ticket_ticket
|
|
|
|
#define headerfile_winix_plugins_ticket_ticket
|
2010-01-25 05:52:17 +01:00
|
|
|
|
2010-10-19 02:31:20 +02:00
|
|
|
#include <vector>
|
2011-01-05 22:24:11 +01:00
|
|
|
#include <string>
|
2011-01-24 00:23:24 +01:00
|
|
|
#include <algorithm>
|
2010-01-25 05:52:17 +01:00
|
|
|
|
|
|
|
|
2010-09-29 23:24:34 +02:00
|
|
|
namespace Ticket
|
|
|
|
{
|
2010-01-25 05:52:17 +01:00
|
|
|
|
|
|
|
struct Ticket
|
|
|
|
{
|
2010-10-19 02:31:20 +02:00
|
|
|
struct TicketParam
|
|
|
|
{
|
2011-01-05 22:24:11 +01:00
|
|
|
int param;
|
|
|
|
long int_value; // changed to long (from int)
|
|
|
|
std::wstring str_value;
|
|
|
|
|
|
|
|
void Clear()
|
|
|
|
{
|
|
|
|
param = 0;
|
|
|
|
int_value = 0;
|
|
|
|
str_value.clear();
|
|
|
|
}
|
2010-01-25 05:52:17 +01:00
|
|
|
|
2010-10-19 02:31:20 +02:00
|
|
|
TicketParam()
|
|
|
|
{
|
2011-01-05 22:24:11 +01:00
|
|
|
Clear();
|
2010-10-19 02:31:20 +02:00
|
|
|
}
|
|
|
|
};
|
2010-01-25 05:52:17 +01:00
|
|
|
|
2011-01-20 19:37:51 +01:00
|
|
|
long file_id;
|
2010-10-19 02:31:20 +02:00
|
|
|
std::vector<TicketParam> par_tab;
|
|
|
|
|
|
|
|
// auxiliary object used during sorting
|
2010-09-30 22:58:20 +02:00
|
|
|
unsigned long sort_id;
|
2010-01-25 05:52:17 +01:00
|
|
|
|
|
|
|
void Clear()
|
|
|
|
{
|
2011-01-05 22:24:11 +01:00
|
|
|
file_id = -1;
|
2010-10-19 02:31:20 +02:00
|
|
|
par_tab.clear();
|
|
|
|
sort_id = 0;
|
2010-01-25 05:52:17 +01:00
|
|
|
}
|
|
|
|
|
2011-01-24 00:23:24 +01:00
|
|
|
struct Sort
|
|
|
|
{
|
|
|
|
bool operator()(const TicketParam & par1, const TicketParam & par2)
|
|
|
|
{
|
|
|
|
return par1.param < par2.param;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
void SortParTab()
|
|
|
|
{
|
|
|
|
std::sort(par_tab.begin(), par_tab.end(), Sort());
|
|
|
|
}
|
|
|
|
|
2010-01-25 05:52:17 +01:00
|
|
|
|
|
|
|
Ticket()
|
|
|
|
{
|
|
|
|
Clear();
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
|
2010-09-29 23:24:34 +02:00
|
|
|
} // namespace
|
|
|
|
|
|
|
|
|
2010-01-25 05:52:17 +01:00
|
|
|
#endif
|